细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等

一、正确配置ST-LINK

此部分可以帮助解决ST-LINK Connection error的问题

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第1张图片

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第2张图片

 ST-LINK有两种接线方式,一种是JTAG,一种是SWD(SW),网上购买的ST-LINK(下图)是采用SW方式接线的,所以选项中要选择SW而不是JTAG(一般默认第一项)

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第3张图片

所以如果STM32板子是JTAG的接口需要转成SW可以参考下图,注意SWDIO和SWCLK即可

 

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第4张图片

 此外配置还需要注意设备,这个问题出现在用例程的时候,因为例程的板子和现在正在用的板子不同,则会ST-LINK报错,无法上传程序

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第5张图片

二、安装驱动,并正确选择FW Version

此部分可以帮助解决USB communication error的问题

需要注意,驱动包含两部分,一部分是电脑的驱动,一部分是固件

如果ST-LINK插上后电脑没反映(没有读取串口)说明是未安装电脑的驱动,驱动在Keil安装目录->STLink->USBDriver里(没有可以网上搜索下载)64位系统则安装amd64那个exe,32则x86的exe

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第6张图片

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第7张图片

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第8张图片

 如果ST-LINK可以被识别,但上传时显示USB communication error,说明FW Version不正确,这里区分ST-LINK,ST-LINK V2,ST-LINK V2.1,ST-LINK V3一定要分清购买的ST-LINK版本

可以在这里

https://www.stmcu.org.cn/document/list/index/sort-new/category-482 (STM社区)

https://www.st.com/zh/development-tools/stm32-programmers.html#products (官网)

里面查找STSW-LINK00X,这个X就是版本,一般V1对应001,V2对应005,V2.1对应009

目前主流的还是V2对应的STSW-LINK005

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第9张图片

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第10张图片

点击Connect连接ST-LINK,但是注意一定要将MDK关闭,只留下这个窗口,否则会报错,如下图

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第11张图片

 连接后点击Yes即可更新固件,我下图这个固件版本适配的是某宝上的ST-LINK,等待程序写完后就可以解决通信错误的问题了,如果还不行,就再多试试几个FW Version,看看哪个合适,反正一定是这个问题

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第12张图片

三、Cube编写stm32程序会出现的问题

此部分可以帮助解决USB communication error、NO target connected的问题

首先,除了keil上配置debug,在cube上也要配置debug,需要选择Trace Asynchronous Sw

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第13张图片

这个时候能在引脚定义图中看到PA13和14已经被定义了,这就是正确的,所以这也提醒我们在定义引脚的时候,不能定义PA13/14,否则ST-LINK就无法使用了,必须注意这个 

细数ST-LINK的种种坑:ST-LINK Connection error,USB communication error,NO target connected等_第14张图片

 另外如果还是一直出现NO target connected的错误,也可以在点击上传后按住Reset键一会,再松开即可正常上传程序,这是一个妙招,至于为什么不太清楚,但是肯定是可以解决问题的

你可能感兴趣的:(STM32)