Сконфигурируйте генерацию кода AUTOSAR

Сгенерировать AUTOSAR-совместимый код С и arxml описания компонента из модели сконфигурировали для Классической Платформы AUTOSAR:

  1. Исследуйте параметры генерации кода AUTOSAR на Code Generation> панель AUTOSAR Code Generation Options диалогового окна Configuration Parameters.

  2. Исследуйте опции экспорта AUTOSAR XML с помощью функций свойства AUTOSAR Dictionary или AUTOSAR.

  3. Создайте модель.

Выберите AUTOSAR Schema

Программное обеспечение поддерживает следующие Классические версии схемы Платформы AUTOSAR для импорта и экспорта arxml файлы и генерация AUTOSAR-совместимого кода С.

Значение версии схемыВерсии схемы, поддержанные для импортаЭкспортируйте версию схемы
4.3 (значение по умолчанию)4.3.0, 4.3.14.3.1
4.24.2.1, 4.2.24.2.2
4.14.1.1, 4.1.2, 4.1.34.1.3
4.04.0.1, 4.0.2, 4.0.34.0.3
3.23.2.1, 3.2.23.2.2
3.13.1.1, 3.1.2, 3.1.3, 3.1.43.1.4
3.03.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.63.0.2
2.12.1 (Версия XSD 0014, 0015, 0017, 0018)2.1 (Версия XSD 0017)

Выбор системного конечного файла AUTOSAR для вашей модели впервые устанавливает параметр версии схемы на значение по умолчанию, 4.3.

Когда вы импортируете arxml код в Simulink®, arxml средство импорта обнаруживает версию схемы и устанавливает параметр версии схемы в модели. Например, если вы импортируете arxml код на основе версии схемы 4.0 4.0.1, 4.0.2, или 4.0.3, средство импорта устанавливает параметр версии схемы на 4.0.

Когда вы экспортируете свой компонент программного обеспечения AUTOSAR, генерация кода экспортирует XML, который совместим с текущим значением версии схемы. Например, если Generate XML file for schema version равняется 4.0, экспорт использует версию схемы экспорта, упомянутую выше в схеме 4.0, то есть, версия 4.0.3.

Если необходимо изменить версию схемы, необходимо сделать так прежде, чем экспортировать компонент программного обеспечения AUTOSAR. Чтобы выбрать версию схемы, на Code Generation>, панель AUTOSAR Code Generation Options диалогового окна Configuration Parameters, от Generate XML file for schema version выпадающий список, выбирает версию схемы, которой вы требуете.

Примечание

Параметры модели AUTOSAR на панели AUTOSAR Code Generation Options должны быть установлены на те же значения для главных и моделей, на которые ссылаются. Эта инструкция применяется к Generate XML file for schema version, Maximum SHORT-NAME length, Use AUTOSAR compiler abstraction macros и Support root-level matrix I/O using one-dimensional arrays.

Задайте максимальную длину КРАТКОГО НАЗВАНИЯ

Стандарт AUTOSAR указывает что максимальная длина SHORT-NAME Элементы XML являются 128 символами, для версии 4.x схемы или позже, или 32 символами, для более ранних версий схемы. Даже для более ранних версий схемы, ваш инструмент разработки AUTOSAR может поддержать использование более длинного SHORT-NAME элементы, например, чтобы назвать порты и интерфейсы.

Используйте параметр Maximum SHORT-NAME length, чтобы задать максимальную длину для SHORT-NAME элементы экспортированы генератором кода. На Code Generation> панель AUTOSAR Code Generation Options диалогового окна Configuration Parameters, в поле Maximum SHORT-NAME length, задают положительное число символов, меньше чем или равных 128. Значением по умолчанию являются 128 символов.

Сконфигурируйте макросы абстракции компилятора AUTOSAR

Компиляторы для 16-битных платформ (например, Cosmic и Metrowerks для S12X или Определяющий задачу для ST10) используют специальные ключевые слова, чтобы иметь дело с ограниченной 16-битной областью значений обращения. Местоположение данных и кода вне границы 64k выбрано явным образом специальными ключевыми словами. Однако, если такие ключевые слова используются непосредственно в рамках исходного кода, то программное обеспечение должно быть портировано отдельно для каждого семейства микроконтроллеров. Таким образом, программное обеспечение не платформенно независимо.

AUTOSAR задает макросы C, чтобы абстрагировать директивы компилятора (близкие/далекие вызовы памяти) платформенно независимым способом. Эти директивы компилятора, выведенные из 16-битных платформ, включают лучшие КПД кода для 16-битных микроконтроллеров без отдельного портирования исходного кода для каждого компилятора. Этот подход позволяет вашего системного интегратора, а не ваше лицо, осуществляющее внедрение компонента программного обеспечения, чтобы выбрать местоположение данных и кода для каждого компонента программного обеспечения.

Для получения дополнительной информации об абстракции компилятора AUTOSAR смотрите www.autosar.org.

Чтобы сконфигурировать генерацию макроса компилятора AUTOSAR, в Code Generation> панель AUTOSAR Code Generation Options диалогового окна Configuration Parameters, выбирают Use AUTOSAR compiler abstraction macros.

