Сконфигурируйте, как элементы и функции модели появляются в сгенерированном коде С++
Редактор Отображения является графическим интерфейсом, используемым для настройки способа Simulink® моделировать элементы данных и функции появляются в сгенерированном коде С++.
Чтобы сконфигурировать элементы данных моделей Simulink и функции для генерации кода С++, используйте вкладки в редакторе Отображения:
Data
Functions
Откройте Embedded Coder® приложение. Проверьте, что для Output задано значение Embedded C++ Code. На вкладке C++ Code нажмите Code Interface и выберите Code Mappings.
Можно использовать редактор Code Mappings, чтобы настроить видимость данных и доступ метода к элементам модели в сгенерированном интерфейсе класса C++. Этот пример использует модель rtwdemo_roll
чтобы показать, как сконфигурировать видимость данных и доступ к методу для входных портов в этой модели.
Откройте rtwdemo_roll
модели.
Откройте приложение Embedded Coder В галерее Apps нажмите Embedded Coder.
Установите язык на C++. На вкладке C++ Code нажмите Output и выберите Embedded C++ Code.
Откройте редактор Отображения. На вкладке щелкните Code Interface и выберите Code Mappings.
В редакторе Отображения перейдите на вкладку Data.
Настройте видимость данных. Для категории Inports в столбце Data Visibility выберите public
.
Настройте доступ к методу. Для категории Inports в столбце Member Access Method выберите method
.
Сгенерируйте код.
Проверьте сгенерированный код С++ для входных портов. В представлении Code откройте rtwdemo_roll.cpp
файл и поиск входных портов в модели.
Можно использовать редактор Code Mappings, чтобы настроить имена функций точки входа, а также имена и аргументы периодических функций базовой скорости или функций Simulink. Эти примеры используют модель rtwdemo_roll
чтобы показать, как сконфигурировать имя и аргументы периодической функции базовой скорости.
Откройте rtwdemo_roll
модели.
Откройте приложение Embedded Coder В галерее Apps нажмите Embedded Coder.
Установите язык на C++. На вкладке C++ Code нажмите Output и выберите Embedded C++ Code.
Откройте редактор Отображения. На вкладке щелкните Code Interface и выберите Code Mappings.
В редакторе Отображения перейдите на вкладку Functions.
Настройте имя периодической функции. В столбце Function Name введите имя roll_run
.
Настройте аргументы периодической функции. В столбце Function Preview щелкните гиперссылку прототипа. Откроется диалоговое окно строения.
В диалоговом окне выберите Configure arguments for Step function prototype и нажмите Get Default. Откроется таблица, в которой отображаются аргументы.
Настройте аргументы:
В раскрывающемся списке C++ return argument выберите Ail_Cmd
.
Для каждого порта в поле C++ Identifier Name удалите arg_
префикс из их имен по умолчанию.
Для HDG_Mode
inport, из выпадающего списка C++ Type Qualifier, выберите Pointer
. В C++ Identifier Name поле смените имя на HDG_Mode_Ptr
Нажмите Apply. Визуально проверьте, что прототип функции отражает изменения. Нажмите OK для выхода.
Сгенерируйте код.
Проверьте обновленные имена методов и аргументы в сгенерированном коде С++. В представлении Code, в открытом rtwdemo_roll.cpp
файл, поиск периодической функции базовой скорости, roll_run
.
Model Element Category
- Категория элементов данных моделейКаждая категория описывает тип элемента данных моделей Simulink. Набор видимости данных и доступа к методу для категории применяется к элементам данных этой категории для модели.
Категория элемента модели | Описание |
---|---|
Inports | Входные порты данных корневого уровня модели, такие как блоки Inport и In Bus Element. |
Вспомогательные порты | Выходные порты данных корневого уровня модели, такие как блоки Outport и Out Bus Element. |
Аргументы параметра модели | Переменные рабочей области, которые могут появляться согласно представителям данных классов образцов (нестатических). |
Параметры модели | Переменные рабочей области, которые являются общими для образцов класса модели и генерируются как представители данных статического класса. |
Сигналы, состояния и внутренние данные | Элементы данных, которые являются внутренними для модели, такие как выходные сигналы блоков, дискретные состояния блока, хранилища данных и сигналы пересечения нулем. |
Data Visibility
- Определяет спецификатор доступа для сгенерированных членов класса Видимость данных определяет, появляются ли элементы данных в сгенерированном коде как общие или частные. Для аргументов параметра модели этот параметр может также задать, что элементы данных генерируются вне класса и передаются как отдельные аргументы.
Member Access Method
- Определяет сгенерированные методы get и set для членов классаДоступ определяет, как сгенерированный код предоставляет доступ к данным члена класса.
Source
- Функции в моделиФункции в модели, которые генерируют методы точки входа в интерфейсе класса C++. Эти функции включают:
Инициализация функций
Функции завершения работы
Периодические функции
Функции разбиения
Экспортированные функции
Функции сброса
Функции Simulink
Method Name
- Имя сгенерированного метода классаИмя сгенерированного метода класса.
Method Preview
- Предварительный просмотр прототипа методаПредварительный просмотр прототипа метода точки входа. Чтобы настроить прототип, щелкните гиперссылку предварительного просмотра и сконфигурируйте метод в открытом диалоговом окне.