万博1manbetxSimulink.importExternalCTypes

生成万博1manbetx由C或c++代码定义的自定义数据类型的表示

描述

importInfo= 万博1manbetxSimulink.importExternalCTypes (headerFiles解析C或C ++头文件(。h. hpp)通过鉴定headerFiles的typedef结构体,枚举类型定义,并生成Simulink万博1manbetx®类型的表示。输出,importInfo,在识别和成功不成功进口类型。

您可以使用Simulink表示:万博1manbetx

默认情况下,该功能:

  • 通过生成派生枚举类的脚本文件导入枚举类型万博1manbetxSimulink.IntEnumType,如在定义Simul万博1manbetxink的枚举。如果需要,您可以编辑类定义来定制它(例如,通过实现addClassNameToEnumNames方法)。

  • 进口的结构类型通过生成万博1manbetxSimulink.Bus对象,在基本工作区中。

  • 进口原始的typedef通过生成声明万博1manbetxSimulink.AliasType对象,在基本工作区中。

  • 解释通用的C数据类型,如INT,根据您的主机的字长。例如,对于大多数现代机器来说,INT有一个32位的字长,所以该函数表示INT结构字段作为使用Simulink数据类型的总线元素万博1manbetxINT32

    要覆盖此默认行为,请使用HardwareImplementation对参数。

有关默认行为的其他信息,请参见提示

importInfo= 万博1manbetxSimulink.importExternalCTypes (modelName通过分析所标识的模型万博1manbetx,生成自定义C数据类型的Simulink表示modelName。当您使用模拟目标模型中的配置参数来模拟过程中标识的头文件列入,使用此语法来导入类型主机上模拟模型的目的。该功能根据您的主机的字长解释通用的C数据类型。

在使用此语法时,不要使用成对参数,例如HardwareImplementation,可以与目标模型的配置参数冲突。当您使用这种自变量对这个语法,函数生成一个警告。

importInfo= 万博1manbetxSimulink.importExternalCTypes (___,名称,值)使用一个或多个名称-值对参数指定其他选项。你可以使用这个语法:

  • 属性指定要导入的类型的名称名称对参数。

  • 控制方式的Simulink存储导入的类型,万博1manbetx例如,通过在Simulink中数据字典产生的类型。使用MATFile数据字典对参数。

  • 控制该函数解释通用的C数据类型的方式。使用HardwareImplementation对参数。

  • 通过尝试再次导入更新的C代码定义保持C代码的定义和Simulink的陈述之间的同步。万博1manbetx您可以选择是否覆盖现有Simulink的表示。万博1manbetx使用覆盖详细的对参数。

例子

全部折叠

这个例子展示了如何产生一个C结构类型的Simulink的表示(万博1manbetx结构体)和枚举(枚举从一个标题文件)的数据类型。

  1. 在当前文件夹,创建文件ex_cc_simpleTypes.h

    typedef enum {PWR_LOSS = 0, /*默认值*/ OVERSPD, PRESS_LOW,} fault_T;struct {double coeff;双初始化;}params_T;

  2. 通过调用生成的各类万博1manbetxSimulink的交涉万博1manbetxSimulink.importExternalCTypes

    万博1manbetxSimulink.importExternalCTypes(“ex_cc_simpleTypes.h”);

    该函数创建万博1manbetxSimulink.Bus对象,params_T,在基本工作区中。

  3. 若要检查对象的属性,请打开总线编辑器。

    buseditor

    每个总线元件使用一个名称和一个数据类型()在匹配相应的结构字段ex_cc_simpleTypes.h

  4. 在当前文件夹,检查生成的文件,fault_T.m,其定义枚举类型fault_T作为枚举类。

    您可以使用总线对象和eumeration类设置信号和参数的数据类型在Simulink模型。万博1manbetx

这个示例展示了如何生成一个结构类型的Simulink表示,该结构类型的字段万博1manbetx使用自定义数据类型(的typedef)。

创建文件ex_integer_aliases.h在您当前的文件夹中。

的typedef INT sint_32;的typedef无符号短uint_16;

创建文件ex_cc_struct_alias.h在您当前的文件夹中。

# include“ex_integer_aliases。h" typedef struct {sint_32 accum;uint_16指数;}my_ints_T;

导入结构类型到Simulink作为万博1manbetx万博1manbetxSimulink.Bus对象,在基本工作区中。导入的typedef语句是万博1manbetxSimulink.AliasType对象。

万博1manbetxSimulink.importExternalCTypes('ex_cc_struct_alias.h');

检查在总线对象总线元件的数据类型。例如,检查数据类型第一总线元件的特性,其对应于所述结构字段ACCUM

my_ints_T.Elements (1)
ans = BusElement with properties: Name: 'accum' Complexity: 'real' Dimensions: 1 DataType: 'sint_32' Min: [] Max: [] DimensionsMode: 'Fixed' SampleTime: -1 Unit: " Description: "

万博1manbetxSimulink.importExternalCTypes函数使用生成的万博1manbetxSimulink.AliasType对象设置总线元素的数据类型。

检查万博1manbetxSimulink.AliasType基本工作区中的对象。例如,命名的对象sint_32对应于所述一个的typedef语句ex_integer_aliases.h

sint_32
sint_32 = AliasType与属性:描述: '' DATASCOPE: '进口' HeaderFile: 'ex_integer_aliases.h' 碱基类型: 'INT32'

对于大多数的主机(默认情况下该功能指标),字长INT32位和字长是多少无符号短为16位。功能地图INT无符号短到Simuli万博1manbetxnk类型INT32UINT16

如果您有嵌入式编码,代码,您从模型生成可使用sint_32uint_16而不是标准的数据类型名称,int32_Tuint16_T

这个示例展示了如何在Simulink数据字典中存储导入的数据类型。万博1manbetx数据字典存储一个或多个Simulink模型的数据规范(例如信号和块参数值)、数据类型和其他设计数据。万博1manbetx

在当前文件夹,创建文件ex_cc_simpleTypes.h

typedef enum {PWR_LOSS = 0, /*默认值*/ OVERSPD, PRESS_LOW,} fault_T;struct {double coeff;双初始化;}params_T;

创建一个名为子文件夹myDictionaries

MKDIR('myDictionaries'

通过调用生成的各类万博1manbetxSimulink的交涉万博1manbetxSimulink.importExternalCTypes。永久通过创建一个新的数据字典存储类型定义,ex_cc_myTypes.sldd在新的子文件夹。

万博1manbetxSimulink.importExternalCTypes(“ex_cc_simpleTypes.h”“数据字典”“ex_cc_myTypes.sldd”“OutputDir”'myDictionaries');

要检查字典的内容,设置当前文件夹myDictionaries双击字典文件。

要在字典中使用Simu万博1manbetxlink表示,您必须将一个或多个模型链接到字典。看到迁移模型来使用Simulink的数据字典万博1manbetx

这个例子说明如何生成仅枚举和结构数据类型Simulink中表示,用于按万博1manbetx名称识别。

在当前文件夹,创建文件ex_cc_manySimpleTypes.h。该文件定义了三种结构类型:params_Tsignals_T,states_T

struct {double coeff;双初始化;}params_T;typedef struct {double flow_rate;双steam_press;}signals_T;类型定义结构{双accum;双误差;}states_T;

仅生成了Simul万博1manbetxink的交涉params_Tsignals_T

万博1manbetxSimulink.importExternalCTypes('ex_cc_manySimpleTypes.h'“名字”,{“params_T”“signals_T”});

万博1manbetxSimulink.Bus对象,params_Tsignals_T,显示在基本工作区中。

默认,万博1manbetxSimulink.importExternalCTypes通过创建从内置类派生的枚举类表示枚举数据类型万博1manbetxSimulink.IntEnumType。当模拟或从使用生成的类模型,生成代码的配置参数的选择的模型(例如,在硬件实现窗格)确定的特定整数长度万博1manbetxSimulink.IntEnumType和枚举类聘用。

默认情况下,该函数解释通用的基本C数据类型,例如INT,根据您的主机的字长。例如,为了表示INT结构字段,该函数通常应用32比特的数据类型INT32到相应的总线元素。当您希望为主机计算机以外的硬件模拟和生成代码时,请使用HardwareImplementation对参数来识别目标的硬件和通过扩展,硬件的字长度。

这个示例展示了如何从您打算在16位硬件上使用的代码中导入数据类型。对于这个板,INT具有16位的长度,并且列举的数据的每一项(枚举)消耗16位。

在当前文件夹,创建文件ex_cc_intTypes.h

typedef enum {PWR_LOSS = 0, /*默认值*/ OVERSPD, PRESS_LOW,} fault_T;struct {int coeff;INT初始化;}params_T;

代码定义了枚举数据类型和结构类型,其字段使用泛型C数据类型INT

为了产生结构类型的精确的Simulink表示,第万博1manbetx一打开现有的模型或创建新的模型。在这个例子中,创建一个名为新模式ex_hdwImpl_16bit

在新的模式,集配置参数>硬件实现>设备供应商爱特梅尔。组设备类型AVR

或者,在命令提示符下,使用以下命令创建和配置模型:

new_system(“ex_hdwImpl_16bit”“模型”);set_param(“ex_hdwImpl_16bit”'ProdHWDeviceType'爱特梅尔公司- > AVR的

生成类型的Simu万博1manbetxlink表示。要指定目标16位硬件的字长,请提取模型配置参数(包括硬件实现设置)万博1manbetxSimulink.ConfigSet对象。

configSet = getActiveConfigSet(“ex_hdwImpl_16bit”);万博1manbetxSimulink.importExternalCTypes('ex_cc_intTypes.h''HardwareImplementation',configSet);

万博1manbetxSimulink.Bus宾语params_T出现在基本工作区中。总线元素,例如多项式系数,使用Simulin万博1manbetxk数据类型INT16

params_T.Elements (1)
ans = BusElement with properties: Name: 'coeff' Complexity: 'real' Dimensions: 1 DataType: 'int16' Min: [] Max: [] DimensionsMode: 'Fixed' SampleTime: -1 Unit: " Description: "

在当前文件夹,该文件fault_T.m定义枚举类fault_T。从类派生万博1manbetxSimulink.IntEnumType,因此您必须使用模型配置参数来标识目标硬件,并通过扩展来标识正确的本机整数长度。

创建文件ex_cc_fixpt_struct.h在您当前的文件夹中。

struct {int coeff;/*字长16,二进制分数长7 */ int init;/*字长16,二进制分数长3 */}

该文件定义了其字段使用定点数据类型的结构类型。例如,结构存储字段多项式系数在一个符号的16位整数数据类型。的二进制小数长度7涉及存储的整数值到真实世界的值。

假设这段代码在16位硬件上操作(比如通用C数据类型)INT具有16位字长)。要生成该类型的Simulin万博1manbetxk表示,首先创建coder.HardwareImplementation对象标识硬件。

HDW = coder.HardwareImplementation;hdw.ProdHWDeviceType =爱特梅尔公司- > AVR的;

生成结构类型的Simu万博1manbetxlink表示。

万博1manbetxSimulink.importExternalCTypes(“ex_cc_fixpt_struct.h”'HardwareImplementation',HDW);

万博1manbetxSimulink.Bus对象,params_T,出现在基工作区。每个总线元件,诸如多项式系数,使用数据类型INT16

params_T.Elements (1)
ans = BusElement with properties: Name: 'coeff' Complexity: 'real' Dimensions: 1 DataType: 'int16' Min: [] Max: [] DimensionsMode: 'Fixed' SampleTime: -1 Unit: " Description: "

万博1manbetxSimulink.importExternalCTypes不能推断从C代码定点缩放(二进制分数长度)。您必须手动指定总线元素的数据类型。以指定在命令中的数据类型的提示,可使用fixdt函数。

params_T.Elements(1).DataType =“fixdt(7) 1, 16日”;params_T.Elements(2).DataType ='fixdt(1,16,3)';

要交互式指定数据类型(通过使用数据类型助理),使用总线编辑器。

buseditor

这个例子展示了如何维护C数据类型的Simulink表示,您可以在建模项目的生命万博1manbetx周期中修改这些数据类型的定义。

导入自定义C类型

创建文件ex_cc_myTypes_rec.h在您当前的文件夹中。该文件定义了自定义结构类型。

类型定义结构{双流;双总统;双tqe;}sigStructType;

生成一个万博1manbetxSimulink.Bus对象,它表示类型。

万博1manbetxSimulink.importExternalCTypes('ex_cc_myTypes_rec.h');

在C代码修改类型定义

ex_cc_myTypes_rec.h,添加一个名为社会民主党sigStructType

在同一个文件中,创建一个新的结构类型,stateStructType

类型定义结构{双流;双总统;双tqe;双SPD;}sigStructType;typedef结构{双ERR;两次读取;双写;} stateStructType;

尝试导入类型再

尝试生成表示所述类型的总线对象。

importInfo = 万博1manbetxSimulink.importExternalCTypes('ex_cc_myTypes_rec.h');

函数产生在命令提示警告。而不是依靠的警告,你可以检查输出,importInfo,确定功能是否没有导入任何类型。

importInfo.failedToImport.Bus
ANS = 1×1单元阵列{ 'sigStructType'}

该函数未导入sigStructType。基本工作区中对应的总线对象仍然只有三个总线元素。确定未导入函数的原因sigStructType,检查报告领域的importInfo

进口sigStructType一次。这一次,覆盖现有的总线对象。

importInfo = 万博1manbetxSimulink.importExternalCTypes('ex_cc_myTypes_rec.h'“名字”importInfo.failedToImport.Bus,“覆盖”“上”);

当您覆盖现有的Simulink表示时,您对Simulin万博1manbetxk表示所做的任何定制(例如对总线元素的定点数据类型的应用程序)都会被覆盖。

输入参数

全部折叠

要解析的头文件的名称和路径,指定为字符向量、字符向量的单元格数组、字符串或字符串数组。包括。h. hpp文件扩展名。

如果你使用包含(# include)的头文件来定义您的类型,当您指定HeaderFiles,你只需要识别入口点的文件。该函数解析包含的文件,以及识别出的条目点文件。如果所包含的文件不在同一文件夹对应的入口点文件,请使用IncludeDirs参数来标识其他文件夹。

例:“myHeader.h”

例:{ 'thisHeader.hpp', 'thatHeader.hpp'}

数据类型:烧焦|细胞|

一个加载Simulink模型针对其万博1manbetx导入类型,指定为字符向量或标量的字符串的名称。如果,例如,打开模型或使用模型加载load_system函数。当你使用这个参数时,函数:

  • 搜索模型的配置参数自定义头文件和数据类型的头文件解析到进口。仅在配置参数模拟目标窗格影响该搜索。

    例如,如果在模型中设置配置参数>模拟目标>插入定制的C代码中产生的>头文件#包括“myTypes.h”,功能解析myTypes.h对各类进口。

  • 解释通用的C数据类型,例如INT根据您的主机的字长。不要使用HardwareImplementation配对参数覆盖此解释。

例:'基于myModel'

数据类型:烧焦|

名称-值对的观点

的可选逗号分隔对名称,值参数。名称参数名和价值为对应值。名称必须出现在引号内。可以按任意顺序指定多个名称和值对参数名1,值1,...,NameN,值N

例:万博1manbetxSimulink.importExternalCTypes( 'myHdr.h', '数据字典', 'myDictionary.sldd')

要为生成的存储创建的mat文件的名称和路径(可选)万博1manbetxSimulink.Bus万博1manbetxSimulink.AliasType对象,指定为字符向量或字符串。如果你不使用MATFile默认情况下,该函数产生在基座的工作区中的对象。

该函数不会在mat文件中生成枚举定义。

如果导入一些结构体类型和原始的typedef语句的使用MATFile后来通过再次使用进口一些同类型的MATFile,功能完全取代了旧的MAT文件与一个新的。该函数丢弃你到老MAT文件内容所做的任何更改。

你不能使用MATFile数据字典同时对参数。

例:'myMat.mat'

例:'myMat'

例:完整文件( '子文件夹', 'myMat')

数据类型:烧焦|

名和,可选地,数据的Simulink的路径字典来使用或创建用于存储生万博1manbetx成的枚举和对象,指定为字符向量或字符串。当您使用此对参数,函数进口枚举类型为万博1manbetxSimulink.data.dictionary.EnumTypeDefinition对象,并且存储这些对象(以及万博1manbetxSimulink.Bus对象和万博1manbetxSimulink.AliasType对象)在目标字典中。

有关数据字典的信息,请参见什么是数据字典?

您可以选择指定.sldd延期。

你不能使用数据字典MATFile同时对参数。

例:'myDict.sldd'

例:“myDict”

例:完整文件( '子文件夹', 'myDict.sldd')

数据类型:烧焦|

的类型,以进口,指定为字符向量,特征向量,字符串或字符串数​​组的单元阵列的名称。默认情况下,如果你不使用名称,该函数尝试导入标识的头文件定义的所有自定义类型。

若要用单个字符向量匹配多个类型名称,请使用星号(*)。

例:“myEnumType”

例:{“myEnumType”、“myStructType”}

例:“我的*类型”

数据类型:烧焦|细胞|

用于定义影响C类型定义的宏(指定为字符向量或字符串标量)的编译器选项。例如,如果将类型定义包含在# ifdef块,用于检查宏是否已定义。

使用定义指定宏定义,你通过,否则编译器选项,如定义- d

例:'SIGSTRUCT = 1'

例:'SIGSTRUCT = 1 ENUM = 1'

数据类型:烧焦|

用于删除影响C类型定义的宏(指定为字符向量或字符串标量)的编译器选项。例如,如果将类型定义包含在# ifdef块,用于检查宏是否已定义。

使用未赋值指定宏删除您否则通过编译器选项,如定义- u

例:“SIGSTRUCT”

例:“SIGSTRUCT ENUM”

数据类型:烧焦|

包含子文件夹,包括(# include)头文件,指定为字符向量,特征向量,字符串或字符串数​​组的单元阵列。使用这双参数启用该功能来定位和解析额外的头文件在其主头文件(你与指定headerFiles参数)依赖。

如果你使用modelName语法,而不是headerFiles在目标模型中,可以使用模拟目标配置参数来指定包括路径。在这种情况下,你不需要使用IncludeDirs对参数。

例:“myHeaders”

例:fullfile ('。', ' myHeaders ')

例:{fullfile (“。”,“myHeaders”), fullfile (“。”,“myOtherHeaders”)}

数据类型:烧焦|细胞|

用于存储生成文件的文件夹,指定为字符向量或字符串。该函数放置生成的文件,例如classdef脚本文件和数据字典文件,这个文件夹中。

在使用该函数之前,指定的文件夹必须存在。

例:'myDictionaries'

例:完整文件( 'myProject的', 'myDictionaries')

数据类型:烧焦|

字长用于解释通用的,原始的C数据类型,指定为万博1manbetxSimulink.ConfigSetcoder.HardwareImplementation对象。

  • 使用一个万博1manbetxSimulink.ConfigSet对象,您可以使用以下函数从模型中提取配置集getConfigSetgetActiveConfigSet。此技术使您能够使用配置参数对话框来识别目标硬件(通过硬件实现配置参数)。

  • 使用一个coder.HardwareImplementation对象(其在创建和配置编程),指定对象的属性,例如ProdHWDeviceType,以识别目标硬件。对象然后设置其他属性,例如ProdBitPerInt,反映硬件的本机整数大小。

该函数检查对象以确定在解释泛型C数据类型时使用哪一种Simulink整数数据类型,例如万博1manbetxINT。例如,如果你创建coder.HardwareImplementation对象来标识16位硬件,然后使用该函数导入一个结构类型,该结构类型的字段使用C数据类型INT,该函数生成一个总线对象,该对象的总线元素使用Simulink数据类型万博1manbetxINT16。该函数使用生产硬件设置,而不是测试硬件设置。

有关Simulink模型的硬件实现设置的详细信息,请参见万博1manbetx配置运行时环境选项(万博1manbetx仿真软件编码器)。

说明书中对覆盖现有的Simulink表示,指定为万博1manbetx“上”“关”。如果导入的类型已经在Simulink中表示:万博1manbetx

  • 如果您指定“关”或者,如果你不指定覆盖时,函数不导入类型。在输出参数中,importInfo中,failedToImport字段标识类型。

  • 如果您指定“上”中,函数会覆盖现有的Simulink表示。万博1manbetx

如果您使用的功能导入某些类型分为基础工作区或数据字典和后定制生成Simulink中表示,当你再次和集使用功能万博1manbetx覆盖“上”,该函数不保留您的自定义。这些定制可以包括:

  • 在枚举类定义,实施额外的方法或修改所生成的方法,如getDataScope(看到自定义模型枚举万博1manbetx)。

  • 修改所产生的属性万博1manbetxSimulink.Bus万博1manbetxSimulink.AliasType对象(例如,手动总线元素的数据类型设置为定点数据类型)。

规格生成消息成功导入操作,指定为“上”“关”

  • 如果您指定“关”或者,如果你不指定详细的,功能导入类型默默。消息不会出现在命令窗口,除非功能无法导入类型。

  • 如果您指定“上”,该函数在导入过程中生成用于每个操作在命令窗口的消息。

输出参数

全部折叠

关于已导入和未导入的类型的信息,作为带有这些字段的结构返回。

类型说明已导入,而不是进口的,返回一个特征向量。检查该字段的值,以确定该功能无法导入类型的原因。

未导入的类型,作为带有这些字段的结构返回。

字段名称 字段值 目的
公共汽车 字符向量的单元格数组 建筑物名称(结构体)未导入的类型。
枚举 字符向量的单元格数组 经点算类别的名称(枚举),而没有导入。
AliasType 字符向量的单元格数组 原始的名字的typedef未导入语句。

已成功导入类型,返回与这些领域的结构。

字段名称 字段值 目的
公共汽车 字符向量的单元格数组 建筑物名称(结构体)导入的类型。生成的万博1manbetxSimulink.Bus对象使用这些名称。
枚举 字符向量的单元格数组 经点算类别的名称(枚举)已导入。所生成的枚举类或万博1manbetxSimulink.data.dictionary.EnumTypeDefinition对象使用这些名称。
AliasType 字符向量的单元格数组 原始的名字的typedef导入的语句。生成的万博1manbetxSimulink.AliasType对象使用这些名称。

限制

  • 该功能不支持:万博1manbetx

    • 不对应于一种类型的支撑件的Simulink C数据类型。万博1manbetx万博1manbetx例如,Simulink中不万博1manbetx识别的等价物长双。有关Simulink支持的数据类型的信息,请参见万博1manbetx万博1manbetxSimulink支持的万博1manbetx数据类型万博1manbetx

    • 64位整数类型。

    • 指针类型,例如定义值为指针或指针的字段的结构的typedef基类型为指针类型的语句。

    • 定义值具有多个维度的字段的结构。

      如果字段值是1 d阵列,该函数创建表示一个矢量,而不是基体中的总线单元。

    • 工会。

  • 如果结构字段表示不动点数据,或者如果结构字段表示不动点数据的typedef语句映射到定点基类型,函数设置相应总线元素的数据类型或万博1manbetxSimulink.AliasType对象相关的Simulink整数类型(如万博1manbetxINT16)。导入器不能通过解析C代码来确定定点伸缩。使用该函数后,必须手动指定总线元素的数据类型或万博1manbetxSimulink.AliasType通过使用对象fixdt函数。

提示

  • 如果一个MATLAB函数块或Stateflow®图表在您的模型中使用导入的枚举或结构类型,配置模型配置参数以包括(# include)来自外部头文件的类型定义。看到控件导入总线和枚举类型定义(MATLAB函数块),访问自定义代码变量和函数在Stateflow图(状态流)和在状态流图表中集成自定义结构(为了图表)。

  • 默认:

    • ,因为Simulink枚举类派生自万博1manbetx万博1manbetxSimulink.IntEnumType当您模拟或模型生成代码,枚举使用整数大小是原产于你的目标硬件。通过使用模型的配置参数,如指定目标硬件的特性生产设备供应商及型号生产硬件中的本机字大小

    • 用于导入的结构类型:

      • 功能进口结构字段作为数字复合仅当字段使用相应的一个万博1manbetxSimulink的编码器结构类型的数据类型。例如,如果在外部码的结构字段使用的数据类型cint8_T中,函数导入字段作为一个总线元件(万博1manbetxSimulink.BusElement对象),其数据类型为int8和谁的复杂属性设置为'复杂'

      • 对于嵌套的结构,该函数产生用于每个独特结构类型的总线对象。

    • 对于进口结构类型或枚举,如果外部的代码使用的typedef,则生成的总线对象或Simulink枚举类的名称与万博1manbetx的typedef的名字。如果你的代码没有使用的typedef语句中,对象或类的名称为struct_类型enum_类型在哪里类型是该类型的标签名。如果不指定标签名或应用的typedef, Simu万博1manbetxlink为对象或类生成一个任意名称。

    • 该函数将生成的Simulink表示配置为导入,以便进行模拟和生成代码。万博1manbetx例如,对于总线对象,函数设置DataScope属性“进口”HeaderFile属性设置为外部头文件的名称。要从使用这些Simulink表示之一的模型模拟或生成代码,您必须使头文件对模型可用。万博1manbetx

  • 指定文件时万博1manbetxSimulink.importExternalCTypes使用或生成,例如,通过使用数据字典对论点:

    • 如果要使用的现有文件在当前文件夹中或在MATLAB路径中,则不需要指定文件路径。您可以自行指定文件名。

    • 要控制生成文件的文件夹位置,可以指定路径和文件名。你也可以使用OutputDir对参数。

介绍了在R2017a