烧录程序后,STM32没反应?别急着怀疑硬件坏了!掌握这7个自查方法,5分钟内就能确认烧录是否成功。

1. 看烧录工具的“成功提示”
烧录软件(如ST-Link Utility、Keil)完成操作后,会弹出“Programming succeeded”或显示“OK”。如果报错(如“Verification failed”),说明烧录失败。
2. 检查LED是否“动起来”
如果程序控制LED闪烁,烧录成功后板子上的LED应按代码逻辑亮灭。若LED没反应,可能是:
程序没运行(烧录失败或复位电路问题)
引脚配置错误(代码里LED接的GPIO和实际硬件不一致)
3. 用串口打印“调试信息”
在代码里加一行printf("Burn success!\n");,通过串口工具(如Putty、SSCOM)查看输出。如果有“Burn success!”字样,说明程序已运行。
注意:需提前配置好串口引脚和波特率。
4. 测复位引脚电压
用万用表量STM32的NRST引脚(复位脚):
正常电压≈3.3V(供电电压)
如果电压为0或波动,可能是复位电路故障,导致芯片无法启动,即使烧录成功也无法运行。
5. 看时钟引脚是否有信号
用示波器探STM32的时钟输出引脚(如OSC_OUT):
烧录成功且时钟配置正确时,会有规律方波(频率由代码设置,如8MHz)
无信号可能是时钟配置错误或晶振未起振。
6. 检查启动模式跳线
STM32通过BOOT0/BOOT1引脚选择启动方式:
烧录时需设为“从系统内存启动”(BOOT0=1,BOOT1=0)
运行程序时需设为“从Flash启动”(BOOT0=0)
若跳线没改回来,芯片会一直进入烧录模式,导致“看似烧录成功但无法运行”。
7. 重新烧录“最小系统程序”
如果以上方法仍无法确认,烧录一个最简单的程序(如只点亮LED),排除原程序复杂度导致的问题。
若最小程序能运行,说明原程序有逻辑错误;若仍不行,可能是硬件问题(如芯片损坏、电源不稳)。
本文凡亿教育原创文章,转载请注明来源!

扫码关注








































