Точка входа стандартной программы шага в сгенерированном коде для модели Simulink
voidmodel
_step(void) voidmodel
_stepN
(void)
Прототип функции значения по умолчанию
отличается в зависимости от Treat each discrete rate as a separate task (Simulink) (model_step
EnableMultiTasking
) параметр, заданный для модели:
Значение параметров | Прототип функции |
---|---|
Off (один уровень или многоскоростной) |
|
On (многоскоростной) |
( является идентификатором задачи), |
Интерфейс вызова, сгенерированный для этой функции также, отличается в зависимости от значения параметра модели Code interface packaging (Simulink Coder):
C++ class
(значение по умолчанию для языка C++) — Сгенерированная функция инкапсулируется в метод класса C++. Необходимые данные модели инкапсулируются в атрибуты класса C++.
Nonreusable function
(значение по умолчанию для языка C) — Сгенерированная функция передает (void)
. Структуры данных модели статически выделены, глобальная переменная, и получены доступ непосредственно в типовом кодексе.
Reusable function
— Сгенерированная функция передает структуру данных модели реального времени, ссылкой, как входной параметр. Структура данных модели реального времени экспортируется с заголовочным файлом
.model.h
Для основанной на ERT модели можно использовать параметр Pass root-level I/O as, чтобы управлять, как аргументы ввода и вывода корневого уровня передаются функции. Они могут быть включены в структуру данных модели реального времени, передали в качестве отдельных аргументов или передали как ссылки на входную структуру и выходную структуру.
Если у вас есть лицензия Embedded Coder®:
Для упаковки интерфейса Nonreusable function
кода можно использовать диалоговое окно Configure C Step Function Interface, чтобы настроить интерфейс ступенчатой функции C. См. Значение по умолчанию переопределения C интерфейс ступенчатой функцииНастройте сгенерированные интерфейсы функции C.
Для упаковки интерфейса C++ class
кода можно использовать кнопку Configure C++ Class Interface и связанные средства управления на панели Interface диалогового окна Configuration Parameters. Для получения дополнительной информации смотрите, Настраивают Сгенерированные Интерфейсы Класса C++.
Сгенерированная функция
содержит код вывода и обновления для блоков в модели Simulink®. model_step
Функция
вычисляет текущее значение блоков. Если журналирование включено, model_step
переменные журналирования обновлений
. Если время остановки модели конечно, model_step
сигнализирует о конце выполнения, когда текущее время равняется времени остановки.model_step
При следующих условиях
не проверяет текущее время по времени остановки:model_step
Время остановки модели установлено в inf
.
Журналирование отключено.
Опция Terminate function required не выбрана.
Поэтому, если один или несколько из этих условий верен, программа запускается неопределенно.
Для GRT или основанной на ERT модели, программное обеспечение генерирует функцию
, когда параметр конфигурации Single output/update function выбран (значение по умолчанию) в диалоговом окне Configuration Parameters.model_step
разработан, чтобы быть названным на уровне прерывания от model_step
rt_OneStep
, который принят, чтобы быть вызванным как ISR таймера. rt_OneStep
вызывает
, чтобы выполнить обработку в течение одного периода часов модели. Для описания того, как вызовы model_step
сгенерированы и запланированы, см. Факторы Планирования и rt_OneStep.model_step
model_initialize
| model_terminate