Сопоставьте элементы AUTOSAR для генерации кода

В Simulink® можно использовать редактор Отображений Кода и Словарь AUTOSAR отдельно или вместе графически сконфигурировать компонент программного обеспечения AUTOSAR и сопоставить элементы модели Simulink с элементами компонента AUTOSAR. Для получения дополнительной информации см. Настройку Компонента AUTOSAR.

Используйте редактор Отображений Кода, чтобы сопоставить элементы модели Simulink с элементами компонента AUTOSAR с точки зрения модели Simulink. Отображение редактора состоит из нескольких таблиц с вкладками, включая Inports, Outports и Entry-Point Functions. Используйте таблицы, чтобы выбрать элементы Simulink и сопоставить их с соответствующими элементами AUTOSAR. Отображения, которые вы конфигурируете, отражаются в сгенерированном AUTOSAR-совместимом коде С и экспортировали описания arxml.

Simulink к AUTOSAR отображение рабочего процесса

Сопоставлять элементы модели Simulink с элементами компонента программного обеспечения AUTOSAR:

  1. Откройте модель, для которой был выбран системный конечный файл AUTOSAR (autosar.tlc).

  2. Создайте или откройте сопоставленное представление модели AUTOSAR. В окне модели выполнить одно из следующих действий:

    • Выберите Code> C/C++ Code> Configure Model in Code Perspective

    • Кликните по перспективному управлению в нижнем правом углу и выберите Code.

    Модель открывается в перспективе кода AUTOSAR. Эта перспектива отображает панель справки, диалоговое окно Property Inspector, и, непосредственно в соответствии с моделью, редактором Отображений Кода.

    Редактор Отображений кода обеспечивает доступ в холсте к AUTOSAR отображение информации, с пакетным редактированием, фильтрацией элемента, простой навигацией к элементам модели и свойствам AUTOSAR и трассируемости элемента модели.

  3. Переместитесь по редактору Отображений Кода вкладки, чтобы выполнить эти действия:

    • Сопоставьте импорт Simulink или выходной порт к получателю AUTOSAR или порту отправителя и элементу данных получателя отправителя с определенным режимом доступа к данным.

    • Сопоставьте функцию точки входа Simulink с выполнимым AUTOSAR.

    • Сопоставьте строку передачи данных Simulink с межвыполнимой переменной (IRV) AUTOSAR.

    • Сопоставьте вызывающую сторону функции Simulink с клиентским портом AUTOSAR и операцией клиент-сервер.

    • Сопоставьте интерполяционную таблицу Simulink с параметром AUTOSAR.

    • Сопоставьте параметр рабочего пространства модели Simulink с внутренним параметром компонента AUTOSAR.

    • Сопоставьте сигнал блока Simulink или состояние к переменной AUTOSAR.

    • Сопоставьте хранилище данных Simulink с переменной AUTOSAR.

    Используйте поле Filter contents (где доступный), чтобы выборочно отобразить некоторые элементы, при исключении других, в текущем представлении.

  4. После отображения элементов модели нажмите кнопку Validate, чтобы подтвердить настройку компонента AUTOSAR. Если об ошибках сообщают, обращаются к ним и затем повторяют валидацию.

Сопоставьте Inports и выходные порты к портам AUTOSAR получателя отправителя

Inports и вкладки Outports редактора Отображений Кода поддержка, моделируя получатель отправителя AUTOSAR (S-R) коммуникация в Simulink. После использования Словаря AUTOSAR, чтобы создать порты AUTOSAR S-R, интерфейсы S-R и элементы данных S-R в вашей модели, редакторе Отображений открытого кода. Используйте Inports, и Outports переходит, чтобы сопоставить корневой импорт Simulink и выходные порты к получателю AUTOSAR и портам отправителя и AUTOSAR S-R элементы данных.

Для получения дополнительной информации смотрите, Конфигурируют Коммуникацию AUTOSAR Sender-Receiver и Конфигурируют AUTOSAR Коммуникация Получателя Отправителя С очередями.

