STM32 JLINK SWD调试器手动复位才能烧写的问题
- Chapter1 STM32 JLINK SWD调试器手动复位才能烧写的问题
Chapter1 STM32 JLINK SWD调试器手动复位才能烧写的问题
原文链接:https://blog.csdn.net/denghuajing/article/details/121649667
问题
只有手动复位的情况下,才能进行烧写。板子使用的是SWD调试口?
SWD需不需要reset pin?STM32CubeMX的程序就有问题?
为什么烧录程序一次后就无法连接调试器烧录,一定要手动复位?
连接不上调试器?
SWD调试口一般来说需要4条线 V+(3.3)GND SCLK SWIO
标准SWD 无需reset Pin!
调试器和MCU连接烧录的时候,会对CPU或者外设进行reset动作,这个动作在没有reset pin的时候是通过发送指令进行的。
MDK中关于reset的设置比较复杂一般使用normal,如果有兴趣可以通过下链接了解
官方的说明 这里
如果我们使用的代码对SWD口进行了一些配置,导致reset指令无法通过SWD口接收的话,调试器就无法reset MCU。这样只能手动复位,而且时机很难把握。解决办法就是不要复用SWDIO 口,否则使用reset pin。
综上,SWD调试口如果需要复用端口,需要使用reset pin。
SWD的PIN 专用,不用resret pin
手动写代码的时候,SWDIO我们可以自己把握,不去配置就可以用,所以一般来说都在掌控中。
但是在STM32CubeMX 如果不打开SWD口,会导致烧录过一次程序后,无法自动烧录的问题。