Сгенерируйте код для модели Export-Function с основанной на скорости моделью

Можно сгенерировать код из модели, которая включает как подсистемы вызова функций, так и запланированные подсистемы. Создайте модель на основе скорости с запланированными подсистемами, а затем добавьте модель к модели экспорта функций путем ссылки из блока Model.

Чтобы открыть завершенную модель, смотрите ex_export_function_model04.

Создайте модель экспорта функций с запланированными подсистемами

Создайте модель с function-call и запланированными подсистемами.

  1. Начните с создания модели на основе скорости с запланированными подсистемами. В этом примере для Sample time Scheduled Subsystem задано значение 0.01. См. «Создание модели на основе скорости».

  2. Создайте модель export-function с подсистемами вызова функций. См. Создание модели экспорта функций.

  3. Включите модель, основанную на скорости, в модель экспорта функций путем ссылки из блока Model.

  4. Отобразите периодические порты событий на блоке Model, установив флажок Schedule rates.

    Соедините Inport блоки с портами периодических событий.

  5. В диалоговом окне Inport блока установите флажок Output function-call параметра и укажите шаг расчета с тем же шагом расчета из запланированной подсистемы. В этом примере Sample time для function-call 10ms Inport блока задано значение 0.01

    .

Сгенерируйте код для экспортированных функций

Сгенерируйте код из модели, которая содержит функции.

  1. На вкладке Simulation и из раздела Prepare выберите Model Settings.

    На панели « Решателе» задайте Solver Type Fixed-step. На панели Генерация кода задайте System target file ert.tlc. Требуется Embedded Coder® лицензия.

  2. Отобразите вкладку C Code, выбрав вкладку Apps, а затем в разделе Apps выберите Embedded Coder. На вкладке C Code выберите Generate Code. Дождитесь завершения процесса создания кода.

  3. На вкладке C Code выберите Open Latest Report.

В сгенерированном коде каждый function-call Inport блок корневого уровня генерирует функцию void-void. Имя функции является именем выходного сигнала от блока. Если имени сигнала нет, то имя функции происходит от имени блока. В этом примере имя функции было получено из имени блока.