Вкладка Inports редактора Отображений Кода сопоставляет каждый корневой импорт Simulink в порт получателя AUTOSAR и элемент данных интерфейса S-R. Во вкладке Inports вы можете:

  • Сопоставьте импорт Simulink путем выбора импорта и затем выбора значений меню для порта AUTOSAR и элемента AUTOSAR среди перечисленных для компонента AUTOSAR.

  • Выберите режим доступа к данным AUTOSAR для порта: ImplicitReceive, ExplicitReceive, ExplicitReceiveByVal, QueuedExplicitReceive, ErrorStatus, IsUpdated, EndToEndRead или ModeReceive.

То, когда вы выбираете импорт, который сопоставляет с AUTOSAR, не поставило порт получателя в очередь, Property Inspector отображает дополнительную коммуникационную спецификацию порта (ComSpec) атрибуты. Для портов получателя AUTOSAR можно изменить атрибуты ComSpec AliveTimeout, HandleNeverReceived и InitValue. Для получения дополнительной информации смотрите, Конфигурируют Порт AUTOSAR Sender-Receiver ComSpecs.

Вкладка Outports редактора Отображений Кода сопоставляет каждый корневой выходной порт Simulink с портом отправителя AUTOSAR и элементом данных интерфейса S-R. Во вкладке Outports вы можете:

  • Сопоставьте выходной порт Simulink путем выбора выходного порта и затем выбора значений меню для порта AUTOSAR и элемента AUTOSAR.

  • Выберите режим доступа к данным AUTOSAR для порта: ImplicitSend, ImplicitSendByRef, ExplicitSend, QueuedExplicitSend, EndToEndWrite или ModeSend.

То, когда вы выбираете выходной порт, который сопоставляет с AUTOSAR, не поставило порт отправителя в очередь, Property Inspector отображает дополнительную коммуникационную спецификацию порта (ComSpec) атрибуты. Для портов отправителя AUTOSAR можно изменить атрибут ComSpec InitValue. Для получения дополнительной информации смотрите, Конфигурируют Порт AUTOSAR Sender-Receiver ComSpecs.

Сопоставьте функции точки входа с AUTOSAR Runnables

Вкладка Entry-Point Functions редактора Отображений Кода поддержки, моделируя AUTOSAR выполнимые сущности (runnables) в Simulink. После использования Словаря AUTOSAR, чтобы создать AUTOSAR runnables и события AUTOSAR, которые реализуют аспекты внутреннего поведения в компоненте AUTOSAR, редакторе Отображений открытого кода. Используйте вкладку Entry-Point Functions, чтобы сопоставить функции точки входа Simulink с AUTOSAR runnables.

Для получения дополнительной информации смотрите, Конфигурируют AUTOSAR Runnables и События.

Вкладка Entry-Point Functions редактора Отображений Кода сопоставляет каждую функцию точки входа Simulink с выполнимым AUTOSAR. Нажмите кнопку Update, чтобы загрузить или обновить функции точки входа Simulink в модели.

Во вкладке Entry-Point Functions вы можете:

  • Сопоставьте функцию точки входа Simulink путем выбора функции точки входа и затем выбора значения меню для выполнимого AUTOSAR среди перечисленных для компонента AUTOSAR.

  • Задайте методы адреса программного обеспечения (SwAddrMethod s) для выполнимого функционального кода и внутренних данных. Если вы задаете имена SwAddrMethod, генерация кода использует имена, чтобы сгруппировать выполнимые функциональные и определения данных в разделах памяти. Для получения дополнительной информации смотрите, Конфигурируют SwAddrMethod.

    Чтобы задать SwAddrMethod s для выполнимого, выберите соответствующую функцию точки входа. Property Inspector отображает атрибуты кода SwAddrMethod и Internal Data SwAddrMethod для выбранной функции. В Property Inspector выберите имена SwAddrMethod среди допустимых значений, перечисленных для каждого свойства.

    Чтобы создать дополнительные имена SwAddrMethod в компоненте, используйте Словарь AUTOSAR, представление SwAddrMethods. Для получения дополнительной информации смотрите, Конфигурируют AUTOSAR SwAddrMethods.

Примечание

