初始化 ST-Link 设备时出错 - 无法连接到设备

Posted

技术标签:

【中文标题】初始化 ST-Link 设备时出错 - 无法连接到设备【英文标题】:Error in initializing ST-Link Device - Failed to connect to device 【发布时间】:2016-10-31 18:04:05 【问题描述】:

我目前正在使用 ST-Link 调试器对我的 STM32F3 探索板进行编程。我使用的 IDE 是 Atollic TrueStudio 5.5.2。现在我面临一个非常奇怪的问题,就是我不断收到消息

初始化 ST-Link 设备时出错。原因:(-1) 连接设备失败。请检查目标的电源和电缆。

每当我想将程序下载到我的 STM32 中时。我尝试了一些从互联网上找到的解决方案,但问题仍然存在。以前有人遇到过这个问题吗?任何建议都会有所帮助。

这是我找到的解决方案,但不适用于我。 http://www.kerrywong.com/2012/08/02/the-dreaded-cannot-connect-to-st-link-error-message/

【问题讨论】:

检查开发板上的跳线是否正确,尤其是用于 ST-LINK 和 PSU 的跳线(不确定板上的跳线是什么。尝试关闭并再次打开所有跳线。尝试重新安装驱动程序。如果它确实工作了一次并且没有修复它,我担心你可能已经损坏了电路板! 感谢您的建议,我把开发板上的所有跳线都拆了,重装了3次驱动,还是不能解决问题。此外,我确信我的电路板很好,因为我可以使用其他笔记本电脑对其进行编程。 您能否使用可从 ST 下载的免费软件连接到您的 ST-Link?如果是,那么这是一个 Atollic 问题,大概他们支持他们的产品。 几天前我想出了一个愚蠢的解决方案,我将之前项目中的“设置”文件复制到当前项目中的“设置”文件中,问题就解决了。但是,当我比较我以前的项目和当前项目的设置时,似乎没有区别。 . @KalmanRotert 嗨,你能解决它吗?我有同样的问题。我的主机是 Ubuntu 16 LTS 64 位。安装了 st-link、TRUEStudio、CUBEMx。我有 udev 规则,可以在 /dev 文件夹中看到几个与 st 相关的驱动程序。我连接了 STM32L476 Discovery 板并尝试运行 LED 闪烁程序并发出“ST-Link 枚举失败。初始化 ST-Link 设备时出错”。 lsusb 也没有显示板子。在Windows上检查了电路板,没问题。 :( 原因:ST-Link DLL 错误。” 【参考方案1】:

我在 Ubuntu 上遇到了同样的情况。我使用 STM32CubeProgrammer 解决了这个问题。

在 ST-LINK 配置区:

    序列号 -> 刷新以获取您的 stlink 序列号 模式:重置中 重置模式:核心重置

为您的电路板供电时尝试尽快连接。 当您连接时,您可以执行“全芯片擦除”。 它应该为下次使用做好准备。 希望对你有帮助

【讨论】:

解决了我的问题!谢谢!【参考方案2】:

不是整个 PC 方面的专家,但我在 Windows 10 中使用 aliexpress 的外部 ST-LINK V2 发现 PC 机器默认情况下可能会为每个设备选择错误的驱动程序,而您要解决的问题就是简单地更改设备对应的驱动程序。

你是这样做的:

Hit Windows key 
Type "device manager"
Locate connected ST link device Right click-> "Update driver"
browse my PC -> Let me pick from a list available
and there you want to select STLink Dongle Version:("Your most recent")

这几乎解决了我所有的问题。

【讨论】:

谢谢你!我一直在尝试解决这个问题......太久了,这很有效。 谢谢,这也解决了我的问题。作为参考,我收到了ST-LINK DLL errorFailed to start GDB server【参考方案3】:

您可以尝试以下方法。

确保您已安装正确版本的驱动程序(32 位或 64 位)。

如果您使用外部 ST-Link,请确保连接 VCC、GND、RESET、SWDIO 和 SWDCLK。

如果您使用的是外部 ST-Link,请确保 Atollic 使用的是正确的。您可能连接了 2 个 ST-link(外部和嵌入式)。

确保 ST-Link 设置为 SWD 模式,而不是 JTAG。

在 Atollic 中,您还可以更改 ST-Link 连接到目标的方式。尝试不同的组合,例如在硬件重置下连接。

【讨论】:

感谢您的建议,但仍然无法解决此问题。【参考方案4】:

在调试器选项卡中,确保选择SWD,而不是JTAG

【讨论】:

【参考方案5】:

出现此错误是因为固件太旧,使用STLinkUpgrade工具,通过USB口升级ST-LINK、ST-LINK/V2、ST-LINK/V2-1板卡的固件。

【讨论】:

以上是关于初始化 ST-Link 设备时出错 - 无法连接到设备的主要内容,如果未能解决你的问题,请参考以下文章

iOS - 连接到真实设备上的数据库时出错

将 nesjs 应用程序连接到 SQL Server Express 时出错:无法连接到 localhost:1433 - 自签名证书

尝试连接到 SVN 存储库时出错

将 Django 与 Docker 一起使用时出错 - “无法连接到 '127.0.0.1' (111) 上的 MySQL 服务器”)

无法连接到虚拟机怎么解决?怎么解决?

连接到 CommissionJunction 令牌时出错:[60] SSL 证书问题:无法获取本地颁发者证书