model_step

Сгенерированная функция точки входа C/C++, которая содержит код выполнения для каждого шага в модели Simulink

Описание

пример

void model_step(void) функция выполнения, которая содержит код выхода и обновления для блоков в Simulink® модель.

void model_step_N(void) функция выполнения с идентификатором задачи, который содержит код выхода и обновления для блоков в модели Simulink.

Функция точки входа шага вычисляет текущие значения блоков. Если логгирование включено, переменные логгирования обновлений ступенчатой функции. Проектом ступенчатая функция называется на уровне прерывания от rt_OneStep (вызванный как ISR таймера). rt_OneStep вызовы функции model_step функция, чтобы выполнить обработку в течение одного периода часов модели. Дополнительные сведения см. в Факторах Планирования и rt_OneStep.

Если модель имеет конечное время остановки, ступенчатая функция сигнализирует о конце выполнения, когда текущее время равняется времени остановки. В противном случае, если один или несколько из этих условий верен, ступенчатая функция не проверяет текущее время по времени остановки, и программа запускается неопределенно:

  • Время остановки модели установлено в inf.

  • Логгирование отключено.

  • Параметр Terminate function required не выбран.

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

  1. Чтобы сгенерировать функцию точки входа шага, выберите параметр Single output/update function. Если вы очищаете этот параметр, model_output и model_update функции точки входа сгенерированы вместо ступенчатой функции.

  2. Чтобы сгенерировать одну ступенчатую функцию с конфигурируемыми аргументами, очистите параметр Treat each discrete rate as a separate task. Чтобы сгенерировать отдельные ступенчатые функции на основе синхронизации требований, выберите этот параметр. Для получения дополнительной информации смотрите Обработку каждый дискретный уровень как отдельную задачу.

    • Значение параметров: Off (один уровень или многоскоростная однозадачная модель)

      Прототип функции: void model_step(void);

    • Значение параметров: On (многоскоростная многозадачная модель)

      Прототип функции: void model_step_N (void); N идентификатор задачи),

  3. Чтобы изменить сгенерированный интерфейс вызова, установите параметры Code interface packaging и Language. Для получения дополнительной информации смотрите, что интерфейс Code группирует.

Чтобы предварительно просмотреть и настроить имя и аргументы сгенерированного C или C++ продвигаются функция точки входа Embedded Coder® лицензия требуется. Чтобы предварительно просмотреть функцию точки входа шага, откройте редактор Отображений Кода и кликните по вкладке Functions. Чтобы настроить имя функции, в столбце Function Name кликают и отредактировали электронную таблицу напрямую. Чтобы настроить имя функции и аргументы, в столбце Function Preview кликают по функциональной гиперссылке и конфигурируют ступенчатую функцию от открытого диалогового окна. Чтобы настроить функцию с помощью шаблона, в столбце Function Customization Template выбирают шаблон, чтобы примениться к функции. Для получения дополнительной информации смотрите, Конфигурируют Имя и Аргументы для Отдельных Ступенчатых функций, В интерактивном режиме Конфигурируют Интерфейс C++ и Конфигурируют Генерацию кода По умолчанию для Функций.

Чтобы просмотреть сгенерированную функцию точки входа шага, откройте представление Code или Отчет Генерации кода и просмотрите исходный код для вашей модели. Для получения дополнительной информации смотрите, Анализируйте Интерфейс Сгенерированного кода.

Примеры

свернуть все

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

  1. Откройте модель. В данном примере используйте rtwdemo_irt_base модель.

  2. Выберите кодер. В галерее Apps нажмите Simulink Coder или Embedded Coder.

  3. Сконфигурируйте параметры. В диалоговом окне Configuration Parameters, набор Single output/update function, Treat each discrete rate as a separate task, Language и параметры Code interface packaging. В этом примере параметры устанавливаются для вас.

  4. (Только Embedded Coder), Настраивают функцию. Используя Embedded Coder, можно настроить имя и аргументы функции точки входа шага.

    • Откройте редактор Отображений Кода.

    • Нажмите на вкладку Functions.

    • Настройте имя и аргументы. В столбце Function Preview кликните по функциональной гиперссылке, чтобы открыть диалоговое окно Configure C Step Function Interface. Сконфигурируйте имя и аргументы.

  5. Сгенерируйте код.

  6. Исследуйте сгенерированный код. В представлении Code проверьте, что сгенерированная функция завершения появляется с ожидаемым именем и параметрами.

Входные параметры

свернуть все

Точка входа шага C или функция C++ обеспечивают интерфейс к коду выполнения модели. По умолчанию сгенерированная функция обеспечивает void-void интерфейс, который не имеет аргументов. Чтобы сконфигурировать входные параметры для ступенчатой функции C, используйте Code Mappings Editor – C. Чтобы сконфигурировать входные параметры для ступенчатой функции C++, используйте Code Mappings – C++ Editor.

Выходные аргументы

свернуть все

Точка входа шага C или функция C++ обеспечивают интерфейс к коду выполнения модели. По умолчанию сгенерированная функция обеспечивает void-void интерфейс, который не имеет аргументов. Чтобы сконфигурировать выходные аргументы в пользу ступенчатой функции C, используйте Code Mappings Editor – C. Чтобы сконфигурировать выходные аргументы в пользу ступенчатой функции C++, используйте Code Mappings – C++ Editor.

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте