В этом примере показано, как использовать атомарные подграфики, чтобы сгенерировать код для отдельных частей графика Stateflow®. Когда вы генерируете код для своего графика, отдельные хранилища файлов код для атомарного подграфика. Атомарные подграфики поддерживаются только в диаграммах Stateflow в моделях Simulink®. Для получения дополнительной информации смотрите, Создают Допускающие повторное использование Субкомпоненты при помощи Атомарных Подграфиков.
Эта модель содержит два блока Sine wave: один с частотой 1 радиана в секунду и другим с частотой 2 радианов в секунду.
В графике каждое состояние использует логику сатуратора, чтобы преобразовать входную синусоиду в выходную прямоугольную волну той же частоты.
Поскольку этот пример не использует атомарные подграфики, сгенерированный код для целой модели хранится в одном файле. Чтобы найти код для определенной части графика, необходимо просмотреть целый файл.
В отличие от этого можно преобразовать A
состояния к атомарному подграфику и указывают, что код для подграфика появляется в отдельном файле. Этот метод генерации кода включает модульное тестирование на определенную часть графика. Вы стараетесь не перерывать несвязанный код и фокусируетесь только на коде, который интересует вас.
Шаг 1: преобразуйте состояние в атомарный подграфик
Щелкните правой кнопкой по A
состояния и выберите Group & Subchart> Atomic Subchart.
A
состояния изменения в атомарном подграфике и отображениях метка Atomic в верхнем левом углу.
Шаг 2: настройте автономный файл C для атомарного подграфика
Откройте диалоговое окно свойств для подграфика A
путем щелчка правой кнопкой по подграфику и выбора Properties.
Установите функцию Генерации кода упаковочное свойство на Reusable function
.
Установите свойство опций имени файла Генерации кода на User specified
.
В поле имени файла Генерации кода введите saturator
как имя файла.
Нажать ОК.
Шаг 3: настройте отчет генерации кода
Во вкладке Modeling нажмите Chart Properties> Model Settings, чтобы открыть диалоговое окно Параметров конфигурации.
Во вкладке Code Generation, набор Системный параметр конечного файла к ert.tlc
.
Под Генерацией кода> Отчет, выберите отчет генерации кода Create.
Под Усовершенствованными параметрами выберите Model-to-code.
Нажмите Apply.
Шаг 4: настройте сгенерированные имена функций
В диалоговом окне Configuration Parameters, во вкладке Code Generation> Identifiers, устанавливает параметр методов Подсистемы на схему $R$N$M$F
формата, где:
$R
корневое имя модели.
$N
имя блока.
$M
лексема искажения.
$F
тип функции интерфейса для атомарного подграфика.
Чтобы сгенерировать код для вашего modelby использование Embedded Coder®, нажмите Ctrl+B.
Отчет генерации кода содержит ссылки на код, сгенерированный из графика (Файлы модели) и атомарного подграфика (Файлы подсистемы). Чтобы смотреть код для подграфика, нажмите saturator.c
гиперссылка.
Линия 31 показывает что during
функция, сгенерированная для атомарного подграфика, имеет имя ex_reuse_states_A_during
. Это имя следует схеме $R$N$M$F
формата заданный для методов Подсистемы:
Корневым именем модели является ex_reuse_states
.
Именем блока является A
.
Лексема искажения пуста.
Типом функции интерфейса для атомарного подграфика является during
.
Примечание: номера строки, которые появляются в вашем отчете генерации кода, могут отличаться от показанных чисел.