主要内容

在生成的代码控制数据类型名称

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

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

帮助你控制这些类型名称:

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

信息数据类型名称,你无法控制和自定义生成的代码不支持的数据类型,明白了金宝app限制

告诉代码生成器的比特长度通用的C类型等int对于你的目标硬件,使用硬件实现配置参数。看到配置运行时环境的选择

控制原始数据类型的名称

重命名一个金宝app仿真软件编码器原始数据类型等int8_T,创建一个金宝appSimulink.AliasType对象名称和类型名称相匹配的,你想要使用生成的代码。例如,要创建一个类型命名myType在命令提示符,输入:

myType = 金宝appSimulink.AliasType;

设置基类型属性的名称相对应到目标模型数据类型金宝app金宝app仿真软件编码器数据类型。例如,如果目标类型int8_T,指定int8。确定模型的数据类型,使用信息表中金宝app。

金宝app仿真软件编码器类型名称 相应的模型类型名称金宝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,设置基类型财产的金宝appSimulink.AliasType对象“int8”

myType。基类型=“int8”;

然后,使用这些技术应用类型的一个或两个数据项的模型:

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

    为例,展示了如何使用数据类型替换,明白了取代和重命名数据类型符合编码标准

  • 使用的名称金宝appSimulink.AliasType对象指定数据类型的一个信号,那就是,一块输出或块参数。默认情况下,将数据类型传播和继承数据类型继承规则),信号、状态和参数的其他下游块通常继承相同的数据类型。可选地,您可以配置数据项在上游块继承类型(通过反向传播继承:继承在任意块)或停止传播通过指定noninherited数据类型设置。

    指定一个单独的数据项的数据类型,使用模型数据编辑器(建模选项卡上,单击模型数据编辑器)。您可以使用相同的名称金宝appSimulink.AliasType对象指定多个数据项的数据类型。

    为例,展示了如何使用一个金宝appSimulink.AliasType对象直接在模型中,看到的在生成的代码中创建数据类型的别名

控制的基本类型的名字 技术
改变原始类型的名称,默认情况下生成的代码用来定义变量(例如,int8_T)。

配置一个数据类型替代整个模型。

替换默认的金宝app仿真软件编码器数据类型名称与相应的仿真软件类型名称,例如,来取代金宝appint8_Tint8,您不需要创建一个金宝appSimulink.AliasType对象。看到使用仿真金宝app软件仿真软件编码器数据类型的数据类型名称而不是名字

分享在参考模型层次结构数据类型替换,使用引用配置设置(见在引用共享配置模型)。

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

在模型中,找到对应的变量的数据项。例如,跟踪从代码生成报告模型。使用的名称金宝appSimulink.AliasType对象设置项的数据类型。

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

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

在模型中,使用的名称金宝appSimulink.AliasType对象设置数据类型的一个信号的路径,例如,一个root轮廓尺寸块或常数块。例如,如果路径从一个开始轮廓尺寸块模型的根级别,您可以指定块的输入。默认情况下,由于传播数据类型,数据项通常在另一块继承相同的类型。

通常,无论数据路径指定类型,下游数据项继承的类型。您可以配置上游数据项继承类型,。考虑指定类型在一块,你不希望删除或更改频繁。

配置生成的代码来代替一个随具体的类型,如char_Tboolean_T,和另一种类型的等效长度与一个你指定的类型名称。 使用的名称金宝appSimulink.AliasType对象同时配置多个数据类型替换。看到用相同的类型名称替换随具体的类型

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

之间的一致性模型和数据类型名称,你看到在生成的代码中,您可以配置数据类型替换的代码使用仿真软件类型名称代替金宝app金宝app仿真软件编码器的名字。为每一个金宝app仿真软件编码器类型你想重命名,使用仿真软件数据类型名称指定替代的名字。金宝app你不需要创建金宝appSimulink.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相同的类型名称,

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

  2. 创建一个金宝appSimulink.AliasType对象命名。在这种情况下,因为int_Tint32_T代表一个32位带符号整数集基类型int32

    敏= Simul金宝appink.AliasType (“int32”)

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

