В Simulink ® можно использовать редактор сопоставления кодов и словарь AUTOSAR отдельно или вместе для графической настройки программного компонента AUTOSAR и сопоставления элементов модели Simulink с элементами компонентов AUTOSAR. Дополнительные сведения см. в разделе Конфигурация компонентов AUTOSAR.
Редактор «Сопоставления кода» используется для сопоставления элементов модели Simulink с элементами компонента AUTOSAR с точки зрения модели Simulink. Отображение редактора состоит из нескольких таблиц с вкладками, включая «Функции», «Входные данные» и «Выходные данные». Используйте таблицы, чтобы выбрать элементы Simulink и сопоставить их с соответствующими элементами AUTOSAR. Настраиваемые сопоставления отражаются в сгенерированном коде C, совместимом с AUTOSAR, и экспортированных описаниях ARXML.
Редактор сопоставления кодов также обеспечивает отображение подмоделей, на которые ссылаются модели компонентов программного обеспечения AUTOSAR. Дополнительные сведения см. в разделе Данные калибровки карты для подмоделей, на которые имеются ссылки из моделей компонентов AUTOSAR.
Сопоставление входов и выходов с портами отправителя-получателя AUTOSAR
Сопоставить параметры рабочего пространства модели с параметрами компонента AUTOSAR
Сопоставление сигналов и состояний блоков переменным AUTOSAR
Отображение переноса данных в переменные AUTOSAR с возможностью выполнения
Сопоставление вызывающих абонентов функций с портами и операциями клиента-сервера AUTOSAR
Укажите квалификаторы типа C для статической и постоянной памяти AUTOSAR
Определение пакета данных по умолчанию для внутренних переменных AUTOSAR
Для сопоставления элементов модели Simulink с элементами программного компонента AUTOSAR:
Открытие модели, для которой используется целевой файл системы AUTOSAR autosar.tlc выбран.
Создайте или откройте сопоставленное представление модели AUTOSAR. В окне модели выполните одно из следующих действий.
На вкладке Приложения откройте приложение Конструктор компонентов AUTOSAR.
Щелкните элемент управления «Перспектива» в правом нижнем углу и выберите «Код».
Если модель еще не сопоставлена с программным компонентом AUTOSAR, откроется окно Быстрый запуск компонента AUTOSAR (AUTOSAR Component Quick Start). Чтобы настроить модель для разработки компонентов AUTOSAR, выполните процедуру быстрого запуска и нажмите кнопку Готово (Finish). Дополнительные сведения см. в разделе Создание сопоставленного компонента AUTOSAR с помощью быстрого запуска.
Модель открывается в ракурсе кода AUTOSAR. В этом ракурсе отображается панель справки, диалоговое окно «Инспектор свойств» и, непосредственно под моделью, редактор сопоставлений кодов.

Редактор сопоставлений кода обеспечивает внутрихолстовой доступ к информации о сопоставлении AUTOSAR с помощью пакетного редактирования, фильтрации элементов, простой навигации к элементам модели и свойствам AUTOSAR, а также возможности отслеживания элементов модели.
Перейдите на вкладки редактора сопоставлений кода, чтобы выполнить следующие действия:
Сопоставьте функцию точки входа Simulink с возможностью выполнения AUTOSAR.
Сопоставьте входной или выходной порт Simulink с приемником или портом отправителя AUTOSAR и элементом данных отправителя-получателя с определенным режимом доступа к данным.
Сопоставьте параметр рабочего пространства модели Simulink с параметром компонента AUTOSAR.
Сопоставьте хранилище данных Simulink переменной AUTOSAR.
Сопоставьте сигнал или состояние блока Simulink переменной AUTOSAR.
Сопоставьте линию передачи данных Simulink с межпроходной переменной AUTOSAR (IRV).
Сопоставьте вызывающего абонента функции Simulink с клиентским портом AUTOSAR и операцией клиент-сервер.
Поле Содержимое фильтра (если доступно) используется для выборочного отображения некоторых элементов в текущем представлении без других элементов.
После сопоставления элементов модели нажмите кнопку Проверить
(Validate), чтобы проверить конфигурацию компонента AUTOSAR. Если сообщается об ошибках, устраните их и повторите проверку.
Вкладка Функции (Functions) редактора Сопоставления кода (Code Mappings) поддерживает моделирование исполняемых объектов (runnables) AUTOSAR в Simulink. После использования словаря AUTOSAR для создания исполняемых таблиц AUTOSAR и событий AUTOSAR, реализующих аспекты внутреннего поведения в компоненте AUTOSAR, откройте редактор Сопоставления кода. Используйте вкладку Функции (Functions), чтобы сопоставить функции точки входа Simulink с исполняемыми таблицами AUTOSAR.
Дополнительные сведения см. в разделе Настройка Runnables и событий AUTOSAR.
Вкладка Функции (Functions) редактора Сопоставления кода (Code Mappings) сопоставляет каждую функцию точки входа Simulink с возможностью выполнения AUTOSAR. Нажмите кнопку Обновить (Update),
чтобы загрузить или обновить функции точек входа Simulink в модели.
На вкладке Функции можно выполнить следующие действия.
Сопоставьте функцию точки входа Simulink, выбрав функцию точки входа, а затем выбрав значение меню для выполняемого AUTOSAR из списка для компонента AUTOSAR.

