问题2:点击下载按钮时,提示No target connected
最后更新时间:2023.6.26
问题原因
电脑通过STLINK未检测到有STM32芯片连接,原因是多样的,可能是接线的问题,可能是STLINK的问题,也可能是STM32的问题,请按照以下方法依次尝试解决。
解决方法
1. 接线错误。请仔细观察引脚标号,按照引脚标号正确接线。
注意:不同款式的STLINK,引脚排列可能不一样。引脚顺序并非依次对应,接线需要交叉。STLINK两排引脚不一样,接线需要插在远离缺口的一排引脚。
请按照下图仔细检查接线。
![img](img/p1-2-8.jpg)
一种款式的STLINK与STM32正确的接线(接线需要交叉)
![img](img/p1-2-9.jpg)
另一种款式的STLINK与STM32正确的接线(接线需要交叉)
![img](img/p1-2-10.jpg)
STLINK插线位置(需要插在远离缺口的一排引脚)
其中不同款式的板子,引脚标号可能有不同的缩写,以下同一行的标号均表示同一个引脚。
3.3V | 3V3 | 3.3 |
SWDCLK | SWCLK | DCLK |
SWDIO | SWIO | DIO |
GND | G |
另外,接线接触不良也可能导致这个问题,可以尝试换几根线试一下。
2. STLINK有问题。实践发现,部分STLINK确实会导致这个问题,判断方法暂时不明显,如果身边有别的STLINK可以进行替换测试,可以先通过替换别的STLINK来验证当前STLINK是否有问题,这是最快捷的方法。如果没有别的STLINK,可以尝试一下更新STLINK固件,STLINK固件更新步骤如下。
打开Keil软件的安装目录。如果不清楚Keil软件的安装目录,可以在桌面图标右键,打开文件所在的位置,找到安装目录。
![img](img/p1-2-3.jpg)
打开Keil安装目录
在右键跳转打开的安装目录里,先回退上一级文件夹,然后依次打开ARM,STLink文件夹,找到ST-LinkUpgrade.exe软件并打开。
![img](img/p1-2-4.jpg)
找到STLINK固件更新软件
将STLINK插到电脑USB口,如果事先已经插上了,则需要重新插拔一次,STLINK的线最好也全都拔掉,以避免问题。之后,先点击Device Connect 按钮连接设备。连接成功后,再点击Yes 按钮执行固件更新。
![img](img/p1-2-5.jpg)
固件更新步骤
固件升级成功后,正常使用前,需要再次重新插拔STLINK,以避免问题。
![img](img/p1-2-6.jpg)
固件更新成功
3. STM32的问题。实践发现,部分STM32也会导致这个问题,判断方法暂时不明显,如果身边有别的STM32可以进行替换测试,可以先通过替换别的STM32来验证当前STM32是否有问题,这是最快捷的方法。如果没有别的STM32,可以按照下述步骤测试。
先确认在STM32在这之前是否正常下载过程序。如果之前正常下载过,之后没有执行过比较暴力的操作,比如加入过高的电压等,那STM32一般不会平白无故损坏。
禁用了调试端口会导致这个问题,尤其是使用过CubeMX软件生成的程序,因为CubeMX默认是禁用调试端口的。如果有这种情况,可以按照按住复位键不放手,点击下载按钮,及时松开复位键这个流程,下载新的程序。
< 返回