主要内容

配置STF-Related代码生成参数

许多模型配置参数代码生成特定于通,接受方或ERT-based系统目标文件。

指定生成的代码的接口

使用接口模型配置参数来控制使用哪个库生成代码时,是否支持一个API包含在生成的代码,和其他界面选项。金宝app

…… 选择或输入…
指定的标准数学库代码生成器生成代码时使用。

选择C89 /人私下偷偷收藏盒式(ANSI),C99 (ISO),或c++ 03 (ISO)标准的数学库参数。

选择C89 /人私下偷偷收藏盒式(ANSI)提供ANSI®(一个]C库函数。例如,选择C89 /人私下偷偷收藏盒式(ANSI)结果生成的代码中调用sin ()输入参数是否双精度或单精度。然而,如果你选择C99 (ISO),生成的代码调用函数sinf ()当输入参数单精度。如果你的编译器支持ISO金宝app®(b]C数学扩展,选择ISO C库可能导致更高效的代码。

有关更多信息,请参见标准的数学库

这个参数的选项有依赖性。看到接口依赖关系

指定一个特定于应用程序的库代码生成器生成代码时使用。

如果您生成特定于应用程序的C或c++代码的数学函数或操作,选择一个值代码替换库。否则,指定没有一个

关于代码替换库的更多信息,请参阅选择一个代码替换库代码替换库

这个参数的选项有依赖性。看到接口依赖关系

直接在代码生成器定点和其他实用程序代码的地方。

选择汽车共享位置共享代码的位置。实用程序的共享位置指示代码被放置在slprj文件夹在您的工作目录,用于构建模型引用。如果您选择汽车,

  • 当模型包含模型块,实用程序中的代码的地方slprj /目标/ _sharedutils文件夹中。

  • 当模型不包含模型块,地方实用程序代码(一般来说,在建立文件夹模型。c模型. cpp)。

指定要添加到文本变量名时使用日志数据mat文件和区分日志数据从代码生成和仿真应用。

输入一个前缀或后缀,例如rt__rt,MAT-file变量名称修改器参数。代码生成器前缀或附加文本系统输出的变量名,国家,和仿真时间中指定数据导入/导出窗格。看到日志程序执行结果MAT-file信息数据日志记录。

指定要包含在数据交换api生成的代码。

选择一个或多个C API选项,ASAP2接口选项,或外部模式选择。当您选择外部模式,其他选项出现。数据交换的api是独立的,你可以选择这些api的组合。例如,您可以选择C API和外部模式。

有关使用这些接口的更多信息,请参阅使用C API之间交换数据和外部代码生成,导出ASAP2文件进行数据测量和校准,外部模式模拟参数调优和信号监测

这个参数的选项有依赖性。看到接口依赖关系

(一个]ANSI是美国国家标准协会的注册商标,公司。

(b]ISO是一个国际标准化组织的注册商标。

请注意

之前的设置标准的数学库代码替换库,确认您想要使用你的编译器支持图书馆。金宝app如果你选择一个你的工具链不支持的参数值,编译器可能发生错误。金宝app例如,如果您选择标准数学库C99 (ISO)和你的编译器不支持ISO C数学扩展,会发生编译时错误金宝app。

当嵌入式编码器®产品安装在您的系统上,代码生成>接口窗格扩展到包括几个额外的选项。的描述代码生成>接口面板参数,看到模型配置参数:代码生成界面

有几个接口参数依赖于其他参数的设置。下表总结了依赖性。

接口依赖关系