Укажите методы адреса программного обеспечения (SwAddrMethods) для кода выполняемой функции и внутренних данных. При указании SwAddrMethod имена, генерация кода использует имена, чтобы сгруппировать выполняемые функции и определения данных в разделах памяти. Дополнительные сведения см. в разделе Настройка метода SwAddrMethod.
Определить SwAddrMethods для выполняемой функции выберите соответствующую функцию точки входа. Инспектор свойств отображает атрибуты кода SwAddrMethod и Internal Data SwAddrMethod для выбранной функции. В инспекторе свойств выберите SwAddrMethod имена допустимых значений, перечисленных для каждого свойства.

Создание дополнительных SwAddrMethod имена в компоненте, используйте режим просмотра AUTOSAR Dictionary, SwAddrMethods. Дополнительные сведения см. в разделе Настройка методов AUTOSAR SwAddrMethods.
Примечание
Создание кода для выполняемых внутренних данных SwAddrMethods требует установки опции конфигурации модели Code Generation > Interface > Generate separent internal data per entry-point function (Создание кода > Интерфейс > Генерировать отдельные внутренние данные для каждой функцииGroupInternalDataByFunctionКому on.
Вкладки Inports и Outports редактора Code Mappings поддерживают моделирование связи отправитель-получатель (S-R) AUTOSAR в Simulink. После использования словаря AUTOSAR для создания в модели портов AUTOSAR S-R, интерфейсов S-R и элементов данных S-R откройте редактор сопоставления кодов. Вкладки Inports и Outports используются для сопоставления корневых входов и выходов Simulink с портами-получателями и отправителями AUTOSAR и элементами данных AUTOSAR S-R.
Дополнительные сведения см. в разделах Настройка связи отправитель-получатель AUTOSAR и Настройка связи отправитель-получатель из очереди AUTOSAR.
Вкладка Inports редактора Code Mappings сопоставляет каждый корневой порт Simulink с портом приемника AUTOSAR и элементом данных интерфейса S-R. На закладке Inports можно выполнить следующие действия.
Сопоставьте входной порт Simulink, выбрав входной порт, а затем выберите значения меню для порта AUTOSAR и элемента AUTOSAR из списка для компонента AUTOSAR.
Выберите режим доступа к данным AUTOSAR для порта: ImplicitReceive, ExplicitReceive, ExplicitReceiveByVal, QueuedExplicitReceive, ErrorStatus, IsUpdated, EndToEndRead, или ModeReceive.

При выборе порта ввода инспектор свойств отображает дополнительные атрибуты спецификации связи портов (ComSpec).
Для портов приемника, не поставленных в очередь AUTOSAR, можно изменить атрибуты ComSpec AliveTimeout, HandleNeverReceived, и InitValue.
Для портов приемника в очереди можно изменить атрибут ComSpec QueueLength.
Дополнительные сведения см. в разделе Настройка ComSpecs порта отправителя-получателя AUTOSAR.

Вкладка Outports редактора Code Mappings сопоставляет каждый корневой порт Simulink с портом отправителя AUTOSAR и элементом данных интерфейса S-R. На вкладке «Выходы» можно выполнить следующие действия.
Сопоставьте выходной порт Simulink, выбрав выходной порт, а затем выберите значения меню для порта AUTOSAR и элемента AUTOSAR.
Выберите режим доступа к данным AUTOSAR для порта: ImplicitSend, ImplicitSendByRef, ExplicitSend, QueuedExplicitSend, EndToEndWrite, или ModeSend.

При выборе исходящего порта, который сопоставляется с портом отправителя, не поставленным в очередь AUTOSAR, инспектор свойств отображает дополнительные атрибуты спецификации связи портов (ComSpec). Можно изменить атрибут ComSpec InitValue. Дополнительные сведения см. в разделе Настройка ComSpecs порта отправителя-получателя AUTOSAR.

На вкладке Параметры (Parameters) редактора Сопоставления кодов (Code Mappings) можно сопоставить параметры рабочего пространства модели Simulink с параметрами AUTOSAR для калибровки во время выполнения AUTOSAR. Примеры параметров рабочей области модели, которые можно сопоставить, включают:
Объекты параметров Simulink
Объекты таблицы поиска Simulink
Объекты точки останова Simulink
Сопоставляя объекты таблицы поиска и точки останова с параметрами калибровки AUTOSAR, можно моделировать параметры AUTOSAR для интегрированных и распределенных поисков. Дополнительные сведения см. в разделе Настройка таблиц поиска для измерений и калибровки AUTOSAR.
После создания параметров рабочего пространства модели, например, с помощью Проводника моделей, откройте редактор Сопоставления кодов (Code Mappings) и перейдите на вкладку Параметры (Parameters). Выберите параметры рабочего пространства модели Simulink и сопоставьте их с:
Внутренние параметры компонента AUTOSAR, такие как постоянная память, общие параметры или параметры экземпляра.
Параметры на основе портов AUTOSAR, используемые компонентами приемника параметров для доступа на основе портов к данным параметров.
Дополнительные сведения см. в разделах Настройка постоянной памяти AUTOSAR, Настройка общих или индивидуальных параметров AUTOSAR и Настройка параметров порта AUTOSAR для связи с компонентом параметров.
На вкладке Параметры (Parameters) перечислены все параметры рабочего пространства модели Simulink, которые можно сопоставить с параметром AUTOSAR. На вкладке Параметры:
Если параметр рабочей области модели Simulink не настроен в качестве аргумента модели (то есть не является уникальным для каждого экземпляра многоэкземплярной модели), можно сопоставить параметр, выбрав его, а затем выбрав значение меню для типа параметра AUTOSAR. Для этого рабочего процесса допустимыми типами параметров являются ConstantMemory, SharedParameter, или Auto. Чтобы принять значения по умолчанию для сопоставления программного обеспечения, укажите Auto.
Например, вот вкладка Параметры (Parameters), например модель autosar_swc_counter.

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

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

| Признак | Цель |
|---|---|
Конст (ConstantMemory только) | Укажите, следует ли включать квалификатор типа C const в сгенерированном коде для параметра AUTOSAR. Дополнительные сведения см. в разделе Определение квалификаторов типа C для статической и постоянной памяти AUTOSAR. |
Волатильный (ConstantMemory только) | Укажите, следует ли включать квалификатор типа C volatile в сгенерированном коде для параметра AUTOSAR. Дополнительные сведения см. в разделе Определение квалификаторов типа C для статической и постоянной памяти AUTOSAR. |
AdditiveNativeTypeQualifier (ConstantMemory только) | Укажите квалификатор дополнительного собственного типа AUTOSAR для включения в созданный код параметра AUTOSAR. Дополнительные сведения см. в разделе Определение квалификаторов типа C для статической и постоянной памяти AUTOSAR. |
| SwAddrMethod | Выберите SwAddrMethod из имен, перечисленных как допустимые для параметра AUTOSAR. При создании кода используется SwAddrMethod имя для группирования параметров AUTOSAR в разделе памяти для доступа средствами измерений и калибровки. Дополнительные сведения см. в разделе Настройка метода SwAddrMethod. |
| SwCalibrationAccess | Укажите способ доступа инструментов измерения и калибровки к параметру AUTOSAR. Допустимые значения доступа включают ReadOnly, ReadWrite, и NotAccessible. Дополнительные сведения см. в разделе Настройка SwCalibrationAccess. |
| DisplayFormat | Укажите формат отображения параметра AUTOSAR. Спецификации формата отображения AUTOSAR управляют шириной и точностью отображения данных измерений и калибровки. Дополнительные сведения см. в разделе Настройка DisplayFormat. |
Порт (PortParameter только) | Укажите имя порта приемника параметров, настроенного в словаре AUTOSAR. |
Элемент данных (PortParameter только) | Укажите имя элемента данных интерфейса параметра, настроенного в словаре AUTOSAR. |
На вкладке Хранилища данных редактора Сопоставления кода можно сопоставить блоки памяти хранилища данных Simulink переменным AUTOSAR для калибровки во время выполнения AUTOSAR. После создания блоков памяти хранилища данных в модели откройте редактор Сопоставления кодов (Code Mappings) и перейдите на вкладку Хранилища данных (Data Stores). Выберите хранилища данных и сопоставьте их с переменными AUTOSAR, такими как память типа AUTOSAR для каждого экземпляра или статическая память AUTOSAR.
Дополнительные сведения см. в разделах Настройка памяти AUTOSAR для каждого экземпляра и Настройка статической памяти AUTOSAR.
На вкладке Хранилища данных перечислены все хранилища данных, которые можно сопоставить переменной AUTOSAR. Вы можете:
Сопоставьте хранилище данных Simulink, выбрав хранилище данных, а затем выберите значение меню для типа переменной AUTOSAR: ArTypedPerInstanceMemory, StaticMemory, или Auto. Чтобы принять значения по умолчанию для сопоставления программного обеспечения, укажите Auto.
Например, вот вкладка Локальные хранилища данных, например модель autosar_bsw_sensor1.

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

| Признак | Цель |
|---|---|
| ShortName | Укажите краткое имя переменной AUTOSAR. Если не указано, экспорт ARXML создает короткое имя. |
Волатильный (StaticMemory только) | Укажите, следует ли включать квалификатор типа C volatile в сгенерированном коде для переменной AUTOSAR. Дополнительные сведения см. в разделе Определение квалификаторов типа C для статической и постоянной памяти AUTOSAR. |
AdditiveNativeTypeQualifier (StaticMemory только) | Укажите квалификатор дополнительного собственного типа AUTOSAR для включения в созданный код переменной AUTOSAR. Дополнительные сведения см. в разделе Определение квалификаторов типа C для статической и постоянной памяти AUTOSAR. |
NeedsNVRAMAccess (ArTypedPerInstanceMemory только) | Укажите, требуется ли для переменной AUTOSAR доступ к энергонезависимой оперативной памяти процессора. Выбрать true настройка памяти каждого экземпляра в качестве зеркального блока для конкретного блока NVRAM. |
| SwAddrMethod | Выберите SwAddrMethod имя из имен, перечисленных как допустимые для переменной AUTOSAR. При создании кода используется SwAddrMethod имя для группирования переменных AUTOSAR в разделе памяти для доступа с помощью инструментов измерения и калибровки. Дополнительные сведения см. в разделе Настройка метода SwAddrMethod. |
| SwCalibrationAccess | Укажите способ доступа инструментов измерения и калибровки к переменной AUTOSAR. Допустимые значения доступа включают ReadOnly, ReadWrite, и NotAccessible. Дополнительные сведения см. в разделе Настройка SwCalibrationAccess. |
| DisplayFormat | Укажите формат отображения переменной AUTOSAR. Спецификации формата отображения AUTOSAR управляют шириной и точностью отображения данных измерений и калибровки. Дополнительные сведения см. в разделе Настройка DisplayFormat. |
На вкладке Signals/States редактора Code Mappings можно выполнить следующие действия:
Отображение сигналов и состояний блока Simulink в переменные AUTOSAR для калибровки во время выполнения AUTOSAR.
Выборочно добавлять или удалять сигналы блоков из отображения сигналов компонентов AUTOSAR.
В редакторе сопоставлений кодов для отображения доступны состояния блоков Simulink, соответствующие блокам владельцев состояний.
Чтобы сделать сигналы блока Simulink доступными для отображения, используйте кнопку редактора сопоставлений кода или ключ модели:
В холсте модели выберите один или несколько сигналов. Откройте редактор сопоставлений кодов на вкладке «Сигналы/состояния» и нажмите кнопку «Добавить».![]()
В холсте модели выберите сигнал. Наведите курсор на отображаемое многоточие и выберите параметр модели Добавить выбранные сигналы к отображениям кода.
Либо вызовите функцию MATLAB ®addSignal.
После выборочного добавления блочных сигналов к отображению сигналов компонентов AUTOSAR откройте редактор сопоставлений кодов и выберите вкладку «Сигналы/состояния». Выберите сигналы и состояния блоков и сопоставьте их с переменными AUTOSAR, такими как AUTOSAR-типизированная память для каждого экземпляра или AUTOSAR-статическая память.
Дополнительные сведения см. в разделах Настройка памяти AUTOSAR для каждого экземпляра и Настройка статической памяти AUTOSAR.
На вкладке «Signals/States» (Сигналы/состояния) в узле «Signals» (Сигналы) отображается список каждого сигнала блока Simulink, который можно сопоставить переменной AUTOSAR. Можно отобразить сигнал блока Simulink, выбрав сигнал, а затем выбрав значение меню для типа переменной AUTOSAR: ArTypedPerInstanceMemory, StaticMemory, или Auto. Чтобы принять значения по умолчанию для сопоставления программного обеспечения, укажите Auto.
Например, вот закладка Сигналы/Состояния, например модель autosar_swc_counter.

На вкладке «Сигналы/Состояния» в узле «Состояния» отображается список всех конфигурируемых состояний блока Simulink, которые можно сопоставить переменной AUTOSAR. Можно сопоставить состояние блока Simulink, выбрав состояние, а затем выбрав значение меню для типа переменной AUTOSAR: ArTypedPerInstanceMemory, StaticMemory, или Auto. Чтобы принять значения по умолчанию для сопоставления программного обеспечения, укажите Auto.
При сопоставлении сигнала или состояния с типом переменной, отличным от Autoможно использовать инспектор свойств для просмотра или изменения других атрибутов кода и калибровки переменной.

| Признак | Цель |
|---|---|
| ShortName | Укажите краткое имя переменной AUTOSAR. Если не указано, экспорт ARXML создает короткое имя.
|
Волатильный (StaticMemory только) | Укажите, следует ли включать квалификатор типа C volatile в сгенерированном коде для переменной AUTOSAR. Дополнительные сведения см. в разделе Определение квалификаторов типа C для статической и постоянной памяти AUTOSAR. |
AdditiveNativeTypeQualifier (StaticMemory только) | Укажите квалификатор дополнительного собственного типа AUTOSAR для включения в созданный код переменной AUTOSAR. Дополнительные сведения см. в разделе Определение квалификаторов типа C для статической и постоянной памяти AUTOSAR. |
| SwAddrMethod | Выберите SwAddrMethod имя из имен, перечисленных как допустимые для переменной AUTOSAR. При создании кода используется SwAddrMethod имя для группирования переменных AUTOSAR в разделе памяти для доступа с помощью инструментов измерения и калибровки. Дополнительные сведения см. в разделе Настройка метода SwAddrMethod. |
| SwCalibrationAccess | Укажите способ доступа инструментов измерения и калибровки к переменной AUTOSAR. Допустимые значения доступа включают ReadOnly, ReadWrite, и NotAccessible. Дополнительные сведения см. в разделе Настройка SwCalibrationAccess. |
| DisplayFormat | Укажите формат отображения переменной AUTOSAR. Спецификации формата отображения AUTOSAR управляют шириной и точностью отображения данных измерений и калибровки. Дополнительные сведения см. в разделе Настройка DisplayFormat. |
Чтобы удалить сигналы блока Simulink из отображения сигналов компонента AUTOSAR, используйте кнопку редактора сопоставлений кодов или ключ модели:
На холсте модели или на вкладке «Сигналы/состояния» выберите один или несколько сигналов. На вкладке Signals/States (Сигналы/Состояния) нажмите кнопку Remove (Удалить).![]()
В холсте модели выберите сигнал. Наведите курсор на отображаемое многоточие и выберите параметр модели Удалить выбранные сигналы из сопоставлений кода.
В качестве альтернативы вызовите функцию MATLAB. removeSignal.
Вкладка Передачи данных (Data Transfers) редактора Сопоставления кодов (Code Mappings) поддерживает моделирование межпроходных переменных (IRV) AUTOSAR в Simulink. После использования словаря AUTOSAR для создания IRV AUTOSAR, которые соединяют выполняемые объекты и реализуют аспекты внутреннего поведения в компоненте AUTOSAR, откройте редактор Сопоставления кода. Вкладка «Передачи данных» используется для сопоставления строк переноса данных Simulink с IRV AUTOSAR.
Дополнительные сведения см. в разделе Поведение компонентов модели AUTOSAR. Иллюстрации использования IRV с rate-based и function-call-runnables см. в примерах моделей в Model AUTOSAR Software Components.
На вкладке «Передачи данных» редактора «Сопоставления кодов» каждая строка передачи данных Simulink сопоставляется с IRV AUTOSAR. Нажмите кнопку Обновить
(Update), чтобы загрузить или обновить передачу данных Simulink в модели.
На вкладке «Передачи данных» можно отобразить линию передачи данных Simulink, выбрав имя сигнала, а затем значения меню для режима доступа IRV (Implicit или Explicit) и имя IRV AUTOSAR, среди перечисленных для компонента AUTOSAR.
Например, вот закладка Перенос данных, например, модель autosar_swc_slfcns.

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

Для компонента AUTOSAR можно настроить квалификаторы типа C для настройки сгенерированного кода C, совместимого с AUTOSAR, для статической памяти AUTOSAR и постоянной памяти AUTOSAR. Например, можно применить квалификаторы типа C, такие как const или volatile для управления оптимизацией компилятора.
В модели AUTOSAR используйте редактор Сопоставления кодов (Code Mappings), чтобы настроить квалификаторы типа C для сигналов модели, состояний, хранилищ данных и параметров, которые сопоставляются с AUTOSAR (статическая память) или AUTOSAR (условная память). При построении модели классификаторы типов экспортируются в файлы ARXML и создается код C, совместимый с AUTOSAR, который использует квалификаторы типов.
Например, в редакторе «Сопоставления кодов» на вкладке «Сигналы/Состояния» предположим, что вы сопоставляете сигнал с StaticMemory. Выберите сигнал для отображения атрибутов кода в инспекторе свойств.

Если установить 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.
Блок AUTOSAR предоставляет функции для управления упаковкой данных по умолчанию, используемой для внутренних переменных в сгенерированном коде для модели компонента AUTOSAR. Можно указать, что внутреннее хранилище данных, данные сигнала и данные состояния упакованы:
С упаковкой или без упаковки в структуру
С частной или публичной видимостью
Функции getInternalDataPackaging и setInternalDataPackaging возвращает и задает настройку упаковки данных по умолчанию, используемую для внутренних хранилищ данных, сигналов и состояний в сгенерированном коде для модели компонента AUTOSAR. Допустимые значения параметров:
Default - Примите внутреннюю упаковку данных по умолчанию, предоставленную программным обеспечением. Использовать Default для многоэкземплярных моделей и подмоделей, на которые ссылаются модели компонентов AUTOSAR.
PrivateGlobal - Пакет внутренних переменных данных без struct и сделать его частным (видимым только для ).model.c
PrivateStructure - Упаковка внутренних переменных данных в struct и сделать его частным (видимым только для ).model.c
PublicGlobal - Пакет внутренних переменных данных без struct и предать его гласности (extern объявление в ).model.h
PublicStructure - Упаковка внутренних переменных данных в struct и предать его гласности (extern объявление в ).model.h
В этом примере изменяется настройка упаковки данных по умолчанию, используемая для внутренних переменных в сгенерированном коде для модели компонента AUTOSAR. Сначала возвращается текущая внутренняя настройка упаковки данных для модели. Затем он устанавливает внутреннюю упаковку данных так, что генератор кода упаковывает внутренние переменные данные в struct и делает его частным.
hModel = 'autosar_swc'; addpath(fullfile(matlabroot,'/examples/autosarblockset/main')); open_system(hModel); slMap = autosar.api.getSimulinkMapping(hModel); pkgSetting1 = getInternalDataPackaging(slMap) setInternalDataPackaging(slMap,'PrivateStructure') pkgSetting2 = getInternalDataPackaging(slMap)
pkgSetting1 =
'Default'
pkgSetting2 =
'PrivateStructure'Если для упаковки данных установлено значение PrivateGlobal или PrivateStructure, построение модели создает файл заголовка , даже если параметру конфигурации модели File packaging format (Embedded Coder) присвоено значение model_private.hCompact.
Если для модели AUTOSAR задана опция конфигурации модели Генерировать отдельные внутренние данные для каждой функции точки входа (Embedded Coder), группировка внутренних данных на основе задач переопределяет настройку упаковки внутренних данных AUTOSAR. Однако параметр AUTOSAR определяет общую или частную видимость создаваемых внутренних групп данных.
Дополнительные сведения см. в разделе getInternalDataPackaging и setInternalDataPackaging справочные страницы.