主要内容

删除代码映射南整数0

这个例子显示了如何删除地图的代码整数0。浮点数的整数转换涉及饱和,在模拟仿真软件将NaN转换成整数0。金宝app如果你的模型包含一个输入值,您可以指定代码生成器生成的代码映射南为零。没有这段代码,就不匹配仿真和代码生成结果因为在标准C,涉及每一个条件的求值结果为false。

如果输入值不存在在你的应用程序中,您可以删除代码映射南整数0。删除这段代码减少规模和增加的速度生成的代码。

示例模型

打开示例模型rtwdemo_float_mul_for_net_slope_correction在命令窗口输入模型名称。

模型包含一个数据类型转换块。配置模型转换的输入信号到一个uint8

1。打开对话框数据类型转换。为输出数据类型参数,选择uint8

2。选择浸透在整数溢出参数复选框。选择这个参数指定一个超出范围信号值等于最小或最大价值的数据类型可以表示。

3所示。打开配置参数对话框。选择金宝app支持:非谓语形式的数字参数复选框。选择该参数允许生成对非限定的非限定的数据和操作数据。

没有生成代码优化

1。创建一个临时文件夹的建立和检验过程。

2。打开配置参数对话框。在优化面板中,清除把代码从浮点与饱和映射南整数转换为零参数复选框。

3所示。构建的模型。

# # #开始构建过程:rtwdemo_float_mul_for_net_slope_correction # # #成功完成构建过程:rtwdemo_float_mul_for_net_slope_correction模型建立目标:总结构建模型重建行动的原因= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = rtwdemo_float_mul_for_net_slope_correction代码生成和编译代码生成信息文件不存在。1 1模型的建立(0模型已经更新)构建持续时间:0 h 0米14.369秒

4所示。检查生成的rtwdemo_float_mul_for_net_slope_correction_step阶跃函数的rtwdemo_float_mul_for_net_slope_correction.c

/ *模型阶跃函数* /空白rtwdemo_float_mul_for_net_slope_correction_step (void) {/ * DataTypeConversion: < Root > /数据类型转换的结合:*尺寸:< Root > /输入* /如果(rtU。输入< 256.0 f){如果(rtU。输入> = 0.0 f){/ *外港:‘< Root > /输出* /而无。输出= (uint8_T) rtU.Input;其他}{/ *外港:' < Root > /输出* /而无。输出u = 0;}}else if (rtU。输入> = 256.0 f){/ *外港:‘< Root > /输出* /而无。输出= MAX_uint8_T;其他}{/ *外港:' < Root > /输出* /而无。输出u = 0;}/ * DataTypeConversion结束:“< Root > /数据类型转换”* /}

代码生成器条件适用于地图零浮点数值用。在这种情况下,生成的代码比较大但是生成的代码的结果与仿真结果相匹配。

生成代码的优化

1。打开配置参数对话框。

2。在优化窗格中,选择把代码从浮点与饱和映射南整数转换为零参数。

3所示。构建的模型。

# # #开始构建过程:rtwdemo_float_mul_for_net_slope_correction # # #成功完成构建过程:rtwdemo_float_mul_for_net_slope_correction模型建立目标:总结构建模型重建行动的原因= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = rtwdemo_float_mul_for_net_slope_correction代码生成和编译生成的代码是过时了。1 1模型的建立(0模型已经更新)构建持续时间:0 h 0米12.45秒

4所示。检查生成的rtwdemo_float_mul_for_net_slope_correction_step阶跃函数的优化rtwdemo_float_mul_for_net_slope_correction.c

/ *模型阶跃函数* /空白rtwdemo_float_mul_for_net_slope_correction_step (void) {/ * DataTypeConversion: < Root > /数据类型转换的结合:*尺寸:< Root > /输入* /如果(rtU。输入< 256.0 f){如果(rtU。输入> = 0.0 f){/ *外港:‘< Root > /输出* /而无。输出= (uint8_T) rtU.Input;其他}{/ *外港:' < Root > /输出* /而无。输出u = 0;其他}}{/ *外港:' < Root > /输出* /而无。输出= MAX_uint8_T;}/ * DataTypeConversion结束:“< Root > /数据类型转换”* /}

生成的代码的地图到255,而不是整数0。生成的代码是没有额外的代码更高效的地图南整数0。但有可能生成的代码的执行不会产生相同的结果作为模拟值。

另请参阅

相关的话题