参数 依赖关系? 依赖细节
标准的数学库 是的 可用值取决于语言选择。
代码替换库 是的 可用值取决于产品许可和其他参数。有关更多信息,请参见代码替换库
共享代码的位置 没有
金宝app支持:浮点数(仅ERT系统目标文件) 没有
金宝app支持:非谓语形式的数字 是的(ERT)
没有(GRT)
对ERT系统的目标文件,通过金宝app支持浮点数
金宝app支持:复数(仅ERT系统目标文件) 没有
金宝app支持:绝对时间(仅ERT系统目标文件) 没有
金宝app支持:连续时间(仅ERT系统目标文件) 是的 要求您禁用删除错误状态字段在实时模型的数据结构
金宝app支持:非内联S-functions(仅ERT系统目标文件) 是的 要求您使金宝app支持浮点数金宝app支持非谓语形式的数字
经典的调用接口 是的 要求您禁用单输出/更新功能。对ERT系统目标文件,要求启用金宝app支持浮点数
单输出/更新功能 是的 禁用的经典的调用接口
终止功能要求(仅ERT系统目标文件) 是的
代码接口包装 是的 可用值取决于语言选择。
多实例代码错误诊断 是的 代码接口包装可重用的功能c++类
通过根级I / O(仅ERT系统目标文件) 是的 代码接口包装可重用的功能
使用动态内存分配模型初始化(仅ERT系统目标文件) 是的 代码接口包装可重用的功能
MAT-file日志 是的 通系统的目标文件,要求启用金宝app支持非谓语形式的数字;对ERT系统目标文件,要求启用金宝app支持浮点数,金宝app支持非谓语形式的数字,终止功能要求
MAT-file文件变量名称修饰符 是的 通过MAT-file日志
删除错误状态字段在实时模型的数据结构(仅ERT系统目标文件) 是的 要求您禁用金宝app支持:连续时间
生成C API:信号 没有
为:生成C API参数 没有
为:生成C API 没有
生成C API:根级I / O 没有
ASAP2接口 没有
外部模式 没有
传输层 是的 启用外部模式
MEX-file参数 是的 启用外部模式
静态内存分配 是的 启用外部模式
静态内存缓冲区大小 是的 启用静态内存分配

配置数值数据支持金宝app

默认情况下,ERT系统目标文件支持代码生成整数、浮点数、非限定的,而复杂金宝app的数字。

来生成代码,支持……金宝app 做……
整型数据 清晰的金宝app支持浮点数。如果noninteger数据或表达式是在代码生成过程中,遇到一个错误消息报道的块和参数。
浮点型数据

选择金宝app支持浮点数

非限定的值(例如,,)

选择金宝app支持浮点数金宝app支持非谓语形式的数字

复杂的数据

选择金宝app支持复数

有关更多信息,请参见模型配置参数:代码生成界面

配置时间价值支持金宝app

某些模块需要绝对时间的价值,时间,或连续时间。绝对时间是程序执行的时间从一开始到现在的时间。运行时间之间的时间是两个触发事件。根据使用的块,您的模型可能需要支持的配置设置的调整时间值。金宝app

…… 选择……
生成代码创建和维护整数计数器模块,使用绝对或时间值(默认)。

金宝app支持绝对时间。为进一步的信息绝对和运行定时器的配置和操作,明白了绝对和运行时间计算如果你不选择该参数和模型包括一个块,使用绝对或时间值,构建过程生成一个错误。

生成的代码块依靠连续时间。

金宝app支持连续时间如果你不选择这个参数和模型包括连续时间块,构建过程生成一个错误。

有关更多信息,请参见模型配置参数:代码生成界面

配置Noninlined功能支持金宝app

生成的代码noninlined S-Functions在一个模型中,选择金宝app支持noninlined S-functions。的生成noninlined S-functions需要浮点和非限定的数量。因此,当您选择金宝app支持非内联S-functions选择,ERT系统目标文件金宝app支持浮点数金宝app支持非谓语形式的数字

当您选择金宝app支持非谓语形式的数字和模型包括一个C墨西哥人s函数没有对应的TLC实现(内联代码生成),构建过程生成一个错误。

生产代码生成的内联S-functions是非常有利的,例如在实施设备驱动程序。强制使用内联S-functions代码生成,清晰金宝app支持非内联S-functions

当生成代码的模型包含noninlined S-functions ERT系统目标文件,可以有不匹配仿真和代码生成的结果,下面的是正确的:

  • 模型配置参数GenCodeOnly被设置为

  • 模型配置参数ProdEqTarget被设置为

为了避免这种不匹配,集ProdEqTarget或一组GenCodeOnly

配置模型生成和参数传递函数

