Настройте AUTOSAR для инициализации, сброса или завершения выполнения

Приложения AUTOSAR иногда требуют выполнения сложной логики во время инициализации системы, сброса и завершения работы. Чтобы смоделировать запуск, сброс и завершение работы обработки в программном компоненте AUTOSAR, используйте Simulink® блоки Initialize Function и Terminate Function.

Блоки Initialize Function и Terminate Function могут управлять выполнением компонента в ответ на инициализацию, сброс или завершение событий. Для получения дополнительной информации смотрите Использование функций инициализации, сброса и завершения, Генерация кода, который отвечает на инициализацию, сброс и завершение событий (Simulink Coder), и тему AUTOSAR Запуск, сброс и завершение работы.

В модели AUTOSAR вы сопоставляете каждую функцию Simulink, инициализирующую, сбрасывающую или завершающую точку входа, с выполняемой AUTOSAR. Для каждого выполнения настройте событие AUTOSAR, которое активирует выполнение. В целом можно выбрать любой тип события AUTOSAR, кроме TimingEvent. Выполняемые функции работают с любым стилем моделирования компонентов AUTOSAR. (Однако симуляция цикл AUTOSAR инициализировать, сбросить или завершить выполнение работает только с экспортированным моделированием функции.)

В этом примере показано, как сконфигурировать программный компонент AUTOSAR для простой обработки запуска и завершения, используя блоки Initialize Function и Terminate Function.

  1. Откройте модель, которая сконфигурирована для генерации кода AUTOSAR. Этот пример использует копию примера модели с возможностью записи autosar_swc.

    Добавьте блок Initialize Function к модели.

  2. В блоке Initialize Function разработайте логику, которая требуется для выполнения во время инициализации компонента, используя методы, описанные в Использовании Функции Инициализации, Сброса и Завершения.

  3. Добавьте блок Terminate Function к модели.

  4. В блоке Terminate Function разработайте логику, которая требуется для выполнения во время завершения компонента, используя методы, описанные в Использовании Функции Инициализации, Сброса и Завершения.

    В этом примере Terminator блок является заполнителем для сохранения значения состояния.

  5. Добавьте функцию конечной точки входа в модель. В диалоговом окне Параметры конфигурации, на панели Code Generation > Interface, в разделе Advanced parameters, выберите Terminate function required опции. Нажмите Apply.

  6. Откройте редактор Отображения. Чтобы обновить отображение модели в Simulink на AUTOSAR, нажмите кнопку Update. Теперь отображение отражает сложение блоков Initialize Function и Terminate Function и включение функции конечной точки входа.

  7. Откройте словарь AUTOSAR. Разверните AtomicComponents, разверните компонент и выберите Runnables вид.

    Список runnables уже содержит возможность инициализации, созданную как часть исходного представления Simulink программного компонента AUTOSAR. Используйте кнопку Add, чтобы добавить терминал, выполняемый к компоненту. Выберите каждую выполняемую и настройте ее имя и свойства.

    Значение symbol выполнения, показанное в представлении runnables, становится именем функции runnable. Выполняемое Name значение используется в именах методов доступа RTE, сгенерированных для выполняемого.

  8. Для функций initialize и terminate runnable сконфигурируйте событие AUTOSAR, которое активирует функцию runnable.

    Этот пример задает ModeSwitchEvent для каждого выполняемого. Использование ModeSwitchEvent требует создания группы объявлений модели, интерфейса переключателя режима (M-S) и порта приемника режима для модели. Для получения дополнительной информации см. раздел «Настройка связи в режиме AUTOSAR-Switch».

    В представлении runnables щелкните инициализировать имя runnable, чтобы отобразить и изменить связанные с ним свойства события. Добавьте и сконфигурируйте событие.

    В представлении runnables щелкните имя завершения выполнения, чтобы отобразить и изменить связанные с ним свойства события. Добавьте и сконфигурируйте событие.

  9. Откройте редактор Отображения и выберите вкладку Functions. Выберите функции Simulink initialize и terminate и сопоставьте их с AUTOSAR.

  10. Создайте модель и исследуйте сгенерированный код.

    • Экспортированный код ARXML содержит возможность выполнения AUTOSAR для каждой подсистемы инициализации, сброса или завершения в модели с заданными именем и символом запуска AUTOSAR. Описание выполнения включает каждую точку доступа к данным AUTOSAR и точку вызова сервера, сопоставленную с точкой вызова запуска.

    • Сгенерированный код C содержит методы доступа RTE для параметров, состояний, вызовов функций и внешних вводов-выводов, сопоставленных с выполняемыми.

См. также

| | | |

Похожие примеры

Подробнее о