Сделайте параметры блоков настраиваемыми
void ssSetSFcnParamTunable(SimStruct *S, int_T param, int_T isTunable)
S
SimStruct, представляющий Блок s-function.
param
Индекс параметра.
isTunable
Допустимыми значениями является SS_PRM_TUNABLE
TRUE
/ настраиваемый), SS_PRM_NOT_TUNABLE
ложь
/ не настраиваемый), или SS_PRM_SIM_ONLY_TUNABLE
(настраиваемый только в процессе моделирования).
Используйте этот макрос в mdlInitializeSizes
задавать, может ли пользователь изменить диалоговый параметр во время симуляции. Индекс параметра запускается в 0 и меньше ssGetSFcnParamsCount(S)
. Это повышает эффективность и обеспечивает обработку ошибок, если попытка предпринята, чтобы изменить параметр.
Если вы задаете SS_PRM_TUNABLE
опция, необходимо создать соответствующий параметр периода выполнения (см. Параметры периода выполнения Создания). Вы не должны создавать соответствующий параметр периода выполнения, если вы задаете SS_PRM_SIM_ONLY_TUNABLE
опция.
Диалоговые параметры являются настраиваемыми по умолчанию. Однако S-функция должна объявить приспособляемость всех параметров, или настраиваемый или нет, чтобы избежать программных ошибок. Если пользователь включает диагностике симуляции S-function upgrade needed
, механизм Simulink® выпускает диагностику каждый раз, когда это сталкивается с S-функцией, которой не удается задать приспособляемость всех ее параметров.
C, C++
Смотрите следующие S-функции для примеров, которые используют эту функцию:
sfun_atol.c
используемый в sfcndemo_sfun_atol
stvctf.c
используемый в sfcndemo_stvctf
stvdtf.c
используемый в sfcndemo_stvdtf