STM32下载时可能会遇到的问题记录

使用jlink的SWD下载时,出现问题可能如下,解决办法可参考;

1、复位脚被拉低了,烧写程序时会出现如下报错
–>
- Erasing affected sectors …
- ERROR: RAM check failed @ address 0x20000000.
- ERROR: Write: 0x03020100 07060504
- ERROR: Read: 0x00000000 00000000
- ERROR: (0 bytes of RAM have been checked successfully)
- ERROR: Failed to erase sectors
- De-initializing CPU core (Exit sequence) …
- ERROR: Failed to auto program target
2、SWDIO和SWCLK线序错误\错误表现为连接不成功;

3、另外会出现STM32: Connecting to CPU via connect under reset failed.
此时可以检查下VDDA和VSSA电压是否均正常,如果VDDA低于VDD太多会导致无法正常烧写芯片;

4、如果出现读取的id和工程设置的芯片id不符合的情况,多半是jlink本身有问题,固件与驱动不符,导致的读取数据错误;可以尝试更换低版本的驱动,有时候最新的不一定是最合适的。

5、如果在程序中禁用了SWD调试接口,即将SWD所用的IO口当作普通的IO口使用时,下载完第一次程序后,如果从flash启动(BOOT0==0)则无法继续使用SWD接口重新下载程序或者调试;
此时可能会出现如下提示:
- Connecting …
- Connecting via USB to J-Link device 0
- Target interface speed: 200 kHz (Auto)
- VTarget = 3.345V
- ERROR: Failed to connect.
Could not establish a connection to target.
解决办法是将BOOT0拉高,让程序从ram启动,则可以使用SWD重新下载程序;
---------------------
作者:xuezhimeng2010
来源:CSDN
原文:https://blog.csdn.net/xuezhimeng2010/article/details/78771030
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/smu2000/article/details/84891017