主要内容

mapState

Simulink 模块状态映射到 AUTOSAR 变量

说明

mapState(slMap,slStateOwnerBlock,'',arVarType) 将与状态所有者模块 slStateOwnerBlock 关联的 Simulink® 模块状态映射到类型为 arVarType 的 AUTOSAR 变量,用于 AUTOSAR 运行时标定。AUTOSAR 变量类型包括 ArTypedPerInstanceMemoryStaticMemory

示例

mapState(slMap,slStateOwnerBlock,slState,arVarType) 将与状态所有者模块 slStateOwnerBlock 关联的 Simulink 模块状态 slState 映射到类型为 arVarType 的 AUTOSAR 变量。仅对具有多个状态的模块指定非空 slState 参量。

mapState(slMap,slStateOwnerBlock,slState,arVarType,Name,Value) 通过使用一个或多个 Name,Value 对组参量为 AUTOSAR ArTypedPerInstanceMemoryStaticMemory 变量指定其他属性。

示例

全部折叠

设置示例模型 autosar_swc_counter 中 Unit Delay 模块 X 的 Simulink 模块状态的 AUTOSAR 映射和属性信息。状态所有者模块有一个状态。

hModel = 'autosar_swc_counter';
openExample(hModel);
slMap = autosar.api.getSimulinkMapping(hModel);

mapState(slMap,'autosar_swc_counter/X','','ArTypedPerInstanceMemory',...
    'SwCalibrationAccess','ReadWrite')
arMappedTo = getState(slMap,'autosar_swc_counter/X')
arValue = getState(slMap,'autosar_swc_counter/X','','SwCalibrationAccess')
arMappedTo =
    'ArTypedPerInstanceMemory'

arValue =
    'ReadWrite'

输入参数

全部折叠

模型的 Simulink 到 AUTOSAR 映射信息,以前由 slMap = autosar.api.getSimulinkMapping(model) 返回。model 是一个表示模型名称的句柄、字符向量或字符串标量。

示例: slMap

要为其设置 AUTOSAR 映射信息的 Simulink 状态所有者模块的句柄或路径。

示例: 'autosar_swc_counter/X'

与状态所有者模块 slStateOwnerBlock 关联的 Simulink 状态的名称。仅对具有多个状态的模块指定非空状态名称。如果 slState 为空,则该函数设置模块中第一个状态的映射信息。

示例: ''

要将指定的 Simulink 模块状态映射到的 AUTOSAR 变量的类型。有效的 AUTOSAR 变量类型包括 ArTypedPerInstanceMemoryStaticMemoryAuto。要接受软件映射默认值,请指定 Auto

示例: 'ArTypedPerInstanceMemory'

名称-值参数

全部折叠

将可选参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。

在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: 'SwCalibrationAccess','ReadWrite' 指定该变量在进行运行时标定时具有读写访问权限。

指定 AUTOSAR 变量的显示格式。AUTOSAR 显示格式设定控制标定和测量数据的宽度和精度显示。有关详细信息,请参阅Configure DisplayFormat

示例: 'DisplayFormat','%2.6f'

指定是否在为 AUTOSAR 变量生成的代码中包含 C 类型限定符 volatile

示例: 'IsVolatile','true'

(可选)指定在为 AUTOSAR 变量生成的代码中要包含的 AUTOSAR 附加原生类型限定符。

示例: 'Qualifier','test_qualifier'

指定 AUTOSAR 变量的短名称。如果未指定,ARXML 导出会生成短名称,该名称基于状态名称(如果存在)。如果状态未指定,生成的短名称可能与模块名称不同。

示例: 'ShortName','PIM_X'

指定对 AUTOSAR 变量有效的 SwAddrMethod 名称。代码生成使用 SwAddrMethod 名称将 AUTOSAR 变量分组到一个内存段中,以供标定和测量工具访问。有关变量的有效 SwAddrMethod 值列表,请参阅代码映射编辑器中的信号/状态选项卡。有关详细信息,请参阅Configure SwAddrMethod

示例: 'SwAddrMethod','VAR'

指定标定和测量工具如何访问 AUTOSAR 变量。有效的访问值包括 ReadOnlyReadWriteNotAccessible。有关详细信息,请参阅Configure SwCalibrationAccess

示例: 'SwCalibrationAccess','ReadWrite'

指定 AUTOSAR 变量的标题。

示例: 'LongName','Position of Engine Throttle'

版本历史记录

在 R2018b 中推出