大家好,又见面了,我是你们的朋友全栈君。
最近要使用stm32f103c8t6最小系统板,直接ISP串口下载程序太麻烦,就想着使用swd接口来调试。
结果:通过SWD接口下载程序成功,但调试失败,还不知原因,会的的人麻烦交流一下。
SWD接口:3.3V DIO(数据) CLK(时钟) GND
1.首先声明
jlink和stlink都有jtag和swd调试功能。
jlink接口如下:如图,我使用的就是VCC VCC(optional) GND SWDIO SWCLK RESET
stlink我没有实际测试过,应该可以使用SWD接口,具体图自行百度。
这里我只说明接线方法:(烧录要保证stm32的boot模式选择在烧录模式下:boot0接高电平)
1.VCC接VCC(optional)
使用VCC(optional)的3.3V为VCC(jlink内部缓存芯片)提供参考电压,这步是我之前一直keil中无法识别芯片的关键。
除了接Jlink里VCC(optional)的3.3V,还可以通过接板子上芯片的3.3V作为参考电压,依旧能烧录和调试。
2.SWDIO接DIO
3.SWCLK接CLK
这样,硬件部分就完成了。下面展示我keil软件的配置。
1.选择J-link,如果你是st-link就选st-link
2.关键信息
在下图的1中,如果没有出现SN号,Device信息,说明Jlink有问题,请查看驱动是否安装好;固件是否合适;或者重启软件,有时是软件问题。
在下图的2中,如果没有SWD后面的芯片信息,说明stm32f1芯片没有识别,试着将VCC和VCC(optional)连接起来,此时颜色由绿色变红色,是正常的;检查连线是否正确。********************************************这步是我经验的关键,参考电平加上去就能识别了。
3.选择FLASH,这是我选择的,具体按照自己的芯片来
最后,发我的调试硬件美照。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/129842.html原文链接:https://javaforall.cn