Приложения AUTOSAR иногда требуют, чтобы сложная логика выполнилась во время системной инициализации, сбросила, и последовательности завершения. К образцовому запуску, сбросу, и обработке завершения работы в компоненте программного обеспечения AUTOSAR, использованию блоки Simulink® Инициализируют Функцию и Оконечную Функцию.
Инициализировать Функция и Оконечные Функциональные блоки могут управлять выполнением компонента в ответ на, инициализируют, сбрасывают, или оконечные события. Для получения дополнительной информации смотрите Используя, Инициализируют, Сброс и Оконечные Функции (Simulink), Генерируют Код, Который Отвечает, чтобы Инициализировать, Сбросить, и Оконечные События (Simulink Coder), и Запуск темы AUTOSAR, Сброс и Завершение работы.
В модели AUTOSAR вы сопоставляете каждый Simulink, инициализируют, сбрасывают или отключают функцию точки входа к выполнимому AUTOSAR. Для каждого выполнимого, сконфигурируйте событие AUTOSAR, которое активирует выполнимое. В целом можно выбрать любой тип события AUTOSAR кроме TimingEvent
. runnables работают с любым стилем моделирования компонента AUTOSAR. (Однако программное обеспечение в симуляции цикла AUTOSAR инициализирует, сбросило или останавливается, runnables работает только с экспортируемым моделированием функций.)
Этот пример показывает, как сконфигурировать компонент программного обеспечения AUTOSAR для простой обработки запуска и завершения, с помощью Инициализировать Функции и Отключить Функциональные блоки.
Откройте модель, которая сконфигурирована для генерации кода AUTOSAR. Этот пример использует перезаписываемую копию модели autosar_swc
в качестве примера.
Добавьте Инициализировать Функциональный блок в модель.
В Инициализировать Функциональном блоке разработайте логику, которая требуется, чтобы выполняться во время инициализации компонента, использование методов, описанных в Использовании, Инициализирует, Сброс и Оконечные Функции (Simulink).
Добавьте Оконечный Функциональный блок в модель.
В Оконечном Функциональном блоке разработайте логику, которая требуется, чтобы выполняться во время завершения компонента, использование методов, описанных в Использовании, Инициализирует, Сброс и Оконечные Функции (Simulink).
В этом примере блок Terminator является заполнителем для сохранения значения состояния.
Добавьте оконечную функцию точки входа в модель. В диалоговом окне Configuration Parameters, в Code Generation> панель Interface, под Advanced parameters, выбирают опцию Terminate function required. Нажмите Apply.
Редактор Отображений Открытого кода. Чтобы обновить Simulink к отображению AUTOSAR модели, нажмите кнопку Update. Отображение теперь отражает сложение Инициализировать Функции и Оконечных Функциональных блоков и включения оконечной функции точки входа.
Откройте Словарь AUTOSAR. Расширьте AtomicComponents, расширьте компонент и выберите представление Runnables.
Список runnables уже содержит инициализацию, выполнимую, созданную как часть начального представления Simulink компонента программного обеспечения AUTOSAR. Используйте кнопку Add, чтобы добавить оконечное выполнимое в компонент. Выберите каждого выполнимого и сконфигурируйте его имя и свойства.
Выполнимое значение symbol, показанное в представлении runnables, становится выполнимым именем функции. Выполнимое значение Name используется на имена методов доступа RTE, сгенерированных для выполнимого.
Для обоих инициализирование и оконечный runnables, сконфигурируйте событие AUTOSAR, которое активирует выполнимое.
Этот пример задает ModeSwitchEvent
для каждого выполнимого. Используя ModeSwitchEvent
требует создания образцовой группы объявления, интерфейса (M-S) переключателя режима и порта получателя режима для модели. Для получения дополнительной информации смотрите, Конфигурируют Коммуникацию AUTOSAR Mode-Switch.
В представлении runnables кликните по инициализированию выполнимого имени, чтобы отобразить и изменить его связанные свойства события. Добавьте и сконфигурируйте событие.
В представлении runnables кликните по оконечному выполнимому имени, чтобы отобразить и изменить его связанные свойства события. Добавьте и сконфигурируйте событие.
Редактор Отображений Открытого кода и выбор вкладка Entry-Point Functions. Выберите Simulink, инициализируют и отключают функции и сопоставляют их с AUTOSAR, инициализируют и отключают runnables, который вы сконфигурировали.
Создайте модель и исследуйте сгенерированный код.
Экспортируемый код arxml
содержит выполнимое AUTOSAR для каждого, инициализируют, сбрасывают, или оконечная подсистема в модели, с заданным выполнимым именем AUTOSAR и символом. Выполнимое описание включает каждую точку доступа к данным AUTOSAR и извещатель сервера, сопоставленный с выполнимым.
Сгенерированный код C содержит методы доступа RTE для параметров, состояний, функциональных вызывающих сторон и внешнего ввода-вывода, сопоставленного с выполнимым.
Event.listener | Инициализируйте функцию | Читатель состояния | Средство записи состояния | Оконечная функция