接着之前BSW专栏的内容讲,这里主要讲下如何去配置。
1.在RTE层创建一个NvComponent类型的SWC.
这里需要填写的参数有:
ARPackage: 选择内容保存的文件,最好一个swc单独一个文件。
ShortName: SWC的名称。
其他的内容可以暂时不填。
2.创建 Nv Data Interface.
点击绿色的+图标,添加NvData.
Short Name: Nv Data的名称。
Type: 数据类型,可以是uint8/uint16等,也可以数组,结构体类型。
Impl Policy:暂时不配置,不太清楚。
Init value: 初始值。
Sw Calibration Access: 选择是否支持标定,保持默认配置。
3.Nv Component中添加port.
需要添加的port有三个,ReadData, WriteData以及JobFinished。
Read Data, Write Data中reference的interface为上面创建的Nv Data interface.
JobFinished中reference的interface为NvMNotifyJobFinished.这里需要单独创建,参考NvM中生成的。
4.添加Runable
在IB中添加一个runable用于写数据到NvM中,Event为Data Recive event,表示当接收到数据,就调用NvM_WriteBlock写入数据。
port选择已经配置好的就可以。
4.创建NvBlock Descriptors.
右键点击Nv Component,创建Nv Desciptors.一个compnent可以创建多个Nv Desciptors。
这里需要配置的内容比较多,下面详细讲下:
Short Name: 模块名称。
RAM Block:这里和内Nv Data interface差不多,定义一个存储数据的全局变量。
ROM Block:储存初始值的全局变量,一般为const类型,NvM中数据无效时此值将被写入。
Nv Block Needs:根据实际需求配置。
Nv Block Data mappings: