问题背景:最近新制作了一个关于stm32的PCB,PCB电源供电是由12V降压5V,再降压到3.3V,并且预留了3.3V电源接口。打样贴片完成后准备下载程序。一开始我是为了测试方便,没有用12V供电,直接连接stlink,并且用了电脑5V降压到3.3V外接电源供电,但是SWD模式下下载一直提示internal command error。
解决办法:发现问题后我直接百度搜索,给的方案有以下几种:
1.按住复位键后,点击LOAD按钮,大概0.5-1S松开,可以成功下载。
2.ST-LINK设置中将connect改成 with Pre-restet。
在尝试以上两种解决方案后依旧无法下载成功,继续报错internal command error
继续浏览论坛,有大神说是VDD和VSS电压不稳定造成。注意到这个提示后,我将电脑供电的5V撤去,更改为直流稳压电源12V直接接上PCB,然后由PCB内部的降压降到3.3V ,就可以成功下载。
个人猜测:电脑的5V供电可能不稳定。
总结:没有找到出现这个问题的根本原因。但是对单片机提供稳定的电源是必要的。如果出现这个问题,并且以上百度的方法都没法解决,可以尝试检查一下单片机供电电路是否符合要求。