Сконфигурируйте внутренние типы данных для IncludedDataTypeSet AUTOSARs

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

В Simulink® можно сконфигурировать внутренний тип данных AUTOSAR, который будет экспортироваться в IncludedDataTypeSet ARXML и сгенерированный в заголовочном файле C. В вашей модели компонента AUTOSAR создайте объект типа данных, используйте ее, чтобы описать внутренний тип данных и сопоставить тип данных с заголовочным файлом Rte_Type.h. Например:

  1. Создайте или откройте модель компонента программного обеспечения AUTOSAR, в которой блоки используются внутренне и не являются частью интерфейса модели компонента. Например, вот модель, в которой блок Constant не соединяется с импортом модели или выходным портом.

  2. Создайте объект типа данных, Type3, в базовом рабочем пространстве или в словаре данных. Установите флажок Is alias.

    Для IncludedDataTypeSet AUTOSAR экспорт, Simulink поддерживает эти типы данных:

    • Числовой

    • Псевдоним

    • Шина

    • Фиксированная точка

    • Перечислимый

  3. Сопоставьте тип данных Type3 с заголовочным файлом Rte_Type.h. В диалоговом окне объекта типа данных, вкладке Code Generation, устанавливает Header file на Rte_Type.h. Нажмите Apply.

  4. К ссылочному Type3 в модели введите Type3 в поле Output data type параметров блоков Константа.

    Type3 является внутренним к компоненту и не экспортируется в интерфейсных описаниях компонента. Поскольку вы сопоставили его с заголовочным файлом Rte_Type.h, это экспортируется в IncludedDataTypeSet описание.

  5. Создайте модель. В экспортируемом ARXML, в описании внутреннего поведения компонента, IncludedDataTypeSet описание ссылается на внутренний тип данных.

    <INCLUDED-DATA-TYPE-SETS>
        <INCLUDED-DATA-TYPE-SET>
            <DATA-TYPE-REFS>
                <DATA-TYPE-REF DEST="APPLICATION-PRIMITIVE-DATA-TYPE">
                  /Control_pkg/Control_dt/ApplDataTypes/Type3
                </DATA-TYPE-REF>
            </DATA-TYPE-REFS>
        </INCLUDED-DATA-TYPE-SET>
    </INCLUDED-DATA-TYPE-SETS>

    Сгенерированный Rte_Type.h заголовочный файл содержит запись для внутреннего типа данных.

    /* AUTOSAR Implementation data types, specific to software component */
    typedef sint16 Type1;
    typedef sint16 Type2;
    typedef sint16 Type3;
    typedef void* Rte_Instance;

Связанные примеры

Больше о