主要内容

mdlOutputs

计算这个块发出的信号

要求

是的

语言

C, c++

语法

#定义MDL_OUTPUTS(SimStruct *S, int_T tid)

参数

年代

SimStruct表示S-Function块。

tid

任务ID。

描述

的仿真软件®引擎在每个模拟时间步骤调用这个所需的方法。该方法应计算s函数在当前时间步长的输出,并将结果存储在s函数的输出信号阵列中。

tid参数指定当mdlOutputs例程被调用。你可以在mdlOutputs多速率S-Function块的例程来封装特定于任务的代码块(参见多重速率的功能块).

使用UNUSED_ARG宏,如果s函数不包含特定于任务的代码块,以指示tid输入参数是必需的,但不在回调函数的主体中使用。为此,插入这一行

UNUSED_ARG (tid)

的声明之后mdlOutputs

请注意

如果你有仿真软件编码器™,在为包含此方法的非内联s函数生成代码时,请确保该方法没有包装在#如果定义(MATLAB_MEX_FILE)声明。例如:

#if defined(MATLAB_MEX_FILE) static void mdlOutputs(SimStruct *S){/*在这里添加mdlOutputs代码*}#endif

定义声明中使mdlOutputs方法只适用于MATLAB®墨西哥人文件。如果s函数没有内联,则仿真软件编码器产品不能使用此方法,导致链接或运行时错误。

例子

举个例子mdlOutputs使用多个输入和输出端口的例程,请参见sfun_multiport.c

版本历史

之前介绍过的R2006a

Baidu
map