对ERT系统目标文件,您可以配置模型函数生成和参数是如何传递给函数。

…… 做……
生成模型函数调用兼容GRT pre-R2012a系统的主程序模块目标文件(grt_main.c. cpp)。

选择经典的调用接口MAT-file日志此外,清理删除错误状态字段在实时模型的数据结构经典的调用接口提供了一种快速的方法来使用代码生成与pre-R2012a R2012a或更高GRT-based定制系统目标文件通过生成包装器函数调用接口生成的代码。

减少开销和使用更多的本地变量结合在一个单一的输出和更新功能模型_step函数。

选择单输出/更新功能

如果出现错误或意想不到的行为模型块是一个循环的一部分,使模型配置单输出/更新功能(默认)。关于直接馈通的更多信息,请参阅代数循环概念

生成一个模型_terminate函数模型设计运行下去。

选择终止功能要求(嵌入式编码)有关更多信息,请参见的描述model_terminate

生成可重用,可重入的代码从一个模型或子系统。

选择生成可重用的代码看到配置代码重用的支持金宝app获取详细信息。

静态分配模型的数据结构和模型代码直接访问它们。

清晰的生成可重用的代码。生成的代码不是可重复使用或可重入的。看到配置C代码生成模型入口点函数信息的调用接口生成的模型函数。

抑制的生成一个错误状态字段在实时模型数据结构,rtModel,例如,如果您不需要日志或监视错误消息。

选择删除错误状态字段在实时模型的数据结构选择该参数也可以使代码生成器省略rtModel从生成的代码结构。

为多个集成模型生成代码时,设置这个参数相同的的所有模型。否则,集成应用程序可以表现出意想不到的行为。例如,如果您选择的选项在一个模型而不是另一个集成的应用程序可能不能注册错误状态。

如果你选择不选择这个参数MAT-file日志选择。两个选项是不相容的。

打开配置对话框和修改C阶跃函数接口模型_step函数原型。

在代码映射编辑器,入口点函数选项卡,点击基础概率阶跃函数的函数名列。点击三个垂直点出现。然后单击配置原型。除非函数原型配置之前,对话框打开,其中显示一个阶跃函数的预览界面没有参数(void-void)。对话框也显示当前函数的名字。如果此前已配置的参数模型,对话框显示当前设置。你可以改变阶跃函数名和参数设置。有关更多信息,请参见为个人一步配置名称和参数的功能(嵌入式编码)

有关更多信息,请参见模型配置参数:代码生成界面

配置代码重用的支持金宝app

通,ERT GRT-based, ERT-based系统目标文件,您可以配置一个模型重用代码如何通过设置代码接口包装配置参数值可重用的功能

通过根级I / O配置参数提供了选项控制模型输入和输出模型的根级别的传递模型_step函数。

…… 选择……
通过每个根级模型的输入和输出参数模型_step单独功能(默认) 代码接口包装>可重用的功能通过根级I / O>个人观点
包根级输入参数和根级输出参数为独立的结构,然后传递到模型_step函数 代码接口包装>可重用的功能通过根级I / O>结构参考

包根级输入参数和根级输出参数到模型的数据结构来支持可重入多实例代码从一个模型对ERT系统目标文件金宝app

代码接口包装>可重用的功能通过根级I / O>模型数据结构的一部分

如果使用代码接口包装>可重用的功能选择,考虑使用使用动态内存分配模型初始化选项控制是否分配函数生成。这个选项适用于ERT系统目标文件。

有时候,选择代码接口包装作为可重用的功能可以生成代码,编译不过是不可重入的。例如,如果一个信号,DWork结构或参数数据以外的存储类汽车全球数据结构生成。处理这种情况下,使用多实例代码错误诊断参数选择严重程度的诊断水平。

有时,代码生成器无法产生有效和compilable代码。例如,如果模型包含以下之一,所生成的代码是无效的。

  • 一个功能,不遵循代码重用

  • 宽函数调用触发器触发的一个子系统

在这些情况下,构建终止后报告这个问题。

有关更多信息,请参见生成可重入的代码从上模型(嵌入式编码)模型配置参数:代码生成界面

相关的话题