单片机OTA升级中的A/B双分区的经典方案!

strongerHuang 2026-03-10 08:00

关注+星标公众,不错过精彩内容

来源 | 网络


OTA:Over-the-Air ,翻译过来叫空中下载,即远程升级的意思。


现在OTA升级已经成了很多智能家居、汽车电子、IoT 等嵌入式设备的必要功能,就连一些几块钱的电子产品,都具备了这个功能。


为了避免升级过程中断电、传输错误导致设备“变砖”,业内普遍采用 A/B 双分区机制。本文总结几种经典方案,并结合实际 MCU的特性,给出实现思路。

单片机OTA升级中的A/B双分区的经典方案!图1



一、A/B 双分区的经典方案

  1. 静态 A/B(切换入口)

  • 下载区 + 拷贝区

  • 外部 Flash A/B

  • 差分升级(Delta Patch)



  • 二、典型内存布局

    | Boot Control Block (BCB) |  状态标志区
    |--------------------------|
    | Bootloader (保护段)    |  固定不被擦写
    |--------------------------|
    | 应用分区 A           |  App + 校验信息
    |--------------------------|
    | 应用分区 B           |  App + 校验信息



    三、升级完整逻辑

    1. 下载阶段


    2. 启动阶段(Bootloader)

    1. 检查 BCB,若有待验证分区 → 优先启动它。

    2. 校验 Header、CRC、签名。

    3. 如果失败 → 回滚到旧分区。

    4. 如果通过 → 进入试运行模式。


    3. 试运行与确认



    四、关键点与注意事项



    五、应用场景



    六、总结

    A/B 双分区 OTA 升级的核心是:

    这套机制被广泛应用于汽车电子和物联网设备,是目前最可靠的 OTA 设计之一。

    ------------ END ------------

    单片机OTA升级中的A/B双分区的经典方案!图4


    声明:内容取材于网络,仅代表作者观点,如有内容违规问题,请联系处理。 
    单片机
    more
    不会写单片机不会画电路板?做完这个四轴飞行器,我把STM32和PCB全搞懂了!
    单片机还能这样输出PWM
    单片机通过WiFI进行OTA固件升级
    单片机项目如何添加版本信息?
    单片机的架构和指令集分别指什么?
    搞单片机开发的IDE,都在趋向VS Code
    如何将单片机变量“钉”在Standby RAM中?
    单片机常用状态机QP框架的原理
    最强Cortex-M85单片机,测评免费送开发板!
    单片机电池供电产品设计要点
    Copyright © 2025 成都区角科技有限公司
    蜀ICP备2025143415号-1
      
    川公网安备51015602001305号