TI中文支持网
TI专业的中文技术问题搜集分享网站

LAUNCHXL-CC26X2R1: simple_peripheral_oad_onchip为什么有两个NV,分别用来做什么?

Part Number:LAUNCHXL-CC26X2R1

simple_peripheral工程 NV范围起始:0x48000大小:0x4000(2page)

simple_peripheral_oad_onchip为什么有两个NV,分别用来做什么?

Nick Sun:

您好,

感谢您的提问,我需要查看一下这个问题,有结论及时联系您。

,

Nick Sun:

您好,

CONFIG_NVSINTERNAL1(Region Base:0x0),存储的用户应用程序(包括原工程和后期oad的工程),BIM查找该地址并启动应用程序。

CONFIG_NVSINTERNAL(Region Base:0x34000),0x34000 到 0x38000 这部分是默认保留用于非易失性内存存储。

默认simple_peripheral对于双映像配置来说太大,因此使用了persistent_app。

simple_peripheral_oad_onchip 是使用 persistent 镜像更新active镜像区域的示例,您可以查看 Application Execution switching section部分:

On power up, BIM will pass execution to the user application. When user application wants to upload a new image, it has to switch the execution to the persistent application. (开机时,BIM 会将执行传递给用户应用程序。什么时候用户应用程序想要上传新图像,它必须将执行切换到持久性应用程序。) 

您可以参看这篇帖子:(+) CC2652R: Compiling into NVS regions – Zigbee & Thread forum – Zigbee & Thread – TI E2E support forums

,

疾风亦有归途:

Nick Sun said:默认simple_peripheral对于双映像配置来说太大,因此使用了persistent_app。

persistent_app工程的NVS也是0x34000 到 0x38000 这块区域吗?

,

Nick Sun:

您好,

上述回复参考帖子中有提到:BIM finds valid application at 0x38000 (persistent)

persistent_app是从0x38000地址开始的。

,

疾风亦有归途:

只刷写simple_peripheral_oad_onchip和BIM_onchip,将simple_peripheral_oad_onchip的CONFIG_NVSINTERNAL(Region Base:0x34000-0x38000)修改为 (Region Base:0x50000-0x52000),NVS读写(osal_snv_write)失败?

NVS的划分必须紧靠应用程序吗?

,

Nick Sun:

您好,

不只是要改这个,之前也有回复您,cmd文件也要改,另外只用一页NV的话,宏定义也要改。

参考:https://dev.ti.com/tirex/explore/content/simplelink_cc13xx_cc26xx_sdk_7_10_01_24/docs/ble5stack/ble_user_guide/html/ble-stack-common/flash_memory-cc13xx_cc26xx.html#non-volatile-on-chip-multi-page-nvocmp-driver

所以我们不是很建议乱改。

,

疾风亦有归途:

cmd需要改哪些?

我修改了#define IMG_A_FLASH_START          0x00028000

,

Nick Sun:

您好,

看到您之前的帖子(LAUNCHXL-CC26X2R1: 修改oad_onchip工程替换persistent_app – 蓝牙论坛 – Bluetooth – E2ETm 设计支持 (ti.com))有提到:

所有相关项目的所有链接器命令文件都应该更新(包括simple_peripheral_load_onchip)。您所做的更改尚未经过TI的测试,我们只能为这些更改提供有限的支持。

我们建议您可以将问题发帖至E2E英文论坛(e2e.ti.com),产线工程师专家会针对性解决您的需求。

赞(0)
未经允许不得转载:TI中文支持网 » LAUNCHXL-CC26X2R1: simple_peripheral_oad_onchip为什么有两个NV,分别用来做什么?
分享到: 更多 (0)