致电外部MATLAB功能状态流图表
状态流®Simulink中的金宝app图表®模型具有一个动作语言属性,该属性定义了状态和过渡动作的语法。图表画布的左下角的图标表示图表的动作语言。
MATLAB®作为动作语言。
C作为动作语言。
在使用C作为动作语言的图表中,您可以通过使用该函数调用内置的MATLAB函数,并通过使用该访问MATLAB Workspace变量ML
名称空间操作员或ML
功能。有关更多信息,请参阅在C图表中访问MATLAB功能和工作空间数据。
在使用MATLAB作为动作语言的图表中,您可以直接调用为代码生成支持的MATLAB函数。金宝app要调用不支持代码生成的外部功能,您必须使用金宝appcoder.extrinsic
(MATLAB编码器)功能。当您声明功能时coder.extrinisic(
,状态流在模拟过程中创建对该功能的调用。在状态流图中,您仅声明function_name
)coder.extrinsic
一次。您不能用coder.extrinsic
。有关更多信息,请参阅命名状态流对象的指南。
对于包含原子次数的图表,您必须声明与代码生成不支持的功能金宝appcoder.extrinsic
分别在原子子图中。
使用coder.extrinsic
功能
启用呼叫外部功能
,此模型使用重质
(符号数学工具箱)coder.extrinsic
。
该图包含两个平行状态A和B,一个图形函数块,foo
。陈述A声明该功能重质
,通过使用代码生成不支持金宝appcoder.extrinsic
。状态B和图形功能块也使用重质
没有coder.extrinsic
。
状态A的输入U1
,正弦波和状态B的输入为U2
,余弦波。图形函数出去
输出值重质
输入的功能在
。
您只需要声明重质
一旦在图表中使用coder.extrinsic
。之后,您可以使用重质
图表中的任何地方都没有功能coder.extrinsic
。生成代码时,您使用的函数使用coder.extrinsic
将调用外部功能,并且该功能不会出现在生成的代码中。
要可视化此图表的结果,请打开范围。
也可以看看
重质
(符号数学工具箱)|coder.extrinsic
(MATLAB编码器)
相关话题
- 在C图表中访问MATLAB功能和工作空间数据
- 为全局数据生成代码(MATLAB编码器)
- 支持C/C ++代码生成的功能和对象金宝app(金宝appSimulink)