Сгенерируйте код C or C++ от блоков Stateflow

Чтобы сгенерировать код C or C++ из моделей Simulink®, которые включают график Stateflow®, необходимо использовать Simulink Coder™. В дополнение к Simulink Coder можно использовать Embedded Coder®, чтобы далее улучшить сгенерированный код. Улучшения Embedded Coder делают ваш код более читаемым, более компактным, и быстрее выполниться.

Когда вы генерируете код для цели, Stateflow автоматически анализирует машину Stateflow, которая оценивает графические и неграфические объекты и данные в каждой машине Stateflow против поддерживаемого обозначения графика и синтаксиса языка действия. Для получения дополнительной информации смотрите, Обнаруживают Общие Ошибки Моделирования Во время Симуляции Графика.

Сгенерируйте код при помощи Simulink Coder

Simulink Coder позволяет вам генерировать C и Код С++ из моделей, которые содержат диаграммы Stateflow. Можно затем использовать сгенерированный код в приложениях нев реальном времени и в реальном времени, включая:

  • Ускорение симуляции

  • Быстрое прототипирование

  • Оборудование в цикле (HIL) тестирование

Используя Simulink Coder также предоставляет вам доступ к Классическому Акселератору и Быстрым Режимам Accelerator. Режимы Accelerator работают путем генерации целевого кода, который затем используется в выполнении. Для получения дополнительной информации об этих режимах, смотрите Как Ускоряющая работа Режимов (Simulink).

Программное-аппаратное тестирование позволяет вам тестировать свое проектирование контроллера и определять, допустима ли ваша физическая система (объект) модель. Для получения дополнительной информации о Программное-аппаратном тестировании, смотрите то, Что Аппаратно-программное моделирование? (Simscape).

Чтобы начать настраивать модель для генерации кода с Simulink Coder, смотрите, Конфигурируют Модель и Генерируют Код (Simulink Coder).

Сгенерируйте код при помощи Embedded Coder

Со сложением Embedded Coder можно сгенерировать код C or C++, который более компактен, легче читать, и быстрее запуститься. Embedded Coder дополнительно расширяет способности Simulink Coder путем разрешения вам, управляют по сгенерированным функциям, файлам и данным. Далее, Embedded Coder включает простую интеграцию для унаследованного кода, типов данных и калибровочных параметров. Embedded Coder поддерживает стандарты программного обеспечения для:

  • AUTOSAR

  • MISRA C

  • ASAP2

Embedded Coder также предоставляет пакетам поддержки усовершенствованную оптимизацию и драйверы устройств для определенного оборудования.

Чтобы начать настраивать модель для генерации кода с Embedded Coder, смотрите, Генерируют Код при помощи Инструмента Быстрого запуска (Embedded Coder).

Спроектируйте советы для оптимизации сгенерированного кода для объектов Stateflow

 Не делайте доступа к порожденным машиной данным

 Будьте явными о встроенной опции графической функции

 Избегайте использования нескольких запускаемых фронтом Событий в диаграммах Stateflow

 Объедините входные сигналы графика в один объект шины

 Используйте дискретные шаги расчета

Сгенерируйте код для быстрого прототипирования и производственного развертывания

Эта таблица направляет вас к информации о генерации кода на основе ваших целей.

Цель

Документация Simulink Coder

Документация Embedded Coder

Сгенерируйте исходный код C/C++

Основы генерации кода (Simulink Coder)

Основы генерации кода (Embedded Coder)

Сгенерируйте исходный код C/C++ и создайте исполняемый файл

Процесс сборки (Simulink Coder)

Процесс сборки (Embedded Coder)

Интегрируйте внешний код

Внешняя интеграция кода (Simulink Coder)

Интеграция кода (Embedded Coder)

Включайте внешний код только для графиков библиотеки в портативной, автономной библиотеке для использования в многоуровневых моделях

Интегрируйте внешний код для графиков библиотеки (Simulink Coder)

Интегрируйте внешний код для графиков библиотеки (Embedded Coder)

Оптимизируйте сгенерированный код

Уменьшайте использование памяти для булевых и переменных настройки состояния (Simulink Coder)

Уменьшайте использование памяти для булевых и переменных настройки состояния (Embedded Coder)

Трассируемость объектов Stateflow в сгенерированном коде

Комментарии трассируемости обеспечивают путь к:

  • Проверьте сгенерированный код. Можно идентифицировать, какой объект Stateflow соответствует строке кода и коду дорожки от различных объектов, которые вы имеете или не рассмотрели.

  • Включайте комментарии в код, сгенерированный для крупномасштабных моделей. Можно идентифицировать объекты в сгенерированном коде и постараться не вручную вводить комментарии или описания.

Чтобы включить комментарии трассируемости, у вас должно быть программное обеспечение Embedded Coder или HDL Coder™. Для генерации кода C/C++ комментарии появляются в сгенерированном коде для встроенного, в реальном времени (ert) основанные цели только. Для получения дополнительной информации смотрите Трассировку Элементы Stateflow в Сгенерированном коде (Embedded Coder) и Перейдите Между Моделью Simulink и HDL-кодом при помощи Трассируемости (HDL Coder).

Похожие темы