主要内容

生成代码中的控件数据类型名称

默认情况下,生成的代码使用金宝app®编码器™用于定义标量和数组变量的数据类型别名。例如,金宝app仿真软件编码器类型real32_T对应于Simulink类型金宝app.代码定义了这些类型类型定义语句构建在C基元类型上,例如浮动.您可以将代码配置为使用自定义类型名。

该代码还将信号、块参数和状态数据聚合到结构中(参见生成的代码如何与环境交换数据生成代码如何存储内部信号、状态和参数数据默认情况下)。您可以为这些结构类型指定命名规则。还可以将数据项放置到可以控制其类型名称的独立自定义结构中。

控制这些类型名称以帮助您:

对于自定义类型,您还可以指定生成的代码重用类型定义,例如,类型定义语句,来自外部代码。

有关无法控制的数据类型名称以及生成的代码不支持的自定义数据类型的信息,请参见金宝app限制

将泛型C类型的位长通知代码生成器,例如int对于您的目标硬件,请使用硬件实现配置参数。看到配置运行时环境选项

基本数据类型的控件名称

重命名一个金宝app仿真软件编码器基本数据类型,例如int8_T,创建一个金宝app仿真软件。AliasType对象,其名称与您希望生成的代码使用的类型名称匹配。例如,创建名为myType,在命令提示符处输入:

myType = 金宝appSimulink.AliasType;

设置基类型属性设置为与目标相对应的Simulink数据类型的名称金宝app金宝app仿真软件编码器数据类型。例如,如果目标类型为int8_T,指定int8.要识别Simulink数据类型,金宝app请使用表中的信息。

金宝app仿真软件编码器类型名称 对应的Simulink类型名金宝app称

real_T

real32_T

int32_T

int32

int16_T

int16

int8_T

int8

uint32_T

uint32

uint16_T

uint16

uint8_T

uint8

boolean_T

布尔

用于在整个模型中配置数据类型替换(配置参数>代码生成>数据类型替换),你也可以选择以下类型之一:

  • uint8

  • int8

  • intn *

int_T

intn *

uint_T

使用uintn *

char_T

intn *

uint64_T

uint64

int64_T

int64

*代替N显示的位数配置参数>硬件实现无论是位数:int位数:char.为要重命名的数据类型使用适当的位数。

笔记

这个boolean_T基类型一定要推广到签字吗int

例如,替换类型名称uint8_TmyType,设置基类型财产的金宝app仿真软件。AliasType对象“int8”

myType。基类型=“int8”

