关于使用stm32下载不进程序的各种奇葩记录

- JLink Info: T-bit of XPSR is 0 but should be 1. Changed to 1.
- JLink Info: T-bit of XPSR is 0 but should be 1. Changed to 1. 烧入日志
烧入错误
识别不到设备。
芯片有写保护,烧入不进

Device: STM32F103C8 VTarget = 3.269V State of Pins: TCK: 0, TDI: 1, TDO: 0, TMS: 1, TRES: 1, TRST: 0 Hardware-Breakpoints: 6 Software-Breakpoints: 8192 Watchpoints: 0 JTAG speed: 4000 kHz
Erase Failed!
Error: Flash Download failed - "Cortex-M3"
下载程序失败有不少原因,其中有可能有如下的点:(1)仿真器是盗版的,质量不稳定;(2)boot0引脚设置有问题;(3)使用4线SWD接口连接,但是之前下载的程序却没有配置SWD接口,没有连接仿真器和MCU的RESET信号就无法再下载;(4)MCU上的程序进入了低功耗模式,这时就是无法下载程序的
想要芯片继续发光发热,就必须多个方面进行尝试。
尝试点:
1.换个下载器的进行下载。2.把下载器的线接短一些。3.把下载器换个供电口,有可能电脑的供电口有问题。4.换一个线进行尝试。5.把保护进行解除之后下载。
6.接上复位引脚进行复位操作。7.确保板子上的芯片型号和工程中的型号对应
8.把下载速度降低一些。
9.保持好心情进行尝试,切忌浮躁。
还有一种情况是,程序中软件忘记配置SWD接口调试了,导致识别不到芯片,那么需要解决办法就需要一点手速了,用镊子或者跳线把STM32的NRST引脚拉低,并一直使STM32处于复位状态,然后单击KEIL的DOWNLOAD按钮,因为这时候MCU一直处于复位,所以当我们DOWNLOAD下载代码时,立刻松手让MCU的NRST引脚拉高,这就可以成功下载了,如果松手太慢则会下载失败!!!
本文完!!