包括MATLAB在生成嵌入式C代码模型代码
金宝appSimulink的/用户自定义函数
HDL编码器/用户定义函数
随着MATLAB函数块,你可以写一个MATLAB®在Simulink中使用的函数金宝app®模型。MATLAB函数创建仿真和执行的生成代码金宝appSimulink的编码器™目标。如果你是新来的Simulink和MATLAB金宝app产品,请参阅下载188bet金宝搏使用块实现MATLAB函数和创建自定义功能的MATLAB使用功能块的概述。
双击MATLAB功能块打开它的编辑器,你写的MATLAB功能,如下面的例子:
要了解更多有关这个编辑器,请参阅MATLAB功能块编辑器。
对象的输入和输出数据MATLAB函数块作为参数和返回值。类中的块的输入和输出与上述示例函数的参数和返回值对应模型:
您还可以定义使用的端口和数据管理器,您可以通过选择从MATLAB功能块编辑器访问数据,输入触发器和函数调用输出编辑数据。看到端口和数据管理器。
的MATLAB函数块基于确定的大小,类和每一变量的复杂性的分析效率的嵌入代码。这种分析强加以下限制:
第一赋值给一个变量定义其大小,类,和复杂性。
除非在代码中使用大小可变的数据或出于不同目的重用变量,否则不能在初始赋值之后重新分配变量属性。
看到变量属性的重新分配。
除了语言的限制,MATLAB函数块支持MAT金宝appLAB中可用函数的一个子集。中给出了支持的函数列金宝app表支持的C / C ++代码生成函数和对象金宝app。这些功能包括在公共类别的功能,如:
虽然该块尝试的代码产生完全相同的结果MATLAB,差异可能会出现由于舍入误差。这些数值的差异,这可能是几每股收益
最初,可以反复操作后放大。依赖的行为南
不推荐。不同的C编译器可以为相同的计算产生不同的结果。
在里面MATLAB函数块,则%#代码生成
包含指令是为了强调block的MATLAB算法总是用于代码生成。的%#代码生成
指令,或没有它,不会改变错误检查行为在上下文中MATLAB函数块。更多信息请参见编译指令% # codegen。
为了支金宝app持数据的可视化,可以使用MATLAB函数只阻塞仿真支金宝app持调用MATLAB功能。看到非本征函数了解一些这方面能力的局限,以及它如何与这个块代码分析集成。如果这些函数调用不直接影响任何Simulink的输入或输出,来电不显示金宝app金宝appSimulink的编码器生成的代码。
从MATLAB函数块,你也可以调用在定义的函数金宝app仿真软件的功能块。你可以打电话给Stateflow®与功能出口表层次功能(使全球)和允许导出的函数被Simulink调用金宝app在图表属性对话框中选中。
在端口和数据管理器中,可以将块输入声明为Simulink参数,而不是端口。金宝app的MATLAB函数块还支持输入、输出和参金宝app数的类型和大小的继承。您还可以显式地指定这些属性。看到类型函数参数,大小函数参数和添加参数参数对变量的描述您在使用MATLAB函数块。
不允许递归调用MATLAB函数块。
默认,MATLAB函数块启用直接馈通。要禁用它,在端口和数据管理器,清除允许直接引线复选框。非直接馈通使语义能够确保输出仅依赖于当前状态。使用非直接馈通使您能够使用MATLAB函数在反馈回路块,防止代数循环。