Генерация кода для выполнимых внутренних данных SwAddrMethod s требует установки образцового параметра конфигурации Code Generation> Interface> Generate separate internal data per entry-point function (GroupInternalDataByFunction) к on.

Сопоставьте передачи данных с межвыполнимыми переменными AUTOSAR

Вкладка Data Transfers редактора Отображений Кода поддержки, моделируя AUTOSAR межвыполнимые переменные (IRVs) в Simulink. После использования Словаря AUTOSAR, чтобы создать AUTOSAR IRVs, которые соединяют runnables и реализуют аспекты внутреннего поведения в компоненте AUTOSAR, редакторе Отображений открытого кода. Используйте вкладку Data Transfers, чтобы сопоставить строки передачи данных Simulink с AUTOSAR IRVs.

Для получения дополнительной информации смотрите Поведение Компонента AUTOSAR Модели. Для рисунков того, как IRVs используются с основанным на уровне и основанным на вызове функции runnables, см. модели в качестве примера в Образцовых Компонентах программного обеспечения AUTOSAR.

Вкладка Data Transfers редактора Отображений Кода сопоставляет каждую строку передачи данных Simulink с AUTOSAR IRV. Нажмите кнопку Update, чтобы загрузить или обновить передачи данных Simulink в вашей модели.

Во вкладке Data Transfers можно сопоставить строку передачи данных Simulink путем выбора имени сигнала и затем выбора значений меню для режима доступа IRV (Implicit или Explicit) и имени AUTOSAR IRV среди перечисленных для компонента AUTOSAR.

Сопоставьте функциональные вызывающие стороны с портами клиент-сервер AUTOSAR и операциями

Вкладка Function Callers редактора Отображений Кода поддержки, моделируя клиентскую сторону коммуникации (C-S) клиент-сервер AUTOSAR в Simulink. После использования Словаря AUTOSAR, чтобы создать клиентские порты AUTOSAR, интерфейсы C-S и операции C-S в вашей модели, редакторе Отображений открытого кода. Используйте вкладку Function Callers, чтобы сопоставить вызывающие стороны функции Simulink с клиентскими портами AUTOSAR и операциями AUTOSAR C-S.

Для получения дополнительной информации смотрите, Конфигурируют Коммуникацию Клиент-сервер AUTOSAR.

Вкладка Function Callers редактора Отображений Кода сопоставляет каждую вызывающую сторону функции Simulink с клиентским портом AUTOSAR и операцией интерфейса AUTOSAR C-S. Нажмите кнопку Update, чтобы загрузить или обновить вызывающие стороны функции Simulink в модели.

Во вкладке Function Callers можно сопоставить вызывающую сторону функции Simulink путем выбора функционального имени вызывающей стороны и затем выбора значений меню для клиентского порта AUTOSAR и операции AUTOSAR среди перечисленных для компонента AUTOSAR.

Сопоставьте параметры рабочего пространства модели с внутренними параметрами компонента AUTOSAR

Вкладка Parameters редактора Отображений Кода поддержки, сопоставляющие параметры рабочего пространства модели Simulink с параметрами AUTOSAR для калибровки во время выполнения AUTOSAR. Примеры параметров рабочего пространства модели, которые можно сопоставить, включают:

  • Объекты параметра Simulink

  • Объекты интерполяционной таблицы Simulink

  • Объекты точки останова Simulink

Путем отображения интерполяционной таблицы и точки останова возражает против внутренних калибровочных параметров AUTOSAR, можно смоделировать параметры AUTOSAR для интегрированных и распределенных поисков. Для получения дополнительной информации смотрите, Конфигурируют Интерполяционные таблицы для Измерения AUTOSAR и Калибровки.

После создания параметров рабочего пространства модели, например, с помощью Model Explorer, редактора Отображений открытого кода. Используйте вкладку Parameters, чтобы сопоставить параметры рабочего пространства модели Simulink с внутренними параметрами компонента AUTOSAR, такими как постоянная память, совместно использованные параметры или параметры на экземпляр.

Для получения дополнительной информации смотрите, Конфигурируют Постоянную Память AUTOSAR и Конфигурируют AUTOSAR Разделяемые или Параметры На экземпляр.

