单片机固件自更新的一个方法!

💡 原文中文,约4100字,阅读约需10分钟。
📝

内容提要

本文分析了汽车软件中的Boot程序用于刷新应用程序的五种自更新方式的优缺点,包括SB更新CB、RAM+Flash Reboot更新、RAM+RAM ReBoot更新、借助App程序Flash空间更新和借助额外Flash空间更新。工程师需要综合考虑软件架构、资源和成本来选择适合的自刷新方法。

🎯

关键要点

  • 汽车软件中的Boot程序用于刷新应用程序,客户项目中Boot是需求的一部分。
  • 整车厂对应用程序刷新有规范,但对Boot自刷新没有相关规范。
  • 本文分析了五种Boot自更新方式的优缺点。
  • 方式一:SB更新CB,优点是逻辑结构简单,缺点是需要较大Flash空间和复杂的结构。
  • 方式二:RAM+Flash Reboot更新,优点是不需要额外Flash空间,缺点是掉电后可能导致控制器瘫痪。
  • 方式三:RAM+RAM ReBoot更新,优点是减少了一步刷新,缺点是需要更大的RAM空间。
  • 方式四:借助App程序Flash空间,优点是不需要额外资源,缺点是步骤繁多,整体刷新时间较长。
  • 方式五:借助额外Flash空间,优点是不破坏App程序,缺点是需要额外的Flash空间。
  • 工程师需综合考虑软件架构、资源和成本选择适合的自刷新方法。
  • 附录中讨论了Boot有效性标志与启动地址的关系及对策,降低刷死风险。
➡️

继续阅读