В коллективе или крупной организации, чтобы дать возможность нескольким пользователям создавать код, соответствующий стандартной архитектуре, можно создавать и совместно использовать определения создания кода, такие как классы хранения, с этими пользователями. При настройке параметров генерации кода для различных моделей пользователи могут применять определения к данным и функциональным элементам в моделях, создавая стандартизированный код.
Чтобы управлять внешним видом элементов модели в создаваемом коде, следует применить определения кода к элементам с помощью редактора Сопоставления кодов (Code Mappings). Настройте поведение генерации кода по умолчанию для категории элементов модели, выбрав определение кода в сопоставлении по умолчанию для категории. Настройте отдельные элементы данных, сопоставив их с определениями кода в редакторе сопоставлений кода.
Чтобы создать определения кода, которые вы и другие пользователи можете использовать в редакторе сопоставлений кода, используйте Embedded Coder Dictionary.
При создании определений в словаре Embedded Coder Dictionary решите, где хранить определения, изучив способ их использования. В этой таблице перечислены места хранения определений кода и способы использования словарей данных Simulink ®.
| Использование определений | Местоположение для определений кодов | Использование словаря данных |
|---|---|---|
| Несколько моделей - совместное использование набора определений кода для стандартизации кода | Словарь данных Simulink, на который ссылаются все модели, либо непосредственно, либо через промежуточные словари, на которые имеются ссылки | Связывание каждой модели со словарем данных, определяющим определения кода, непосредственно или через промежуточную ссылку на словарь. |
| Одна модель - создание прототипа сгенерированного кода с использованием одной модели | Локальный словарь встроенного кодера модели | При необходимости можно связать модель со словарем данных, содержащим другие данные. Если модель связана со словарем, содержащим другие определения кода, модель также может использовать эти определения кода. |
Сведения об использовании словаря встроенного кодера и его ограничениях в отношении определений генерации кода см. в разделе Словарь встроенного кодера.
Чтобы создать определения для объектов данных, которые хранятся в базовой рабочей области или в словаре данных Simulink, используйте конструктор пользовательских классов хранения для создания определения в пакете. Для этих объектов данных параметры создания кода применяются к объекту данных вместо их применения при сопоставлении модели. Когда элемент в модели использует объект данных и его настройки генерации кода, отображение кода для элемента отражает спецификацию объекта данных. Дополнительные сведения см. в разделе Создание классов хранения с помощью конструктора пользовательских классов хранения и Управление данными и размещением функций в памяти путем вставки прагматиков.
Если требуется использовать одно и то же определение генерации кода в редакторе сопоставлений кода и в объектах данных, не требуется сохранять одну копию определения в словаре встроенного кодера и другую копию в пакете. Вместо этого сохраните определение в пакете (с помощью конструктора пользовательских классов хранения данных). Затем настройте один или несколько словарей встроенного кодера для ссылки на определение в пакете. При использовании этого метода при необходимости внесения изменений в определение изменения вносятся только в одном месте - в пакете.
Чтобы создать определение создания кода в пакете с помощью конструктора пользовательских классов хранения, см. раздел Создание классов хранения с помощью конструктора пользовательских классов хранения. Затем, чтобы настроить Embedded Coder Dictionary для обращения к пакету, см. раздел Определения генерации кода в пакете.
Дополнительные сведения о сохранении определений в пакетах и словарях см. в разделе Перенос определений пакетов в словарь встроенного кодера для использования в сопоставлениях кода.
При определении класса хранения в словаре Embedded Coder Dictionary можно указать, могут ли пользователи сопоставлять класс хранения с параметрами, сигналами или параметрами и сигналами. Чтобы ограничить использование класса хранения, свойство Data Initialization должно иметь значение Auto или None. Затем в Инспекторе свойств в разделе «Допустимое использование» выберите «Параметры», «Сигналы» или «Параметры и сигналы». Дополнительные сведения см. в разделе Словарь встроенного кодера.
В крупной организации с несколькими моделями и пользователями можно совместно использовать определения генерации кода, сохраняя их во взаимно доступном расположении. Процесс совместного использования определений кода называется развертыванием. Дополнительные сведения см. в разделе Развертывание определений генерации кода.
С помощью API-интерфейса Embedded Coder Dictionary можно создавать определения кодов и взаимодействовать с ними.
Представление словаря встроенного кодера с помощью coder.Dictionary объект. Объект используется для доступа к разделам словаря «Классы хранения», «Разделы памяти» и «Шаблоны настройки функций». При наличии пакета определений кода используйте coder.Dictionary объект для загрузки и обновления пакета в словаре.
Представление раздела словаря с помощью coder.dictionary.Section объект. Используйте раздел для доступа к определениям кода.
Представление определения кода с помощью coder.dictionary.Entry объект. Эта запись используется для взаимодействия с определением кода и его свойствами.
Можно также использовать такие функции, как coder.dictionary.copy и coder.dictionary.move для выполнения операций со встроенными словарями кодеров. Дополнительные сведения см. в разделе Программное создание определений кода.
Редактор сопоставлений кода | Словарь встроенного кодера