请注意

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

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

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

这个模型显示了用户定义的类型,包括数字和别名类型。数值类型允许您定义抽象的数值类型,这是特别有用的定点类型。别名类型允许您命名类型,它允许您创建一个关系类型。

探索模型示例

打开示例模型和配置它来显示生成的块的名字。

load_system (“rtwdemo_udt”)set_param (“rtwdemo_udt”,“HideAutomaticNames”,“关闭”)open_system (“rtwdemo_udt”)

关键特性的用户定义的类型

  • 显示和信号线路传播

  • 用于参数化模型的类型(例如,In1指定它输出数据类型作为ENG_SPEED)

  • 可以混合类型与一个共同的祖先,共同的祖先(例如,输出Sum1)传播

  • 模型浏览器内在支持的仿真软件金宝app金宝app

  • 头文件包含一个可选属性,是理想的进口遗产类型(GRT忽略为目标)

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

指令

  1. 检查用户定义类型在模型浏览器中通过双击第一个黄色按钮下面。

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

  3. 编译图显示在这个模型类型(调试> >更新模型或更新模型Ctrl + D)。

  4. 与下面的蓝色按钮,检查模型生成代码文件,看看用户定义类型出现在生成的代码中。

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

笔记

  • 用户定义类型的特性仿真软件,方便数据类型的参数化模型。金宝app嵌入式编码保存别名数据类型名称(例如,ENG_SPEED)在生成的代码中,而仿真软件编码器实现用户定义类型作为基类型(例如金宝app,real32_T)。

  • 嵌入式编码器还使您能够取代内置的数据类型的用户定义数据类型生成的代码。

控制结构类型的名称

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

当你使用nonvirtual公交车和参数结构总信号和块参数为一个自定义结构生成的代码,控制通过创建一个结构类型的名称金宝appSimulink.Bus对象。有关更多信息,请参见组织数据结构生成的代码

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

生成的代码重用一个数据类型定义从外部C代码,指定相应的数据类型的数据范围对象或枚举在仿真软件金宝app进口。这个设置,生成的代码包括(# include从你的代码)的定义。更多信息控制文件放置自定义数据类型,明白了控制文件的自定义数据类型

创建单独的数据类型对象和枚举类型,然后配置它们,考虑创建对象和类型使用金宝appSimulink.importExternalCTypes函数。默认情况下,功能配置新的对象和类型,这样生成的代码(重用)进口的类型定义代码。然后,您可以使用对象和类型来设置数据类型的模型和配置数据类型替换。有关更多信息,请参见金宝appSimulink.importExternalCTypes之间交换结构化和枚举数据生成和外部代码

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

这个例子展示了如何配置生成的代码使用一个数据类型名称(类型定义),您指定。

出口类型定义

当你从一个模型与代码生成集成代码从其他来源,可以创建一个导出您的模型代码类型定义声明。因此,所有的集成代码可以使用类型。这个例子展示了如何导出数据类型的定义生成的头文件。

创建一个金宝appSimulink.AliasType对象命名mySingleAlias充当一个别名的内置数据类型

mySingleAlias = 金宝appSimulink.AliasType (“单一”);

配置对象导出其定义头文件myHdrFile.h

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

打开模型rtwdemo_configinterface

open_system (“rtwdemo_configinterface”)

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

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

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

在模型中,选择尺寸块标记三机一体

使用数据类型列的数据类型mySingleAlias

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

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

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

在代码映射编辑器中,港口和外港,选择类别港口。设置默认存储类默认的

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

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

从模型中生成代码。

slbuild (“rtwdemo_configinterface”)
# # #开始构建过程:rtwdemo_configinterface tf =逻辑0 # # #成功完成代码生成:rtwdemo_configinterface模型建立目标:总结构建模型重建行动的原因= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = rtwdemo_configinterface代码生成的代码生成信息文件不存在。1 1模型的建立(0模型已经更新)构建持续时间:0 h 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)
# include“myHdrFile.h”

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

代码还提供了一个宏观的表单RTW_HEADER_filename_h_。当您导出数据类型定义集成与从其他来源的代码生成的代码,您可以使用宏警卫的这种形式,以防止无意标识符冲突。

文件= fullfile (“slprj”,“导”,“_sharedutils”,“myHdrFile.h”);rtwdemodbtype(文件,“ifndef RTW_HEADER_myHdrFile_h_”,*文件拖车生成的代码。,1,0)
的ifndef RTW_HEADER_myHdrFile_h_ # define RTW_HEADER_myHdrFile_h_ rtwtypes # include”。h”typedef real32_T mySingleAlias;typedef creal32_T cmySingleAlias;# endif / * RTW_HEADER_myHdrFile_h_ * / / *

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

文件= fullfile (“rtwdemo_configinterface_ert_rtw”,“rtwdemo_configinterface.h”);rtwdemodbtype(文件,/ *外部输入(根尺寸信号用默认存储)* /”,“}ExtU_rtwdemo_configinterface_T;”,1,1)
/ *外部输入(根尺寸信号与默认存储)* / typedef struct {mySingleAlias input1;/ * < Root > / In1”* / MYTYPE input2;/ * < Root > / In2”* / MYTYPE input3;/ * < Root > / In3”* / MYTYPE input4;/ * < Root > / In4”* /} ExtU_rtwdemo_configinterface_T;

