AUTOSAR Memory Services - NvM:(二)NVRAMManager(NvM)功能、API、使用介绍与整理

 文章参考自AUTOSAR Standards:AUTOSAR Classic Platform

相关文章:Specification of NVRAM Manager

一、NVM功能介绍

NvM模块为NV数据的管理和维护(init/read/write/control)提供所需的同步/异步服务

二、NVM-API介绍与整理

1、同步请求API

(1)NvM_Init

void NvM_Init (
    const NvM_ConfigType* ConfigPtr
)
  • 描述:初始化NvM模块
  • ConfigPtr:NVM模块的设置集

(2)NvM_SetDataIndex

Std_ReturnType NvM_SetDataIndex (
    NvM_BlockIdType BlockId,
    uint8 DataIndex
)
  • 描述:设置NVRAM Block 的数据索引
  • BlockId:对应NVRAM Block的Block ID,一个NVRAM Block块只有1个Block ID
  • DataIndex:NV/ROM Block的索引位置
  • 返回值:
    • E_OK:设置成功
    • E_NOT_OK:发生错误

 (3)NvM_GetDataIndex

Std_ReturnType NvM_GetDataIndex (
    NvM_BlockIdType BlockId,
    uint8* DataIndexPtr
)
  • 描述:获取当前NVRAM Block的数据索引
  • BlockId:对应NVRAM Block的Block ID,一个NVRAM Block块只有1个Block ID
  • DataIndexPtr:当前数据集索引的位置的指针
  • 返回值:
    • E_OK:设置成功
    • E_NOT_OK:发生错误

(4)NvM_SetBlockProtection

Std_ReturnType NvM_SetBlockProtection (
    NvM_BlockIdType BlockId,
    boolean ProtectionEnabled
)
  •  描述:设置或者重置NV块写保护服务
  • BlockId:对应NVRAM Block的Block ID,一个NVRAM Block块只有1个Block ID
  • ProtectionEnabled:写保护开关是否打开【TRUE / FALSE】
  • 返回值:
    • E_OK:设置成功
    • E_NOT_OK:发生错误

(5)NvM_GetErrorStatus

Std_ReturnType NvM_GetErrorStatus (
    NvM_BlockIdType BlockId,
    NvM_RequestResultType* RequestResultPtr
)
  • 描述:读取块相关的错误或者状态信息
  • BlockId:对应NVRAM Block的Block ID,一个NVRAM Block块只有1个Block ID
  • RequestResultPtr:指向存储请求结果
  • 返回值:
    • E_OK:设置成功
    • E_NOT_OK:发生错误

存储请求结果相关定义:

/**
 * Global private array with results of last request for each NVRAM-block.
 *
 * Request results are part
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不吃鱼的猫丿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值