程序烧录失败90%的原因,其实是这些

程序烧录失败90%的原因,其实是这些

烧录失败,是每个嵌入式开发者绕不过去的“心魔”。今天我们一口气把问题说清楚,让你以后一烧一个准!
在这里插入图片描述


🎯 你是否经历过这些场景?

  • “为啥我按下下载键就卡死了?”
  • “它明明连接成功,结果提示 Flash error?”
  • “昨天还能烧,今天突然不行了?”

别急,你不是一个人!程序烧录失败的锅,真不是你电脑的“运气”问题,而是……一堆小细节捣乱了!


🔧 一图速览:烧录失败的最常见原因分类

程序烧录失败主要分为三大类:
├── 硬件问题(接线、电源、引脚)
├── 软件设置(烧录器驱动、下载参数)
└── 操作疏忽(没进下载模式、忘了上电)

在这里插入图片描述


✅ 最常见的10个“背锅侠”

1️⃣ 烧录线接反(TX↔RX或SWDIO↔SWCLK接错)

新手经典翻车点:你以为你接好了,结果 TX 对 TX,RX 对 RX……烧录器一脸懵。

  • UART下载:TX要接MCU的RX,RX接MCU的TX
  • SWD下载:SWDIO↔SWDIO,SWCLK↔SWCLK,不能反!

2️⃣ GND 没接!

别笑,地线不接,信号全靠“玄学”。

  • 烧录器和目标板一定要共地(GND连一起)
  • 有时看着接好了,其实杜邦线虚焊,建议用万用表测一下阻值

3️⃣ 没进下载模式(比如 BOOT0 没拉高)

你按下“下载”按钮,MCU却还在运行程序——那当然烧不进去!

举个例子:

MCU下载模式操作
STM32F1BOOT0拉高,重启
ESP32IO0接地,上电进入
EFR32默认支持SWD,但部分需进入Boot模式

建议开发时加入一个“强制下载模式”的按键方案,别指望程序自己“配合烧写”。

4️⃣ 烧录器驱动没装 / 版本冲突

Windows 下驱动问题超常见:

  • CH340 驱动没装:串口都没出现
  • ST-Link 驱动太老:烧录一直超时
  • J-Link 有多个版本同时装:冲突到你哭

建议:

  • 使用官网最新版驱动
  • 避免多个烧录器混装
  • 在设备管理器中确认是否识别成功

5️⃣ 烧录参数设置错(地址、速度)

你用 J-Flash 烧录,却手滑选错芯片型号?

你用 Keil 下载,却写错 Flash 起始地址?

结果嘛:烧不进去 / 烧进去也跑飞。

建议:

  • 芯片型号确认三遍(STM32F103C8 ≠ STM32F103CB)
  • 烧录软件的 offset/size 设置要和目标芯片一致
  • 下载速度不要贪快,先从默认速度测试

6️⃣ 电源不足或不稳定

你用 USB 给开发板供电,却又拖了一堆模块(OLED、WIFI模块、传感器)——烧录时压根供不上电!

  • 使用稳压的 DC 电源 或 电源模块
  • USB3.0接口通常电流更高
  • 如果用 ST-Link 的供电引脚,请注意供电能力有限

建议:烧录时断开高功耗模块,先“安安静静”地烧个程序进去。

7️⃣ 程序把烧录引脚占用了

你上一次写了个“超级闪灯程序”,用 GPIO 把 SWD 引脚“变灯控”,结果下次烧录直接懵逼。

解决办法:

  • 启用“读保护解除”重新恢复下载能力
  • STM32可进ISP/UART模式重新刷Bootloader
  • 开发初期慎用下载口的引脚

8️⃣ Flash损坏或已写保护

芯片的 Flash 被你“不小心”写成了只读模式,或者存储寿命到了,烧录当然失败。

  • 查看是否开启了 RDP(Read Protection)
  • 使用擦除功能清空 Flash 内容
  • 替换芯片试试(尤其是二手的 / 淘来的)

9️⃣ 串口工具/Keil/IAR/J-Flash 被占用

烧录器只认一个“主人”——如果后台有别的程序(串口助手、ST-Link Utility)占着它,它就罢工了。

建议:

  • 烧录前关闭所有串口工具
  • 检查是否有多个 IDE 同时运行占线

🔟 烧录线/转接头接触不良

插了一年没动的杜邦线,内部早氧化了。手一碰就断,一烧就挂。

建议:

  • 更换优质杜邦线
  • 使用排针 + 焊接代替插拔
  • 烧录座用久了也要清灰保养

💡 进阶小技巧:自查思路五步法

1. 看:设备是否被识别?驱动是否正常?
2. 测:电源是否稳定?GND是否连接?
3. 换:换线换端口换烧录器排除硬件故障
4. 简:使用最简单的程序测试(比如LED闪烁)
5. 查:查看 IDE 错误提示/Log 日志分析

✅ 写在最后:烧录失败不可怕

烧录失败,并不意味着芯片坏了、大限已至。

90% 的问题都可以靠冷静+排查解决!

所有嵌入式老鸟都经历过“烧不进去”的抓狂时刻,
真正牛的开发者,能稳稳查出问题,一次次修好它。
在这里插入图片描述


📢 想继续看这些主题?

  • 《串口烧录 vs JTAG vs SWD,傻傻分不清?》
  • 《ST-Link 和 J-Link 区别在哪?选谁更合适?》
  • 《如何自制一个小巧好用的下载器?》

欢迎点赞 + 收藏 + 留言,我可以继续出“嵌入式实战避坑”系列文章!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

欢乐熊嵌入式编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值