查看: 18|回复: 0

单片机上电后的第一行代码从哪来?聊聊Bootloader

[复制链接]
发表于 前天 07:59 | 显示全部楼层 |阅读模式
🔌 按下复位键到 main 函数跑起来,中间发生了什么?其实芯片最先执行的不是你写的应用代码,而是固件里那段"引导程序"。
🔍 Bootloader 是干什么的
它是上电后第一段跑起来的代码,由复位向量指向,负责判断"这次启动该干什么":正常跳转到应用区,还是停留在升级模式等新固件。
💡 它常见的三个本领
  • ✔ 通过串口、USB 或网络接收新固件
  • ✔ 校验固件完整性,防止刷成砖
  • ✔ 支持 OTA 远程升级,设备不用拆壳

🧱 设计要点
通常把 Flash 划成 Bootloader 区和 App 区,两区空间要提前规划好,Bootloader 一般只占几 KB;双区方案(A/B 分区)还能在升级失败时回滚,保住设备不死机。跳转前记得关中断、重设向量表,否则会出现各种玄学问题。


一句话总结:Bootloader 是设备的"开机管家",升级、恢复、防砖全靠它。

💬 互动一下:你的 Bootloader 是自己写的还是用官方库?踩过跳转的坑吗?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注公众号
免责声明|Archiver|手机版|小黑屋|半导贴吧

相关侵权、举报、投诉及建议等,请发 E-mail:1152577621@qq.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.|渝ICP备2024033348号|渝ICP备2024033348号-1

在本版发帖
关注公众号
QQ客服返回顶部