Когда вы создаете модель, программное обеспечение применяет макросы абстракции компилятора к глобальным данным и функциональным определениям в сгенерированном коде.

Для данных макросы находятся в следующей форме:

  • CONST (consttype, memclassvarName ;

  • Vartype, memclassvarName ;

где

  • consttype и type типы данных

  • memclass макро-строка SWCvar (SWC идентификатор компонента программного обеспечения),

  • varname идентификатор переменной

Для функций (модель и подсистема), макросы находятся в следующей форме:

  • FUNC (type, memclass) funcname (пусто)

где

  • type тип данных возвращаемого аргумента

  • memclass макро-строка. Этой строкой может быть любой SWC_CODE для runnables (внешние функции), или SWC_CODE_LOCAL для внутренних функций (SWC идентификатор компонента программного обеспечения).

 Пример 1. Пример

Если вы не выбираете Use AUTOSAR compiler abstraction macros, генератор кода производит следующий код:

/* Block signals (auto storage) */
BlockIO rtB;

/* Block states (auto storage) */
D_Work rtDWork;

/* Model step function */
void Runnable_Step(void)

Однако, если вы выбираете Use AUTOSAR compiler abstraction macros, генератор кода производит макросы в коде:

/* Block signals (auto storage) */
VAR(BlockIO, SWC1_VAR) rtB;

/* Block states (auto storage) */
VAR(D_Work, SWC1_VAR) rtDWork;

/* Model step function */
FUNC(void, SWC1_CODE) Runnable_Step(void)

Матричный ввод-вывод корневого уровня

Программное обеспечение поддерживает матричный ввод-вывод на корневом уровне путем генерации кода, который реализует матрицы как одномерные массивы. Однако это поведение не является значением по умолчанию. Чтобы сконфигурировать матричный ввод-вывод корневого уровня, на Code Generation> панель AUTOSAR Code Generation Options диалогового окна Configuration Parameters, выбирают Support root-level matrix I/O using one-dimensional arrays.

Смотрите опции AUTOSAR XML

Исследуйте опции XML, которые вы сконфигурировали при помощи Словаря AUTOSAR. Если вы еще не сконфигурировали их, смотрите, Конфигурируют Опции AUTOSAR XML.

Сгенерируйте AUTOSAR C и XML-файлы

После конфигурирования генерации кода AUTOSAR и опций XML, сгенерируйте код. Чтобы сгенерировать код С и экспортировать XML-описания, создайте модель компонента (Ctrl+B).

Процесс сборки генерирует AUTOSAR-совместимый код С и XML-описания AUTOSAR к папке сборки модели. Экспортируемые XML-файлы включают:

  • Один или несколько modelname*.arxml файлы, на основе того, устанавливаете ли вы Exported XML file packaging на Single file или Modular.

  • Если вы импортировали arxml файлы в Simulink, обновленные версии тех же файлов.

Следующая таблица показывает который modelname*.arxml файлы сгенерированы, на основе значения опции Exported XML file packaging, сконфигурированной в Словаре AUTOSAR.

Экспортируемый XML-файл упаковочное значениеЭкспортируемое имя файлаПо умолчанию содержит...
Single filemodelname.arxmlВсе элементы AUTOSAR.
Modularmodelname_component.arxml

Компоненты программного обеспечения.

Это - основной arxml файл экспортирован для модели Simulink. В дополнение к компонентам программного обеспечения AUTOSAR файл включает элементы, для которых пакеты AUTOSAR (AR-PACKAGEs) не сконфигурированы, и AR-PACKAGEs, которые не выравниваются с путями к пакету в другом экспортируемом arxml файлы. Для получения дополнительной информации о AR-PACKAGEs и их местоположении в модульном экспортируемом arxml файлы, смотрите, Конфигурируют Пакеты AUTOSAR.

modelname_datatype.arxml

Типы данных и связанные элементы.

modelname_implementation.arxml

Реализация компонента программного обеспечения.

modelname_interface.arxml

Интерфейсы, включая S-R, C-S, M-S, NV и другие интерфейсы.

modelname_behavior.arxml

Компонент программного обеспечения внутреннее поведение (сгенерированный только для схемы 3.x или ранее).

Можно объединить описания компонента XML AUTOSAR назад в инструмент разработки AUTOSAR. Информация компонента AUTOSAR разделена в отдельные файлы, чтобы упростить слияние. Разделение пытается минимизировать количество слияний, которые необходимо сделать. Вы не должны объединять файл типа данных в инструмент разработки, потому что типы данных обычно задаются рано в процессе проектирования. Необходимо, однако, объединить внутренний файл поведения, потому что этой информацией является часть реализации модели.

Чтобы помочь поддержать цикл обработки элементов AUTOSAR между AAT и средой модельно-ориентированного проектирования Simulink, генератор кода сохраняет элементы AUTOSAR и их UUIDs через arxml импорт и экспорт. Для получения дополнительной информации смотрите Сохранение Туда и обратно Структуры XML-файла AUTOSAR и Информации об элементе.

Для примера того, как сгенерировать AUTOSAR-совместимый код С и экспортировать описания компонента XML AUTOSAR из модели Simulink, смотрите, Генерируют код С AUTOSAR и XML-описания.

Смотрите также

| | |

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

Больше о