导入类型定义

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

使用文本编辑器创建一个头文件导入。名字的文件ex_myImportedHdrFile.h。把它放在你的工作文件夹。将下面的代码复制到文件中。

ifndef HEADER_myImportedHdrFile_h_ # define HEADER_myImportedHdrFile_h_ typedef myTypeAlias浮动;# endif

使用标识符的代码myTypeAlias创建一个别名数据类型浮动。代码还使用一个宏的表单HEADER_filename_h。当你导入一个数据类型定义集成与从其他来源的代码生成的代码,您可以使用宏警卫的这种形式,以防止无意标识符冲突。

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

myTypeAlias = 金宝appSimulink.AliasType (“单一”)
myTypeAlias = AliasType属性:描述:“DataScope:‘汽车’HeaderFile:“基类型:“单身”

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

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

打开模型rtwdemo_configinterface

open_system (“rtwdemo_configinterface”)

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

在模型中,选择尺寸块标记三机一体

使用数据类型列的数据类型myTypeAlias

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

从模型中生成代码。

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

在代码生成报告,查看文件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_myImportedHdrFile。h MYTYPE # include。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_ # DEFINED_TYPEDEF_FOR_Table2_Type_ typedef定义结构体{MYTYPE BP1 [3];MYTYPE BP2 [3];MYTYPE表[9];}Table2_Type;# endif # endif拖车/ * RTW_HEADER_rtwdemo_configinterface_types_h_ * / / * *文件生成的代码。* * (EOF) * /

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

文件= fullfile (“rtwdemo_configinterface_ert_rtw”,“rtwdemo_configinterface.h”);rtwdemodbtype(文件,/ *外部输入(根尺寸信号用默认存储)* /”,“}ExtU_rtwdemo_configinterface_T;”,1,1)
/ *外部输入(根尺寸信号与默认存储)* / typedef struct {myTypeAlias input1;/ * < Root > / In1”* / MYTYPE input2;/ * < Root > / In2”* / MYTYPE input3;/ * < Root > / In3”* / MYTYPE input4;/ * < Root > / In4”* /} ExtU_rtwdemo_configinterface_T;

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

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

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

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

模型的例子rtwdemo_fixpt1使用定点数据类型。这样你可以更容易地看到定点数据类型在生成的代码中,在本例中,您创建一个金宝appSimulink.Parameter对象出现在代码作为一个全局变量。

创建一个金宝appSimulink.AliasType对象,定义了一个定点数据类型。名称的对象myFixType。生成的代码使用对象作为数据类型的名称。

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

打开模型rtwdemo_fixpt1

