typedef struct {
unsigned int p1 : 1;
unsigned int p2 : 1;
unsigned int p3 : 1;
} my_struct_type
1. Открыть пример модели ex_struct_bitfield_CSC. Модель содержит три блока констант и три блока аутпорта.

2. Откройте Редактор данных модели (Model Data Editor). На вкладке Моделирование (Modeling) щелкните Редактор данных модели (Model Data Editor).
3. В редакторе данных модели на вкладке «Параметры» в столбце «Значение» обратите внимание, что значение первого блока константы равно p1. Рядом со значением параметра нажмите кнопку действия (кнопка с тремя вертикальными точками) и выберите Создать (Create).
4. В диалоговом окне «Создание новых данных» задайте для параметра «Значение» значение Simulink.Parameter(false). Щелкните Создать (Create). A Simulink.Parameter объект, p1, появляется в базовой рабочей области. Объект сохраняет логическое значение, false, и использует тип данных boolean.
5. В Simulink.Parameter нажмите кнопку «ОК».
6. Используйте Редактор данных модели (Model Data Editor), чтобы настроить другие блоки константы для ссылки на новые объекты параметров с именами p2 и p3.
7. Откройте приложение Embedded Coder.
8. На вкладке Код C выберите Интерфейс кода > Сопоставления кодов отдельных элементов.
9. В редакторе «Сопоставления кода» на вкладке «Параметры» нажмите кнопку «Обновить сопоставления кода».
10. Используйте столбец Класс хранения для применения класса хранения BitField ко всем объектам параметров.
10. В инспекторе свойств используйте столбец «Имя структуры» для настройки каждого объекта на использование одного типа структуры. my_struct.
11. Создайте код из модели.
Созданный файл заголовка ex_struct_bitfield_CSC.h определяет тип структуры my_struct_type.
/* Type definition for custom storage class: BitField */
typedef struct myStruct_tag {
uint_T p1 : 1; /* Referenced by: '<Root>/Constant1' */
uint_T p2 : 1; /* Referenced by: '<Root>/Constant2' */
uint_T p3 : 1; /* Referenced by: '<Root>/Constant3' */
} myStruct_type;
Созданный исходный файл ex_struct_bitfield_CSC.c определяет и инициализирует структурную переменную my_struct.
/* Definition for custom storage class: BitField */
myStruct_type myStruct = {
/* p1 */
0,
/* p2 */
0,
/* p3 */
0
};