主要内容

减少全局变量在那种一次性子系统功能

全局变量可以增加内存需求,减少执行速度。减少全球RAM那种一次性的子系统,可以生成一个函数接口,通过参数传递数据,而不是全局变量。子系统块参数函数接口提供了这个选项。比较的输出函数接口选项,第一个为一个子系统生成一个函数void-void接口,然后生成一个函数参数。

生成void-void函数

默认情况下,当您配置子系统块那种一次性的函数,它生成一个void-void接口。

  1. 打开示例模型rtwdemo_roll

  2. 右键单击该子系统RollAngleReference。从列表中选择块参数(子系统)

  3. 块的参数对话框,确认治疗作为原子单元复选框被选中。

  4. 单击代码生成选项卡并设置代码接口包装参数那种一次性的功能

  5. 函数接口参数已经设置void_void

  6. 点击应用好吧

  7. 重复步骤2 - 6,其他子系统HeadingModeBasicRollMode

  8. 生成代码和静态代码度量报告rtwdemo_roll。这个模型配置为生成一个自动代码生成报告和打开报告。有关更多信息,请参见生成静态代码度量报告仿真软件模型金宝app

在代码生成报告rtwdemo_roll.c为子系统,生成的代码RollAngleReference包含一个void-void函数定义:

静态孔隙RollAngleReference(空白){…}
在静态代码度量报告,导航到全局变量。与void_void选择,对全局变量的字节数47

接下来,生成相同的函数允许参数(优化)选择比较结果。

生成函数和参数

减少全球内存,提高芯片的使用和执行速度,生成一个函数,允许参数:

  1. 打开子系统参数对话框RollAngleReference

  2. 单击代码生成选项卡。设置函数接口参数允许参数(优化)

  3. 点击应用好吧

  4. 重复步骤2和3,其他子系统HeadingModeBasicRollMode

  5. 生成代码和静态代码度量报告rtwdemo_roll

在代码生成报告rtwdemo_roll.c为子系统,生成的代码RollAngleReference现在有参数:

静态real32_T RollAngleReference (real32_T rtu_Phi,……boolean_T rtu_AP_Eng,……real32_T rtu_Turn_Knob) {…}
在静态代码度量报告,导航到全局变量。与允许参数选项设置,全局变量的字节总数39字节。

在某些情况下,当生成优化的代码,代码生成器可能不会生成一个函数的参数。生成一个可预测的函数接口,参数,设置函数接口允许参数(匹配的图形界面)

另请参阅

相关的话题