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.

[参考译文] TMS320F28388S:失效防护固件升级

Guru**** 2387080 points
Other Parts Discussed in Thread: TIDM-02011, C2000WARE
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1240400/tms320f28388s-fail-safe-firmware-upgrade

器件型号:TMS320F28388S
主题中讨论的其他器件:TIDM-02011C2000WARE

我正在尝试保留应用固件的冗余(备份)副本,以便在固件升级失败的情况下,设备可以切换回最后一个正常工作的固件。
例如
首次、使用固件存储在闪存扇区4 (主要)和固件升级的器件引导将写入闪存扇区8 (备份)。
第二次、器件使用存储在闪存扇区8的固件进行引导、固件升级将写入闪存扇区4。
此周期重复进行后续固件升级。


1)是否有应用说明或应用示例?
2)当使用主扇区引导器件时,如何将应用程序文件写入备份闪存扇区?
3)如何检测当前启动的闪存扇区?

谢谢

P·帕蒂尔

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

    Prashant,

    我们对此有一个参考设计、称为实时固件更新- 使用包含多个闪存组的 F28003x。

    该设计是 DigitalPowerSDK 中的 TIDM-02011。

    https://www.ti.com/tool/C2000WARE-DIGITALPOWER-SDK

    TIDM-02011、TIDUEY4有相应的用户指南。

    尽管本设计使用具有多个闪存组的器件、但其概念与您期望的概念仍然类似

    -擦除/编程闪存中与活动区域不同的区域

    -用于确定启动哪个固件版本的逻辑

    连同这个、我们还有一个针对单个闪存组器件(F28002x)的示例。

    C2000Ware 中包含以下路径:

    C2000Ware_4_03_00_00\driverlib\f28002x\examples\flash\ccs\flash_ex3_sci_flash_kernel.projectspec

    谢谢。

    Sira