Сконфигурируйте инициализацию AUTOSAR, выполнимую (R4.1)

Релиз 4.1 AUTOSAR ввел событие инициализации AUTOSAR (InitEvent). Можно использовать InitEvent, чтобы назвать выполнимое AUTOSAR как инициализацию выполнимым, и затем сопоставить функцию инициализации с выполнимым. Используя InitEvent, чтобы инициализировать компонент программного обеспечения потенциально более прост и более эффективен, чем использование управления режимом AUTOSAR, в котором вы задаете ModeDeclarationGroup с режимом для подготовки и инициализации компонента программного обеспечения. (Для получения дополнительной информации о подходе управления режимом смотрите, Конфигурируют Коммуникацию AUTOSAR Mode-Switch.)

Если вы импортируете код arxml, который описывает выполнимое с InitEvent, средство импорта arxml конфигурирует выполнимое в Simulink® как выполнимая инициализация.

Также можно сконфигурировать выполнимое, чтобы быть инициализацией, выполнимой в Simulink. Например,

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

  2. Откройте диалоговое окно Configuration Parameters, перейдите к Code Generation> AUTOSAR Code Generation Options и проверьте, что выбранной версией схемы AUTOSAR является 4.1 или выше.

  3. Откройте Словарь AUTOSAR. Перейдите к компоненту программного обеспечения и выберите представление Runnables.

  4. Выберите выполнимое, чтобы сконфигурировать как выполнимая инициализация, и нажать Add Event. От Event Type выпадающий список выберите InitEvent и задайте Event Name. В этом примере событие myInitEvent инициализации сконфигурировано для выполнимого Runnable_Init.

    Можно сконфигурировать самое большее один InitEvent для выполнимого.

  5. Редактор Отображений Открытого кода и выбор вкладка Entry-Point Functions.

  6. Чтобы сопоставить функцию инициализации с выполнимой инициализацией, выберите функцию. От Runnable выпадающий список выберите выполнимое, для которого вы сконфигурировали InitEvent. В этом примере функция точки входа Simulink Initialize Function сопоставлен с выполнимым Runnable_Init AUTOSAR.

Когда вы экспортируете код arxml из модели, содержащей выполнимую инициализацию, средство экспорта arxml генерирует InitEvent, который сопоставлен с выполнимой инициализацией и функция. Например:

<EVENTS>
    <INIT-EVENT UUID="...">
        <SHORT-NAME>myInitEvent</SHORT-NAME>
        <START-ON-EVENT-REF DEST="RUNNABLE-ENTITY">/.../Runnable_Init</START-ON-EVENT-REF>
    </INIT-EVENT>
</EVENTS>