Генератор кода производит модули кода. Файл, группирующий управления конфигурацией, куда генератор кода помещает код в модули кода и заголовочные файлы.
Чтобы определить местоположение и исследовать файлы сгенерированного кода, используйте представление Code или отчет генерации кода HTML. Отчет генерации кода обеспечивает гиперссылки в комментариях, что можно щелкнуть, чтобы просмотреть сгенерированный код в Браузере документации MATLAB®. Для получения дополнительной информации смотрите Трассируемость в Сгенерированном коде.
Генератор кода создает папку сборки в вашей рабочей папке, чтобы сохранить сгенерированный исходный код. Папка сборки содержит объектные файлы, make-файл и другие файлы, созданные во время процесса генерации кода. Именем по умолчанию папки сборки является
.model
_ert_rtw
Модули кода и Заголовочные файлы, Затронутые Упаковкой Файла, обобщают структуру исходного кода, который производит генератор кода.
Можно настроить сгенерированный набор файлов несколькими способами:
Файл упаковочные форматы: Управляйте количеством исходных файлов, сгенерированных для вашей модели. Выберите параметр конфигурации модели File packaging format. Для получения дополнительной информации смотрите, Настраивают Модули Сгенерированного кода.
Невиртуальная генерация кода подсистемы: Дайте генератору кода команду производить отдельные функции в отдельных файлах кода для невиртуальных подсистем. Можно управлять именами функций и файлов кода. Для получения дополнительной информации смотрите Генерацию Управления Функций для Подсистем (Simulink Coder).
Классы памяти: Задайте и используйте классы памяти, что раздел сгенерировал структуры данных в различные файлы на основе имен файлов, которые вы задаете. Для получения дополнительной информации смотрите, Применяют Встроенные и Индивидуально настраиваемые Классы памяти к Элементам данных.
Упаковка модуля: Направьте сгенерированный код в необходимый набор .c
или .cpp
и .h
файлы и управление внутренняя организация сгенерированных файлов. Для получения дополнительной информации смотрите Данные, Функцию и Настройку Файла.
Модули кода и заголовочные файлы, затронутые упаковкой файла
Файл | Описание |
---|---|
| Содержит точки входа для кода, реализующего алгоритм модели (например, |
| Содержит локальные макросы и локальные данные, которых требуют модель и подсистемы. Этот файл включен в |
| Объявляет структуры данных модели и открытый интерфейс к точкам входа модели и структурам данных. Обеспечивает интерфейс к структуре данных модели реального времени ( Генератор кода:
Если вы соединяете интерфейсом с рукописным кодом к сгенерированному коду для одной или нескольких моделей, включаете |
| Содержит (если условно сгенерировано) объявления для структуры данных параметров, постоянной структуры данных блока I/O и любых нулевых представлений для типов данных структуры модели. Если модель не использует эти структуры данных и обнуляет представления, |
| Предоставляет предописания для структуры данных модели реального времени и структуры данных параметров. Объявления функции допускающих повторное использование функций могут потребовать этих объявлений. Предоставляет определения типа для пользовательских типов, которые использует модель. |
| Задает типы данных, структуры и макросы, требуемые сгенерированным кодом. Для получения дополнительной информации смотрите Размещение Управления rtwtypes.h для Разделяемого Служебного Кода (Simulink Coder). |
| Содержит определения типа для широких типов данных и их фрагментов. Файл сгенерирован, когда типы данных многословные используются или когда вы выбираете один или несколько из этих параметров конфигурации модели:
|
| Содержит определения типа для синхронизации мостов. Файл сгенерирован для модели, на которую ссылаются, или модели, содержащей блоки Model. |
| Задает перечислимый тип, соответствующий встроенным типам данных. Файл сгенерирован, когда ваша модель содержит график Stateflow®, который использует сообщения или когда вы выбираете один или несколько из этих параметров конфигурации:
|
| Содержит определения пересечения нулем для моделей с инициированными подсистемами, где триггером является |
| (дополнительный файл), Если вы выбираете параметр конфигурации модели, Генерируют пример основная программа, этот файл сгенерирован. Для получения дополнительной информации смотрите, Генерируют пример основная программа. |
| (дополнительный файл), Если вы параметр конфигурации модели clear Генерируете пример основная программа, этот файл, сгенерирован. Для получения дополнительной информации смотрите, Генерируют пример основная программа. Содержит Для получения дополнительной информации смотрите Статический Основной Программный модуль. |
| (дополнительный файл), Обеспечивает структуры данных, которые позволяют под управлением программе получить доступ к сигналам модели, состояниям и параметрам без режима external mode. Изучить, как сгенерировать и использовать |
Код, который вы пишете, чтобы взаимодействовать через интерфейс со сгенерированным типовым кодексом обычно, включает индивидуально настраиваемый основной модуль. Основывайте этот модуль на основной программе, произведенной генератором кода. Этот индивидуально настраиваемый основной модуль может также включать обработчиков прерываний, блоки драйвера устройства и другие S-функции и другой контрольный или поддерживающий код. Шаги, чтобы настроить среду разработки, чтобы поддержать индивидуально настраиваемый основной модуль включают:
Установите рабочую папку для своих собственных модулей кода.
Поместите свою рабочую папку на путь MATLAB.
В минимуме сообщите процессу сборки о местоположении ваших исходных и объектных файлов с параметром конфигурации модели Additional build information.
Ваш процесс разработки мог потребовать генерирующегося кода для конкретного микропроцессора или макетной платы и развертывания кода по целевому компьютеру с системой кросс-разработки. Чтобы выполнить эти цели, сделайте более обширные модификации к основанному на ERT системному конечному файлу.
Для получения информации о том, как настроить ваш основанный на ERT системный конечный файл для ваших производственных требований, смотрите Целевую Разработку (Simulink Coder).
File packaging format параметра конфигурации модели задает, как пакеты генератора кода сгенерировали исходный код в файлы. Можно установить параметр на Modular
, Compact (with separate data file)
, и Compact
. Эта таблица описывает сгенерированные файлы и удаленные файлы для каждого файла упаковочный формат.
Сгенерированные файлы согласно файлу упаковочный формат
Файл упаковочный формат | Сгенерированные файлы | Удаленные файлы |
---|---|---|
Modular (значение по умолчанию) |
(дополнительные) файлы подсистемы
| 'none' |
Compact (with separate data file) |
|
|
Compact |
|
|
Эта таблица описывает размещение содержимого из удаленных файлов.
Удаленные файлы согласно файлу упаковочный формат
Удаленный файл | Сгенерированное содержимое в файле |
---|---|
| и
|
|
|
|
|
Можно задать различный файл упаковочный формат для каждой модели, на которую ссылаются.
Параметр конфигурации модели Shared code placement взаимодействует с файлом упаковочные операции. Если вы устанавливаете Shared code placement на Shared location
, генератор кода производит отдельные файлы для служебного кода в общем ресурсе, независимо от файла упаковочный формат. Если вы устанавливаете Shared code placement на Auto
, генератор кода генерирует код для утилит согласно файлу упаковочный выбор формата.
Modular
: Некоторые совместно использованные служебные файлы находятся в папке сборки.
Compact (with separate data file)
: Служебный код сгенерирован в
.model
C
Compact
: Служебный код сгенерирован в
.model
C
Файл упаковочные форматы Compact
и Compact (with separate data file)
сгенерируйте
для моделей, содержащих:model
_types.h
Блок Variant Subsystem.
файл включает директивы препроцессору, задающие различные объекты, сопоставленные с различным блоком.model
_types.h
Классы памяти, генерирующие отдельный заголовочный файл.
Файл упаковочные форматы Compact
и Compact (with separate data file)
не совместимы с:
Модель, содержащая подсистему, которая сконфигурирована, чтобы сгенерировать отдельные исходные файлы
Модель, содержащая невстроенную S-функцию
Модель, для которой Shared code placement установлен в Auto
, который использует объекты данных, для которых Data scope установлен в Exported