Чтобы сгенерировать код C or C++ из моделей Simulink®, которые включают график Stateflow®, необходимо использовать Simulink Coder™. В дополнение к Simulink Coder можно использовать Embedded Coder®, чтобы далее улучшить сгенерированный код. Улучшения Embedded Coder делают ваш код более читаемым, более компактным, и быстрее выполниться.
Когда вы генерируете код для цели, Stateflow автоматически анализирует машину Stateflow, которая оценивает графические и неграфические объекты и данные в каждой машине Stateflow против поддерживаемого обозначения графика и синтаксиса языка действия. Для получения дополнительной информации смотрите, Обнаруживают Общие Ошибки Моделирования Во время Симуляции Графика.
Simulink Coder позволяет вам генерировать C и Код С++ из моделей, которые содержат диаграммы Stateflow. Можно затем использовать сгенерированный код в приложениях нев реальном времени и в реальном времени, включая:
Ускорение симуляции
Быстрое прототипирование
Оборудование в цикле (HIL) тестирование
Используя Simulink Coder также предоставляет вам доступ к Классическому Акселератору и Быстрым Режимам Accelerator. Режимы Accelerator работают путем генерации целевого кода, который затем используется в выполнении. Для получения дополнительной информации об этих режимах, смотрите Как Ускоряющая работа Режимов (Simulink).
Программное-аппаратное тестирование позволяет вам тестировать свое проектирование контроллера и определять, допустима ли ваша физическая система (объект) модель. Для получения дополнительной информации о Программное-аппаратном тестировании, смотрите то, Что Аппаратно-программное моделирование? (Simscape).
Чтобы начать настраивать модель для генерации кода с Simulink Coder, смотрите, Конфигурируют Модель и Генерируют Код (Simulink 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
Эта таблица направляет вас к информации о генерации кода на основе ваших целей.
Цель | Документация 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 соответствует строке кода и коду дорожки от различных объектов, которые вы имеете или не рассмотрели.
Включайте комментарии в код, сгенерированный для крупномасштабных моделей. Можно идентифицировать объекты в сгенерированном коде и постараться не вручную вводить комментарии или описания.
Чтобы включить комментарии трассируемости, у вас должно быть программное обеспечение Embedded Coder или HDL Coder™. Для генерации кода C/C++ комментарии появляются в сгенерированном коде для встроенного, в реальном времени (ert
) основанные цели только. Для получения дополнительной информации смотрите Трассировку Элементы Stateflow в Сгенерированном коде (Embedded Coder) и Перейдите Между Моделью Simulink и HDL-кодом при помощи Трассируемости (HDL Coder).