主要内容

致电外部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将调用外部功能,并且该功能不会出现在生成的代码中。

要可视化此图表的结果,请打开范围。

也可以看看

(符号数学工具箱)|(MATLAB编码器)

相关话题