Вкладка Parameters редактора Отображений Кода сопоставляет каждый параметр рабочего пространства модели Simulink с параметром AUTOSAR. Во вкладке Parameters:

  • Если параметр рабочего пространства модели Simulink не сконфигурирован в качестве образцового аргумента (то есть, не уникальный для каждого экземпляра модели мультиэкземпляра), можно сопоставить параметр путем выбора его и затем выбора значения меню для типа параметра AUTOSAR. Для этого рабочего процесса допустимыми типами параметра является ConstantMemory, SharedParameter или Auto. Чтобы принять программное обеспечение, сопоставляющее значения по умолчанию, задайте Auto.

    Например, вот является вкладка Parameters, например, моделью autosar_swc_counter.

  • Если параметр рабочего пространства модели Simulink сконфигурирован в качестве образцового аргумента (то есть, уникальный для каждого экземпляра модели мультиэкземпляра), сопоставьте параметр путем выбора его и затем выбора значения меню для типа параметра AUTOSAR. Для этого рабочего процесса допустимыми типами параметра является PerInstanceParameter или Auto. Чтобы принять программное обеспечение, сопоставляющее значения по умолчанию, задайте Auto.

    Например, вот является вкладка Parameters, например, моделью autosar_swc_throttle_sensor. Модель Example autosar_composition содержит два экземпляра autosar_swc_throttle_sensor.

  • Если вы выбираете тип параметра кроме Auto, используйте Property Inspector, чтобы просмотреть или изменить другой код и калибровочные атрибуты для параметра.

    АтрибутЦель
    Const (только ConstantMemory)Задайте, включать ли спецификатор типа C const в сгенерированный код для параметра AUTOSAR. Для получения дополнительной информации смотрите, Задают Спецификаторы Типа C для Статической и Постоянной Памяти AUTOSAR.
    Volatile (только ConstantMemory)Задайте, включать ли спецификатор типа C volatile в сгенерированный код для параметра AUTOSAR. Для получения дополнительной информации смотрите, Задают Спецификаторы Типа C для Статической и Постоянной Памяти AUTOSAR.
    AdditionalNativeTypeQualifier (только ConstantMemory)Задайте дополнительный нативный спецификатор типа AUTOSAR, чтобы включать в сгенерированный код для параметра AUTOSAR. Для получения дополнительной информации смотрите, Задают Спецификаторы Типа C для Статической и Постоянной Памяти AUTOSAR.
    SwAddrMethodВыберите имя SwAddrMethod среди перечисленных как допустимое для параметра AUTOSAR. Генерация кода использует имя SwAddrMethod, чтобы сгруппировать параметры AUTOSAR в разделе memory для доступа измерением и инструментами калибровки. Для получения дополнительной информации смотрите, Конфигурируют SwAddrMethod.
    SwCalibrationAccessЗадайте, как измерение и инструменты калибровки могут получить доступ к параметру AUTOSAR. Допустимые значения доступа включают ReadOnly, ReadWrite и NotAccessible. Для получения дополнительной информации смотрите, Конфигурируют SwCalibrationAccess.
    DisplayFormatЗадайте формат отображения для параметра AUTOSAR. Спецификации формата отображения AUTOSAR управляют отображением ширины и точности для данных об измерении и калибровке. Для получения дополнительной информации смотрите, Конфигурируют DisplayFormat.

Сопоставьте блоки-сигналы и состояния к переменным AUTOSAR

Вкладка Signals/States редактора Отображений Кода поддержка, сопоставляющая сигналы блока Simulink и состояния к переменным AUTOSAR для калибровки во время выполнения AUTOSAR. После создания именованных или сигналов блока Simulink с концом теста или Simulink утверждают блоки владельца в вашей модели, редакторе Отображений открытого кода. Используйте вкладку Signals/States, чтобы сопоставить блоки-сигналы и состояния к переменным AUTOSAR, таким как AUTOSAR-typed память на экземпляр или статическое ЗУ AUTOSAR.

Для получения дополнительной информации смотрите, Конфигурируют AUTOSAR Память На экземпляр и Конфигурируют Статическое ЗУ AUTOSAR.

