#define myParam 9.8;
1. Открыть пример модели ex_param_macro.

2. В модели выберите блок усиления. В инспекторе свойств задайте значение параметра Gain равным myParam.
3. Рядом со значением параметра нажмите кнопку действия (кнопка с тремя вертикальными точками) и выберите Создать (Create).
4. В диалоговом окне «Создание новых данных» задайте для параметра «Значение» значение Simulink.Parameter(9.8). Щелкните Создать (Create). A Simulink.Parameter объект, myParam, появляется в базовой рабочей области. Блок усиления использует объект для установки значения параметра усиления, в данном случае 9.8.
5. На вкладке Создание кода нажмите кнопку Настроить в приложении Coder. В редакторе сопоставлений кодов задайте для класса хранения значение Define. Нажмите кнопку ОК.
6. Чтобы создать модель и создать код, нажмите клавиши CTRL + B.
Созданный файл заголовка ex_param_macro.h определяет myParam как макро.
/* Definition for custom storage class: Define */ #define myParam 9.8 /* Referenced by: '<Root>/Gain' */
1. В редакторе «Сопоставления кода» на вкладке «Параметры» нажмите кнопку «Обновить сопоставления кода».
2. Изменение класса хранения myParam от Define кому ImportedDefine.
3. В инспекторе свойств в разделе «Код» задайте для параметра «Файл заголовка» значение external_params.h. Созданный код импортирует определение макроса из пользовательского файла заголовка с именем external_params.h.
4. В текущей папке создайте файл заголовка C external_params.h, который содержит #define заявление.
#ifndef _EXTERNAL_PARAMS #define _EXTERNAL_PARAMS #define myParam 9.8 #endif /* EOF */
5. Чтобы создать модель и создать код, нажмите клавиши CTRL + B.
Созданный файл заголовка ex_param_macro.h не определяет макрос. Вместо этого файл включает (#include) пользовательский файл заголовка external_params.h.
/* Includes for objects with custom storage classes. */ #include "external_params.h"
Исходный файл ex_param_macro.c содержит защиту, чтобы проверить, что определение для myParam существует.
/* * Check that imported macros with storage class "ImportedDefine" are defined */ #ifndef myParam #error The variable for the parameter "myParam" is not defined #endif