一.对于stm32仿真器下载程序事常见的问题(No Target Connected 错误和SWD/JTAG Communication Failure错误)解决方案。
(1) 出现这种问题的本质是由于stm32上的SWCLK和SWDIO没有开启。
(或是自己无意识的动了PA13和PA4一般这两个脚是决定swclk和swdio的复用的,建议在看清楚引脚的一些复用功能后再使用),
------导致仿真器无法读取到stm32的芯片,这就是报错的原因,虽然mdk能识别仿真器却无法下载程序。
如图示问题:
(2)解决方法。
通过串口下载,点亮led灯等简单的程序,来重新**复用功能。
我使用的是flymcu进行串口烧写的,也可用其它的串口烧写工具。
如图:
【注意事项:
1)选择hex程序文件。
2)串口波特率选择76800
3)√号如图中勾选
4)开始编程等待完成,中间有擦出flash的过程,可能需要重新选择hex文件。
】
当烧写成功后再次使用仿真器烧写程序时,便不会有上述的错误了。
如图:
解释说明:这类仿真器无法识别stm32芯片的问题,
一般会有人说调节boot0和boot1的高低电平,
或是按着复位键进行下载,
但本人测试后发现:
**1)**这两类解决方案并不能十分有效的解决问题。
**2)**串口也是可以烧写程序的,
它和仿真器的相比缺点也是蛮大的,
不能仿真,下载需要找到hex文件,步骤繁琐,
(烧写过程时间和仿真器)实际差别不大,
如果资金短缺或者临时没有仿真器,也可以尝试用串口下载stm32程序。