Вкладка Signals/States, узел Signals, редактора Отображений Кода сопоставляют каждый именованный или сигнал блока Simulink с концом теста с переменной AUTOSAR. В узле Signals можно сопоставить сигнал блока Simulink путем выбора сигнала и затем выбора значения меню для типа переменной AUTOSAR: ArTypedPerInstanceMemory, StaticMemory или Auto. Чтобы принять программное обеспечение, сопоставляющее значения по умолчанию, задайте Auto.

Вкладка Signals/States, узел States, редактора Отображений Кода сопоставляют каждое конфигурируемое состояние блока Simulink с переменной AUTOSAR. В узле States можно сопоставить состояние блока Simulink путем выбора состояния и затем выбора значения меню для типа переменной AUTOSAR: ArTypedPerInstanceMemory, StaticMemory или Auto. Чтобы принять программное обеспечение, сопоставляющее значения по умолчанию, задайте Auto.

Или во вкладке, если вы сопоставляете сигнал или в состояние к типу переменной кроме Auto, можно использовать Property Inspector, чтобы просмотреть или изменить другой код и калибровочные атрибуты для переменной.

АтрибутЦель
ShortName

Задайте краткое название для переменной AUTOSAR. Если незаданный, экспорт arxml автоматически генерирует краткое название.

  • Для сигналов автоматически сгенерированное краткое название может отличаться от имени сигнала.

  • Для состояний автоматически сгенерированное краткое название основано на имени состояния, если вы существуете. Если состояние без имени, сгенерированное имя может отличаться от имени блока.

Volatile (только StaticMemory)Задайте, включать ли спецификатор типа C volatile в сгенерированный код для переменной AUTOSAR. Для получения дополнительной информации смотрите, Задают Спецификаторы Типа C для Статической и Постоянной Памяти AUTOSAR.
AdditionalNativeTypeQualifier (только StaticMemory)Задайте дополнительный нативный спецификатор типа AUTOSAR, чтобы включать в сгенерированный код для переменной AUTOSAR. Для получения дополнительной информации смотрите, Задают Спецификаторы Типа C для Статической и Постоянной Памяти AUTOSAR.
SwAddrMethodВыберите имя SwAddrMethod среди перечисленных как допустимое для переменной AUTOSAR. Генерация кода использует имя SwAddrMethod к переменным AUTOSAR группы в разделе memory для доступа измерением и инструментами калибровки. Для получения дополнительной информации смотрите, Конфигурируют SwAddrMethod.
SwCalibrationAccessЗадайте, как измерение и инструменты калибровки могут получить доступ к переменной AUTOSAR. Допустимые значения доступа включают ReadOnly, ReadWrite и NotAccessible. Для получения дополнительной информации смотрите, Конфигурируют SwCalibrationAccess.
DisplayFormatЗадайте формат отображения для переменной AUTOSAR. Спецификации формата отображения AUTOSAR управляют отображением ширины и точности для данных об измерении и калибровке. Для получения дополнительной информации смотрите, Конфигурируют DisplayFormat.

Сопоставьте хранилища данных с переменными AUTOSAR

Вкладка Data Stores редактора Отображений Кода поддержки, сопоставляющие блоки памяти хранилища данных Simulink с переменными AUTOSAR для калибровки во время выполнения AUTOSAR. После создания блоков памяти хранилища данных в вашей модели, редакторе Отображений открытого кода. Используйте вкладку Data Stores, чтобы сопоставить хранилища данных с переменными AUTOSAR, такими как AUTOSAR-typed память на экземпляр или статическое ЗУ AUTOSAR.

Для получения дополнительной информации смотрите, Конфигурируют AUTOSAR Память На экземпляр и Конфигурируют Статическое ЗУ AUTOSAR.

