我来自S函数ver_file_data.c,在该函数的对话框中获得了一个参数定义。
#define DVC_TYPE(S) ssGetSFcnParam(S, 0)
然后在mdlRTW(SimStruct * S)内部
unsigned char dvc_tp = *mxArrayToString(DVC_TYPE(S));
if (!ssWriteRTWScalarParam(S,"dvc_tp",&dvc_tp,DTINFO(SS_UINT8,0)))
return;
dvc_tp承载在块的对话框中的字段之一中输入的值。 稍后在tlc文件中,我希望该块的输出采用该变量dvc_tp的值。我尝试了不同的想法,但是从simulink构建时遇到以下错误:“表达式必须是可修改的左值”
dvc_tp_guc = %<dvc_tp>;
%assign dvc_tp_out = LibBlockOutputSignalAddr(0, "", "", 0)
%dvc_tp_out> = %assign dvc_tp_guc;
Matlab版本R2006b S功能(C,2级)块。
谢谢。最好的问候。