open_system (“rtwdemo_fixpt1”)

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

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

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

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

在模型中,选择获得块。

在模型数据编辑器,行表示获得获得块的参数,价值列,指定myParam

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

创建新的数据对话框中,设置价值金宝appSimulink.Parameter (8)。在这个例子中,对于更简单易读的代码,您将参数值设置为8,而不是-3.2。点击创建。一个金宝appSimulink.Parameter对象命名myParam出现在基地工作空间。对象存储实际的价值8,获得块使用的价值获得参数。

金宝appSimulink.Parameter属性对话框中,设置存储类ExportedGlobal。点击好吧。这个设置,myParam出现在生成的代码作为一个单独的全局变量。

在模型数据编辑器,使用数据类型列的数据类型获得参数的获得块myFixType

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

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

或者,您可以使用这些命令在命令提示符处配置块和创建对象:

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

在模型中,集配置参数> >系统目标文件生成代码ert.tlc。这个设置,代码生成器荣誉等数据类型的别名myFixType

set_param (“rtwdemo_fixpt1”,“SystemTargetFile”,“ert.tlc”)

选择配置参数只生成代码

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

从模型中生成代码。

slbuild (“rtwdemo_fixpt1”)
# # #开始构建过程:rtwdemo_fixpt1 # # #成功完成代码生成:rtwdemo_fixpt1模型建立目标:总结构建模型重建行动的原因= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = rtwdemo_fixpt1代码生成的代码生成信息文件不存在。1 1模型的建立(0模型已经更新)构建持续时间:0 h 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)
的ifndef DEFINED_TYPEDEF_FOR_myFixType_ # 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

存储的整数值128年myParam不一样的真实的价值8因为扩展的定点数据类型myFixType指定。有关更多信息,请参见扩展(定点设计师)在定点设计文档。

行代码代表获得块适用权利相应转移到指定的部分的长度myFixType

rtwdemodbtype(文件,“rtwdemo_fixpt1_Y。着干活= (myFixType) ((myParam * rtb_Conversion) > > 4);“,“rtwdemo_fixpt1_Y。着干活= (myFixType) ((myParam * rtb_Conversion) > > 4);“,1,1)
rtwdemo_fixpt1_Y。着干活= (myFixType) ((myParam * rtb_Conversion) > > 4);

重命名数据类型对象

重命名数据类型对象等金宝appSimulink.AliasType金宝appSimulink.Bus在您创建它(例如,重命名一个别名当编码标准改变或当你遇到一个命名冲突),您可以允许模型重命名对象并纠正所有的引用的对象出现在模型或模型。金宝app在Model Explorer中,右键单击变量和选择重命名所有。有关更多信息,请参见重命名变量

块图上显示信号的数据类型

为了可读性,可以显示信号数据类型直接在一个框图。当你为原始数据类型使用自定义名称,您可以选择显示自定义名称(别名),底层原始,或两者兼而有之。看到端口数据类型

限制

  • 你不能配置生成的代码来使用这些自定义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函数包装器)
    model_dt.h(C头文件支持外部模式)金宝app
    model_capi.c. cpp
    model_capi.h
  • 数据类型替换不支持复杂的数据类型。金宝app

  • 多对一的数据类型不支持更换的金宝app字符数据类型。尝试使用字符作为一个多对一映射自定义数据类型代表一个违反MISRA - C®规范。例如,如果您的地图字符(char_T),要么int8(int8_T)或uint8(uint8_T相同的替代类型),结果是一个违反MISRA - C。如果你想生成c++代码,代码生成器让无效的隐式类型转换,导致编译时错误。使用字符只有在一对一的数据类型替换。

    多对一的数据类型替换不支持金宝app金宝app仿真软件编码器不同大小的数据类型。有关更多信息,请参见用相同的类型名称替换随具体的类型

  • 对ERT S-functions取代布尔数据类型只有一个8位整数,int8,或uint8

  • 设置DataScope财产的金宝appSimulink.AliasType对象汽车(默认)或进口

相关的话题