This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2340R5:在 CC2340R53 上的 OAD 期间闪存分区损坏

Guru**** 2688575 points

Other Parts Discussed in Thread: SYSCONFIG

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1599565/cc2340r5-flash-partition-corruption-during-oad-on-cc2340r53

器件型号: CC2340R5
主题: SysConfig 中讨论的其他器件

尊敬的团队:
 
我们正在产品中使用 CC2340R53、并按照产品要求、创建了一个专门用于存储器件配置数据的 2KB(0x800 字节)闪存分区。
我们更新了链接器 (.cmd) 文件以及 SysConfig 以适应此自定义分区。
 
分区在正常情况下工作正常。 但是、当 OAD 更新正在进行且器件断电时、我们偶尔会观察到器件配置分区损坏。
此问题间歇性出现、仅在 OAD 过程中断电的情况下出现。
 
以下是所有闪存分区的详细信息、可供参考:
 
MCU 引导:
 START = 0x00000
 END = 0x03FFF
 
持久性应用程序:
 起始值= 0x04000
 END = 0x36FFF
 
用户应用程序:
 START = 0x37000
 END = 0x7B7FF
 
器件配置分区:
 START = 0x7B800
 END = 0x7BFFF
 
NVS:
 START = 0x7C000
 END = 0x7FFFF

我们使用的 SDK 版本是 SimpleLink 低功耗 F3 SDK(8.10.01.02 版)。
 
您能否帮助我们了解这种损坏的原因、并建议在 OAD 过程中保护或处理此配置分区的正确方法?
 
谢谢、
Vatsal
 
 
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Vatsal、

    执行此 OAD 过程时、是仅将配置数据或用户应用作为目标? 最后一个没有损坏? 我认为预计会因断电而导致这种类型的损坏、您需要实施一种机制、允许您的应用在 OAD 过程结束后或器件再次启动后检查更新的配置映像的完整性、该机制可能在映像标头中采用 CRC 形式。 如果数据损坏、则可以回滚到旧版本的数据(备份)和/或再次尝试执行 OAD 过程。  

    希望这有所帮助。

    David。