主要内容

AUTOSAR NVRAM配置调用管理器服务

AUTOSAR经典平台,AUTOSAR标准定义了重要的服务作为基本的软件(BSW正在)在AUTOSAR运行时环境中运行(RTE)。例子包括诊断事件管理器提供的服务(民主党),函数抑制经理(鱼类)、NVRAM经理(NvM)。AUTOSAR RTE, AUTOSAR软件组件通常使用客户机-服务器或sender-receiver通信BSW正在服务的访问。

AUT万博1manbetxOSAR组件和服务的支持系统级建模,AUTOSAR BlocksetAUTOSAR基本软件模块提供了一个图书馆。建模组件调用的库包含预配置块AUTOSAR BSW正在BSW正在服务的服务和参考实现。信息使用的块模型AUTOSAR BSW正在客户端调用服务接口,明白了AUTOSAR基础软件服务调用模型

live-script模拟AUTOSAR BSW正在服务的例子,看到的例子模拟AUTOSAR基本的软件服务和运行时环境

更多信息建模软件组件访问AUTOSAR非易失性内存,明白了模型AUTOSAR非易失存储器

下面是一个示例配置客户端调用NvM AUTOSAR软件组件的服务接口。

  1. 打开一个模型配置为AUTOSAR代码生成。使用的库浏览器或通过输入块的名字在模型窗口中,NvM块添加到模型中。这个例子添加块NvMAdminCallerNvMServiceCaller一个可写的例子模型autosar_swc

  2. 打开每一块和检查参数,特别是操作。如果你选择了一个不同的操作,然后单击应用,软件更新块输入和输出匹配所选操作的参数。

    这个例子中改变了操作NvMServiceCaller块从GetDataIndexReadBlock。(使用的一个例子readBlock在节气门位置传感器实现中,看到的例子模拟AUTOSAR基本的软件服务和运行时环境)。的操作参数必须设置为一个指定的操作模式目前支持的模型。万博1manbetx操作的列表反映了当前支持的操作模式。万博1manbetx

    对于一些NvM操作,如ReadBlockWriteBlock块参数对话框参数规格参数。参数指定数据类型和尺寸信息数据的读或写操作,设置uint8 (1)默认情况下。

    • 指定一个多维数据类型,您可以使用数组语法,等int8 ([1 1;1 (1)

    • 指定一个结构化数据类型,您可以创建一个万博1manbetxSimulink.Parameter用一个数据对象,类型万博1manbetxSimulink.Bus对象,引用参数名称。

  3. 打开代码映射编辑器。更新模型万博1manbetx®AUTOSAR映射模型与仿真软件更改函数的调用者,单击万博1manbetx更新按钮。软件创建AUTOSAR客户端与服务之间的接口、操作和港口,每个模型和映射函数调用者一个AUTOSAR端端口和操作。万博1manbetx

    例如,对于NvMServiceCaller在这个例子中,的ReadBlock选择操作:

    • 该软件创建c接口NvMService,在NvMService,其支持的业万博1manbetx务。对于每个操作,参数提供只读属性。这里的参数NvMService操作ReadBlock显示在AUTOSAR字典。

    • 该软件创建一个客户端端口使用默认名称NvMService。与C-S-interface、操作和参数名称,客户端端口名称可以自定义。客户端端口映射到NvMService接口。

    • 映射编辑器的代码,函数调用者选项卡上,地图NvMService函数调用块AUTOSAR客户端口NvMService和AUTOSAR操作ReadBlock

  4. 可选地,构建模型并检查生成的C和ARXML代码。

    块对话框中的一步,如果你选择操作ReadBlockNvMServiceCaller块,代码生成需要添加到模型数据存储块。第一块外港连接到数据存储块写,并添加一个数据存储内存块。两块,指定数据存储名称答:例如:

    C代码包括客户端调用BSW正在服务,例如:

    / *功能性:“< Root > / NvMServiceCaller”* / Rte_Call_NvMService_ReadBlock (&rtDW.A);…/ *功能性:“< Root > / NvMAdminCaller”* / Rte_Call_NvMAdmin_SetBlockProtection(假);

    生成的RTE包括文件定义服务器操作调用点,等Rte_Call_NvMService_ReadBlock

    ARXML代码定义了服务操作BSW正在由组件调用服务器调用点,例如:

    < SERVER-CALL-POINTS >…< ASYNCHRONOUS-SERVER-CALL-POINT UUID = "……" > <字> SC_NvMService_ReadBlock < /字> < OPERATION-IREF > < CONTEXT-R-PORT-REF DEST = " R-PORT-PROTOTYPE " > /公司/动力系统/组件/ ASWC / NvMService < / CONTEXT-R-PORT-REF > < TARGET-REQUIRED-OPERATION-REF DEST = " CLIENT-SERVER-OPERATION " >AUTOSAR /服务/ NvM / NvMService / ReadBlock< / TARGET-REQUIRED-OPERATION-REF > < / OPERATION-IREF > <超时> 1 < /超时> < / ASYNCHRONOUS-SERVER-CALL-POINT > < / SERVER-CALL-POINTS >
  5. 模拟组件模型,创建一个包含组成,系统,或测试工具模型。包含模型,插入NvM的参考实现ReadBlockSetBlockProtection服务操作。

    AUTOSAR基本软件模块库提供了一个NVRAM服务组件块,它提供了参考NvM服务操作的实现。您可以手动将块插入包含组成,系统,或利用模型,通过创建一个自动插入块万博1manbetx仿真软件测试™利用模型。

    有关更多信息,请参见为模拟配置AUTOSAR基础软件服务实现模拟AUTOSAR基本的软件服务和运行时环境

另请参阅

||

相关的例子

更多关于