TI中文支持网
TI专业的中文技术问题咨询交流网站

CC2642R: osal snv存储数据疑问

Part Number:CC2642ROther Parts Discussed in Thread:UNIFLASH

请教一下:

1、如果在.syscfg里配置NVS成1page或2page,那么,SNV_ID最后一个ID,对应flash的绝对位置是不是不一样?

2、如果前面那些ID没有使用,只使用最后一个ID,是不是数据也被存储在NVS划分的flash最前面呢?

3、用ccs下载程序,或者用Flash Programmer 2或UniFlash 7.0.0烧录程序,那么,不管旧板还是新板,都会先全芯片擦除,对吗?这样的话,程序首次上电运行的时候去读SNV_ID,读得的值应该是0xff,对吗?为何我读出的是0x00呢?

#define OTA_SNV_ID       0x11f

Task_sleep(900000);
osal_snv_read(OTA_SNV_ID,0x02,ValidSign.bytes);
PRINTF( "ValidSign.bytes[0]=%d\n",ValidSign.bytes[0]);
PRINTF("ValidSign.bytes[1]=%d\n",ValidSign.bytes[1]);
if(ValidSign.word[0]==0xffff)
{//first power up

}

打印结果是ValidSign.bytes[0]=0
ValidSign.bytes[1]=0

不知道哪里搞错了

Cherry Zhou:

您好我们已收到您的问题并升级到英文论坛寻求帮助,如有答复将尽快回复您。谢谢!

,

Janet xu:

多谢。第3个问题我自己已经解决了,前面2个问题作为深入了解cc2642芯片snv功能,如果有你们官方权威答案更好了:)————也想知道第3个问题官方答案和我自己摸索出来的是不是一样,这样做产品保险点

,

Cherry Zhou:

好的,应该下个工作日给到您前两个问题的答复哈。

,

Janet xu:

不急,多谢

,

Cherry Zhou:

Janet xu 说:1、如果在.syscfg里配置NVS成1page或2page,那么,SNV_ID最后一个ID,对应flash的绝对位置是不是不一样?

您好,NV ID 不是严格的位置,而是严格的数据段。 换句话说,更改了分配给 NVS 的存储器区域、页数甚至位置,都不会影响 NV ID。

Janet xu 说:2、如果前面那些ID没有使用,只使用最后一个ID,是不是数据也被存储在NVS划分的flash最前面呢?

NVS 驱动程序负责将对应于每个 NVS ID 的数据存储在物理存储器位置。 存储器地址和 NV ID 之间的对应关系是根据数据注册顺序来的,而不是根据 NV ID 的值进行的。

详情请参阅以下文档:

https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_Bluetooth_flash_memory-cc13xx_cc26xx.html

赞(0)
未经允许不得转载:TI中文支持网 » CC2642R: osal snv存储数据疑问
分享到: 更多 (0)

© 2022 TI中文支持网   网站地图 鲁ICP备2022002796号-1