Как получить параметр S-функции в качестве вывода блока в файле .tlc

Я отхожу от 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 получаю следующую ошибку: "выражение должно быть изменяемым lvalue"

 dvc_tp_guc = %<dvc_tp>;  
%assign dvc_tp_out     = LibBlockOutputSignalAddr(0, "", "", 0) 
%dvc_tp_out>          = %assign dvc_tp_guc;

Matlab версии R2006b Блок S-функций (C, уровень 2).

Спасибо. С наилучшими пожеланиями.

0 ответов

Другие вопросы по тегам