Вкладка Data Stores редактора Отображений Кода сопоставляет каждое хранилище данных с переменной AUTOSAR. Во вкладке Data Stores вы можете:

  • Сопоставьте хранилище данных Simulink путем выбора хранилища данных и затем выбора значения меню для типа переменной AUTOSAR: ArTypedPerInstanceMemory, StaticMemory или Auto. Чтобы принять программное обеспечение, сопоставляющее значения по умолчанию, задайте Auto.

  • Если вы выбираете тип переменной кроме Auto, используйте Property Inspector, чтобы просмотреть или изменить другой код и калибровочные атрибуты для переменной.

    АтрибутЦель
    ShortName

    Задайте краткое название для переменной AUTOSAR. Если незаданный, экспорт arxml автоматически генерирует краткое название.

    Volatile (только StaticMemory)Задайте, включать ли спецификатор типа C volatile в сгенерированный код для переменной AUTOSAR. Для получения дополнительной информации смотрите, Задают Спецификаторы Типа C для Статической и Постоянной Памяти AUTOSAR.
    AdditionalNativeTypeQualifier (только StaticMemory)Задайте дополнительный нативный спецификатор типа AUTOSAR, чтобы включать в сгенерированный код для переменной AUTOSAR. Для получения дополнительной информации смотрите, Задают Спецификаторы Типа C для Статической и Постоянной Памяти AUTOSAR.
    NeedsNVRAMAccess (только ArTypedPerInstanceMemory)Задайте, нужен ли переменной AUTOSAR доступ к энергонезависимому RAM на процессоре. Выберите true, чтобы сконфигурировать память на экземпляр, чтобы быть зеркальным блоком для определенного блока NVRAM.
    SwAddrMethodВыберите имя SwAddrMethod среди перечисленных как допустимое для переменной AUTOSAR. Генерация кода использует имя SwAddrMethod к переменным AUTOSAR группы в разделе memory для доступа измерением и инструментами калибровки. Для получения дополнительной информации смотрите, Конфигурируют SwAddrMethod.
    SwCalibrationAccessЗадайте, как измерение и инструменты калибровки могут получить доступ к переменной AUTOSAR. Допустимые значения доступа включают ReadOnly, ReadWrite и NotAccessible. Для получения дополнительной информации смотрите, Конфигурируют SwCalibrationAccess.
    DisplayFormatЗадайте формат отображения для переменной AUTOSAR. Спецификации формата отображения AUTOSAR управляют отображением ширины и точности для данных об измерении и калибровке. Для получения дополнительной информации смотрите, Конфигурируют DisplayFormat.

Задайте спецификаторы типа C для статической и постоянной памяти AUTOSAR

Для компонента AUTOSAR можно сконфигурировать спецификаторы типа C, чтобы настроить сгенерированный AUTOSAR-совместимый код С для статического ЗУ AUTOSAR и постоянной памяти AUTOSAR. Например, можно применить спецификаторы типа C, такие как const или volatile, чтобы управлять оптимизацией компилятора.

В модели AUTOSAR используйте редактор Отображений Кода, чтобы сконфигурировать спецификаторы типа C для образцовых сигналов, состояний, хранилищ данных и параметров, которые сопоставлены с AUTOSAR StaticMemory или AUTOSAR ConstantMemory. Создание модели экспортирует спецификаторы типа в файлы arxml и генерирует AUTOSAR-совместимый код С, который использует спецификаторы типа.

Например, в редакторе Отображений Кода, вкладке Signals/States, предполагают, что вы сопоставляете сигнал с StaticMemory. Выберите сигнал отобразить атрибуты кода в Property Inspector.

Если вы устанавливаете атрибут Volatile на true и задаете AdditionalNativeTypeQualifier, чтобы быть my_qualifier:

  • Экспортируемые файлы arxml задают AdditionalNativeTypeQualifier:

    <ADDITIONAL-NATIVE-TYPE-QUALIFIER>volatile my_qualifier</ADDITIONAL-NATIVE-TYPE-QUALIFIER>
  • Сгенерированный код C использует спецификаторы типа C, например:

    /* Static Memory for Internal Data */
    volatile my_qualifier boolean SM_equal_to_count;

Для получения дополнительной информации смотрите Блоки-сигналы Карты и состояния к Переменным AUTOSAR, Хранилища данных Карты к Переменным AUTOSAR и Параметры Рабочего пространства модели Карты к Внутренним Параметрам Компонента AUTOSAR.

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

Больше о