然后,使用其中一种或两种技术将类型应用到模型中的数据项:

  • 配置数据类型替换。在从模型生成的代码中,您可以替换金宝app仿真软件编码器的名称的数据类型名称金宝app仿真软件。AliasType对象。您可以通过模型配置参数配置数据类型替换(配置参数>代码生成>数据类型替换

    有关如何使用数据类型替换的示例,请参见替换和重命名数据类型以符合编码标准

  • 使用的名称金宝app仿真软件。AliasType对象来指定单个信号的数据类型,即块输出或块参数。默认情况下,由于数据类型的传播和继承(参见数据类型继承规则),其他下行块的信号、状态和参数通常继承相同的数据类型。也可以在上游块中配置数据项以继承类型(继承:通过反向传播进行继承)或通过指定非继承数据类型设置,停止在任意块上的传播。

    要为单个数据项指定数据类型,请使用模型数据编辑器(在建模选项卡,单击模型数据编辑器).您可以使用相同的名称金宝app仿真软件。AliasType对象指定多个数据项的数据类型。

    下面的示例演示了如何使用金宝app仿真软件。AliasType对象直接在模型中,请参阅在生成的代码中创建数据类型别名

基元类型的控件名称 技术
更改生成的代码默认情况下用于定义变量的原始类型的名称(例如,int8_T).

为整个模型配置数据类型替换。

替换默认值金宝app仿真软件编码器数据类型名称与相应的Simulink类型名称,例如,替换金宝appint8_Tint8,则不需要创建金宝app仿真软件。AliasType反对,看到了吗使用Si金宝appmulink数据类型名称而不是Simulink编码器数据类型名称

要在整个模型引用层次结构中共享数据类型替换,请使用引用配置集(参见跨引用的模型共享配置).

通过使用特定的、有意义的类型名称,配置生成的代码以定义特定的数据项,例如变量。

在模型中,定位与变量相对应的数据项。例如,从代码生成报告到模型的跟踪。使用的名称金宝app仿真软件。AliasType对象来设置项的数据类型。

如果有必要,为了防止上游和下游块中的其他数据项使用相同的类型名称,可以将这些项配置为使用不继承的数据类型设置。默认情况下,大多数信号使用继承的类型继承:通过内部规则继承

对数据路径中的多个信号和其他数据项使用相同的类型名称,数据路径是一系列连接的块。

在模型中,使用金宝app仿真软件。AliasType对象来设置路径中一个信号的数据类型,例如根级轮廓尺寸块还是块常数块。例如,如果路径以轮廓尺寸块在模型的根级别,可以指定该块中的类型。默认情况下,由于数据类型传播,其他块中的数据项通常继承相同的类型。

通常,无论您在数据路径的哪个位置指定类型,下行数据项都会继承该类型。您也可以配置上游数据项来继承该类型。考虑在您不希望频繁删除或更改的块中指定类型。

配置生成的代码以替换依赖于实现的类型,例如char_Tboolean_T,以及另一种具有指定的单一类型名的等效位长类型。 使用的名称金宝app仿真软件。AliasType对象以同时配置多个数据类型替换。看到用相同的类型名替换依赖于实现的类型

使用金宝app数据类型名称金宝app编码器数据类型名称

为了在模型中看到的数据类型名称和生成的代码之间保持一致,您可以配置数据类型替换,以便代码使用Simulink类型名称而不是金宝app金宝app仿真软件编码器每个人的名字金宝app仿真软件编码器类型,使用Simulink数据类型名称指定替换名称。金宝app您不需要创建金宝app仿真软件。AliasType对象。

来代替boolean_T,int_T,或uint_T,使用表格中的信息。

金宝app仿真软件编码器类型名称 要使用的替代名称

boolean_T

这些名字中的一个:

  • 布尔

  • uint8

  • int8

  • intn *

int_T

intn *

uint_T

使用uintn *

char_T

intn *

*代替N显示的位数配置参数>硬件实现无论是位数:int位数:char.为要替换的数据类型使用适当的位数。

你不能用这种技术来替代real_Treal32_T

用相同的类型名替换依赖于实现的类型

一些金宝app仿真软件编码器类型名称映射到依赖于实现的C原语。例如,金宝app仿真软件编码器类型int_T映射到C类型int,其位长取决于目标硬件的本机整数大小。其他与实现相关的类型包括boolean_T,char_T,uint_T

对于更可读、更简单的代码,可以使用相同的类型名替换多个金宝app仿真软件编码器大小相同的类型。例如,如果硬件的本地整数大小是32位,则可以进行替换int_Tint32_T使用相同的类型名称,myInt

  1. 中配置目标硬件设置配置参数>硬件实现

  2. 创建一个金宝app仿真软件。AliasType对象命名myInt.在这种情况下,因为int_Tint32_T表示一个32位有符号整数,集合基类型int32

    敏=仿真软件。金宝appAliasType (“int32”)

  3. 配置相同的数据类型替换int32_Tint_T

笔记

多对一数据类型替换不支持金宝app字符(char_T)内置数据类型。使用字符仅在一对一的数据类型替换中。

不支持多对一数据类型替换金宝app金宝app仿真软件编码器不同大小的数据类型。

定义抽象数字类型和重命名类型

该模型显示用户定义的类型,由数字类型和别名类型组成。数字类型允许您定义抽象的数字类型,这对于定点类型特别有用。别名类型允许您重命名类型,从而允许您为类型创建关系。

探索模型示例

打开示例模型并配置它以显示生成的块名称。

加载系统(“rtwdemo_udt”)设置参数(“rtwdemo_udt”,“HideAutomaticNames”,“关闭”) open_system (“rtwdemo_udt”)

自定义类型的关键特性

  • 在信号线上显示和传播

  • 用于按类型参数化模型(例如,In1指定其输出数据类型ENG_SPEED)

  • 可以混合具有公共祖先的类型,从而传播公共祖先(例如,Sum1的输出)

  • Simulink模型浏览器本金宝app质上支持金宝app

  • 包含一个可选的头文件属性,对于导入遗留类型非常理想(对于GRT目标忽略)

  • 在生成的代码中使用的类型(对于GRT目标忽略)

指令

  1. 双击下面的第一个黄色按钮,检查模型管理器中的用户定义类型。

  2. 双击下面的第二个黄色按钮,检查替换数据类型映射。

  3. 编译图表以显示此模型中的类型(调试>更新模型>更新模型或Ctrl + D).

  4. 使用下面的蓝色按钮生成代码,并检查模型文件,以查看用户定义的类型如何显示在生成的代码中。

  5. 修改的属性ENG_SPEEDENG_SPEED_OFFSET重复步骤1-4。

笔记

  • 用户定义类型是Simulink的一个特性,它有助于对模型中的数据类型进行金宝app参数化。嵌入式编码器保留别名数据类型名称(例如,ENG_SPEED)在生成的代码中,Simulink编码器实现用户定义的类型作为其基金宝app本类型(例如。,real32_T).

  • Embedded Coder还允许您用用户定义的数据类型替换生成代码中的内置数据类型。

结构类型的控件名称

控制所使用的标准结构的名称金宝app仿真软件编码器默认情况下创建存储数据(模型_P例如,对于参数数据),使用配置参数>代码生成>标识符>全球类型指定命名规则。有关详细信息,请参阅自定义生成的标识符

当您使用非虚拟总线和参数结构来将信号聚合并将参数块放入生成的代码中的自定义结构中时,可以通过创建金宝app仿真软件。公共汽车对象。有关更多信息,请参见在生成的代码中将数据组织成结构

从外部代码生成重用数据类型的代码

要从外部C代码生成重用数据类型定义的代码,在Simulink中指定相应的数据类型对象或枚举的数据范围为金宝app进口.在这种设置下,the generated code includes (# include)的定义。有关控制自定义数据类型的文件放置的详细信息,请参见控制自定义数据类型的文件位置

方法创建对象和类型,而不是创建单个数据类型对象和枚举类型,然后再配置它们金宝appSimulink.importExternalCTypes函数。默认情况下,该函数配置新对象和类型,以便生成的代码从代码中导入(重用)类型定义。然后,您可以使用对象和类型来设置模型中的数据类型并配置数据类型替换。有关更多信息,请参见金宝appSimulink.importExternalCTypes在生成的代码和外部代码之间交换结构化和枚举数据

在生成的代码中创建数据类型别名

此示例显示如何将生成的代码配置为使用数据类型名称(类型定义)。

出口类型定义

当您将从模型生成的代码与来自其他源代码的代码集成时,您的模型代码可以创建导出的代码类型定义声明。因此,所有集成的代码都可以使用该类型。此示例演示如何将数据类型的定义导出到生成的头文件中。

创建一个金宝app仿真软件。AliasType对象命名mySingleAlias作为内置数据类型的别名

mySingleAlias =仿金宝app真软件。AliasType (“单一”);

配置对象,将其定义导出到名为myHdrFile.h

mySingleAlias。DataScope =“出口”;mySingleAlias。HeaderFile =“myHdrFile.h”

打开模型rtwdemo\U配置接口

open_system (“rtwdemo_configinterface”)

配置模型以显示生成的块名称。

set_param (“rtwdemo_configinterface”,“HideAutomaticNames”,“关闭”)

建模选项卡,单击模型数据编辑器

在模型中,选择标签为的import块三机一体

使用数据类型列将数据类型设置为mySingleAlias

set_param (“rtwdemo_configinterface /三机一体”,“OutDataTypeStr”,“mySingleAlias”)

配置三机一体使用默认存储。

C代码选项卡上,选择代码接口>默认代码映射

在代码映射编辑器中,在入口和出口,选择类别港口.将默认存储类设置为默认的

港口选项卡,设置存储类模型的默认

厘米= coder.mapping.api.get (“rtwdemo_configinterface”);setDataDefault(厘米,“港口”,“StorageClass”,“默认”);setInport(厘米,'在1',“StorageClass”,“模型默认”);

从模型生成代码。

slbuild (“rtwdemo_configinterface”)
### start build procedure for: rtwdemo_configinterface tf = logical 0 ### #成功完成代码生成:模型重建行动的原因  =========================================================================================== rtwdemo_configinterface代码生成的代码生成信息文件不存在。建造时间:0小时0米14.184秒

在代码生成报告中,查看该文件rtwdemo_configinterface_types.h.该代码创建了# include指令生成的文件myHdrFile.h

文件= fullfile (“rtwdemo_configinterface_ert_rtw”,“rtwdemo_configinterface_types.h”);rtwdemodbtype(文件,“# include“myHdrFile.h””,...“# include“myHdrFile.h””, 1, 1)
#包括“myHdrFile.h”

查看文件myHdrFile.h.代码使用标识符mySingleAlias作为数据类型的别名real32_T.默认情况下,生成的代码表示Simulink数据类型金宝app通过使用标识符real32_T

该代码还提供了窗体的宏保护RTW_HEADER_filename_h_.当导出数据类型定义以将生成的代码与来自其他来源的代码集成时,可以使用此表单的宏保护来防止无意的标识符冲突。

文件= fullfile (“slprj”,“导”,""分享",“myHdrFile.h”);rtwdemodbtype(文件,“ifndef RTW_HEADER_myHdrFile_h_”,...' *生成代码的文件预告片。', 1,0)
#ifndef RTW_HEADER_myHdrFile_h_ #define RTW_HEADER_myHdrFile_h_ #include "rtwtypes.h" typedef real32_T mySingleAlias;typedef creal32_T cmySingleAlias;#endif /* RTW_HEADER_myHdrFile_h_ */ /* . RTW_HEADER_myHdrFile_h_

查看文件rtwdemo_configinterface.h.代码使用数据类型别名mySingleAlias来定义结构字段input1,它对应于标记的import块三机一体

文件= fullfile (“rtwdemo_configinterface_ert_rtw”,“rtwdemo_configinterface.h”);rtwdemodbtype(文件,...'/*外部输入(默认存储的根输入信号)*/',...“}ExtU_rtwdemo_configinterface_T;”, 1, 1)
/*外部输入(root inport signals with default storage) */ typedef struct {mySingleAlias input1;/* '/In1' */ MYTYPE input2;/* '/In2' */ MYTYPE input3;/* '/In3' */ MYTYPE input4;/* '/In4' */} ExtU_rtwdemo_configinterface_T;

导入类型定义

当您将从模型生成的代码与来自其他来源的代码集成时,以避免冗余类型定义语句时,可以从外部代码导入数据类型定义。这个例子展示了如何从您创建的头文件导入您自己定义的数据类型。

使用文本编辑器创建要导入的头文件。请命名该文件ex_myImportedHdrFile.h.将其放在工作文件夹中。将以下代码复制到文件中。

#ifndef header_myimportdhdrfile_h_ #define header_myimportdhdrfile_h_ typedef float myTypeAlias;# endif

代码使用标识符myTypeAlias为数据类型创建别名浮动.该代码还使用了窗体的宏保护标题\u文件名\u h.当导入数据类型定义以将生成的代码与来自其他来源的代码集成在一起时,可以使用此表单的宏保护来防止无意的标识符冲突。

在命令提示符处,创建一个金宝app仿真软件。AliasType对象命名myTypeAlias为内置类型创建别名.Simu金宝applink数据类型对应于C数据类型浮动

myTypeAlias =仿金宝app真软件。AliasType (“单一”)
描述:" DataScope: 'Auto' HeaderFile: " BaseType: 'single'

配置对象,以便生成的代码从头文件导入类型定义ex_myImportedHdrFile.h

myTypeAlias。DataScope =“进口”;myTypeAlias。HeaderFile =“ex_myImportedHdrFile.h”

打开模型rtwdemo\U配置接口

open_system (“rtwdemo_configinterface”)

建模选项卡,单击模型数据编辑器

在模型中,选择标签为的import块三机一体

使用数据类型列将数据类型设置为myTypeAlias

set_param (“rtwdemo_configinterface /三机一体”,“OutDataTypeStr”,“myTypeAlias”)

从模型生成代码。

slbuild (“rtwdemo_configinterface”)
###正在启动:rtwdemo\U configinterface的生成过程成功完成:rtwdemo\U configinterface生成摘要生成的顶级模型目标:模型操作重建原因====================================================================================================================================================================================================================================================================================================================================================生成的rtwdemo\U configinterface代码已过期。生成的代码已过期已构建1个模型(0个模型已更新)构建持续时间:0h 0m 12.744s

在代码生成报告中,查看该文件rtwdemo_configinterface_types.h.该代码创建了# include指示头文件ex_myImportedHdrFile.h

文件= fullfile (“rtwdemo_configinterface_ert_rtw”,“rtwdemo_configinterface_types.h”);rtwdemodbtype(文件,“#包括“ex_myImportedHdrFile.h”,...'/* rtModel的前向声明*/', 1,0)
#include " ex_myimportdhdrfile .h" #include "MYTYPE.h" /*模型代码变体*/ #ifndef DEFINED_TYPEDEF_FOR_Table1_Type_ #define DEFINED_TYPEDEF_FOR_Table1_Type_ typedef struct {MYTYPE BP[11];MYTYPE表[11];} Table1_Type;#endif #ifndef DEFINED_TYPEDEF_FOR_Table2_Type_ #define DEFINED_TYPEDEF_FOR_Table2_Type_ typedef struct {MYTYPE BP1[3];MYTYPE BP2 [3];MYTYPE表[9];} Table2_Type;#endif #endif /* RTW_HEADER_rtwdemo_configinterface_types_h_ */ /* *生成代码的文件预告片。* * [eof] */

查看文件rtwdemo_configinterface.h.代码使用数据类型别名myTypeAlias来定义结构字段input1,它对应于标记的import块三机一体

文件= fullfile (“rtwdemo_configinterface_ert_rtw”,“rtwdemo_configinterface.h”);rtwdemodbtype(文件,...'/*外部输入(默认存储的根输入信号)*/',...“}ExtU_rtwdemo_configinterface_T;”, 1, 1)
/*外部输入(root inport signals with default storage) */ typedef struct {myTypeAlias input1;/* '/In1' */ MYTYPE input2;/* '/In2' */ MYTYPE input3;/* '/In3' */ MYTYPE input4;/* '/In4' */} ExtU_rtwdemo_configinterface_T;

在模型图上显示基本数据类型和别名

当您在模型图上显示信号数据类型时,您可以选择显示别名(例如myTypeAlias)和基本数据类型(例如int16)。要显示别名,请在调试选项卡上,选择信息覆盖>别名数据类型.要显示基本类型,请选择信息覆盖>基本数据类型.有关更多信息,请参见端口数据类型

在生成的代码中创建命名的定点数据类型

这个示例展示了如何在生成的代码中创建和命名定点数据类型。您可以使用类型的名称在整个模型和生成的代码中指定参数和信号数据类型。

模型的例子rtwdemo_fixpt1使用定点数据类型。为了更容易地在生成的代码中看到定点数据类型,在本例中,创建金宝app仿真软件。参数对象,该对象作为全局变量出现在代码中。

创建一个金宝app仿真软件。AliasType对象,该对象定义定点数据类型。名称的对象myFixType.生成的代码使用对象的名称作为数据类型。

myFixType=Si金宝appmulink.AliasType(“fixdt(4) 1, 16日”);

打开模型rtwdemo_fixpt1

open_system (“rtwdemo_fixpt1”)

配置模型以显示生成的块名称。

set_param (“rtwdemo_fixpt1”,“HideAutomaticNames”,“关闭”)

建模选项卡,单击模型数据编辑器

在模型数据编辑器中,选择参数选项卡。

在模型中,选择增益块。

在模型数据编辑器中,对于表示获得参数的增益块价值列,指定myParam

单击参数值旁边的操作按钮(有三个垂直点)。选择创建

创建新数据对话框中,设置价值金宝appSimulink.Parameter (8).在本例中,为了使代码更易于阅读,您将参数值设置为8而不是-3.2。点击创建.一个金宝app仿真软件。参数对象命名myParam出现在基本工作区中。对象存储真实的值8.的值,增益块使用该值获得参数。

金宝app仿真软件。参数属性对话框,设置存储类ExportedGlobal.点击好吧.在这种设置下,myParam在生成的代码中作为单独的全局变量显示。

在模型数据编辑器中,使用数据类型属性的数据类型获得增益块的参数设置为myFixType

信号选项卡,使用数据类型列来设置增益块输出的数据类型myFixType

使用数据类型属性的数据类型转换块输出myFixType

或者,可以在命令提示下使用以下命令配置块并创建对象:

set_param (“rtwdemo_fixpt1 /增益”,“获得”,“myParam”,“OutDataTypeStr”,“myFixType”,...“ParamDataTypeStr”,“myFixType”myParam = Si金宝appmulink.Parameter(8);myParam。StorageClass =“ExportedGlobal”;set_param (“rtwdemo_fixpt1 /转换”,“OutDataTypeStr”,“myFixType”)

在模型中,设置>代码生成>系统目标文件ert.tlc.在这种设置下,the code generator honors data type aliases such asmyFixType

set_param (“rtwdemo_fixpt1”,“SystemTargetFile”,“呃,tlc”)

选择配置参数仅生成代码

set_param (“rtwdemo_fixpt1”,“GenCodeOnly”,“上”)

从模型生成代码。

slbuild (“rtwdemo_fixpt1”)
###正在启动以下的生成过程:rtwdemo#u fixpt1成功完成代码生成:rtwdemo#u fixpt1生成摘要已生成的顶级模型目标:模型操作重建原因==========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================已生成的模型(0个模型已更新)生成持续时间:0小时0米19.669秒

在代码生成报告中,查看该文件rtwdemo_fixpt1_types.h.代码定义了类型myFixType基于指定字长(16)的整数类型。

文件= fullfile (“rtwdemo_fixpt1_ert_rtw”,“rtwdemo_fixpt1_types.h”);rtwdemodbtype(文件,“ifndef DEFINED_TYPEDEF_FOR_myFixType_”,...'/* rtModel的前向声明*/', 1,0)
#define DEFINED_TYPEDEF_FOR_myFixType_ typedef int16_T myFixType;typedef cint16_T cmyFixType;# endif

查看文件rtwdemo_fixpt1.c.代码使用类型myFixType,是整数类型的别名int16,来定义变量myParam

文件= fullfile (“rtwdemo_fixpt1_ert_rtw”,“rtwdemo_fixpt1.c”);rtwdemodbtype(文件,'myFixType myParam = 128;','myFixType myParam = 128;', 1, 1)
myFixType myParam = 128;/ *变量:myParam

存储的整数值128myParam和现实世界的价值不一样吗8.因为定点数据类型的可伸缩性myFixType指定。有关详细信息,请参阅扩展(定点设计师)在定点设计器文档中。

表示增益块的代码行应用与指定的分数长度相对应的右位移位myFixType

rtwdemodbtype(文件,...'rtwdemo_fixpt1_Y.Out1=(myFixType)((myParam*rtb_转换)>>4);',...'rtwdemo_fixpt1_Y.Out1=(myFixType)((myParam*rtb_转换)>>4);', 1, 1)
rtwdemo_fixpt1_Y.Out1=(myFixType)((myParam*rtb_转换)>>4);

重命名数据类型对象

重命名数据类型对象,例如金宝app仿真软件。AliasType金宝app仿真软件。公共汽车在您创建它之后(例如,在编码标准更改或遇到命名冲突时重命名别名),您可以允许Simulink重命名对象,并纠正出现在一个或多个模型中的对象的所有引用。金宝app在模型资源管理器中,右键单击变量并选择重命名所有.有关更多信息,请参见重命名变量

在框图上显示信号数据类型

为了可读性,您可以在框图上直接显示信号数据类型。当您为基元数据类型使用自定义名称时,您可以选择显示自定义名称(别名)、基础基元,或两者同时显示。看到端口数据类型

限制

  • 你不能配置生成的代码来使用这些自定义C数据类型:

    • 数组类型

    • 指针类型

    • 常量挥发性类型

  • 不能将生成的代码配置为使用泛型C基元类型,例如int

数据类型替换限制

当您选择模型配置参数时替换生成代码中的数据类型名称代码生成>数据类型替换“配置参数”对话框的窗格中,下列限制适用:

  • 数据类型替换不支持多级映射。金宝app每个替换数据类型名称直接映射到一个或多个内置数据类型。

  • 引用模型的模拟目标代码生成不支持数据类型替换。金宝app

  • 如果您选择经典的调用接口您的型号的配置参数,不支持数据类型替换。金宝app

  • 代码生成在生成时执行数据类型替换.c,. cpp,.h文件。代码生成将这些文件放在构建文件夹中(包括顶层和引用模型构建文件夹)和_sharedutils文件夹中。异常如下:

    rtwtypes.h
    multiword_types.h
    model_reference_types.h
    builtin_typeid_types.h
    model_sf.c. cpp(ERT s函数包装器)
    模型_dt.h(C头文件支持外部模式)金宝app
    c类. cpp
    模型_capi.h
  • 复杂数据类型不支持数据类型替换。金宝app

  • 不支持多对一数据类型替换金宝app字符数据类型。尝试使用字符作为到自定义数据类型的多对一映射的一部分,表示违反了MISRA C®规范。例如,如果你绘制地图字符(char_T),要么int8(int8_T)或uint8(uint8_T)到相同的替换类型,结果是违反MISRA C。如果您试图生成c++代码,代码生成器将进行无效的隐式类型强制转换,从而导致编译时错误。使用字符仅在一对一的数据类型替换中。

    不支持多对一数据类型替换金宝app金宝app仿真软件编码器不同大小的数据类型。有关详细信息,请参阅用相同的类型名替换依赖于实现的类型

  • 对于ERT s -函数,请更换布尔只有8位整数的数据类型,int8,或uint8

  • 设置DataScope财产金宝app仿真软件。AliasType对象汽车(默认)或进口

相关的话题