为什么在尝试使用 openocd 连接 stlink-v2 时出现通信故障

问题描述

我正在尝试使用 stlink-v2 连接到“stm32”“bluepill”以向其写入一些代码

每当我运行 openocd 时,它都无法连接 我的 openocd.cfg 文件看起来像这样

source [find interface/stlink-v2.cfg]
source [find target/stm32f3x.cfg]

当我运行 openocd 时,这是我收到的响应:

Open On-Chip Debugger 0.10.0
Licensed under GNU GPL v2
For bug reports,read
    http://openocd.org/doc/doxygen/bugs.html
adapter speed: 1000 kHz
adapter_nsrst_delay: 100
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
none separate
srst_only separate srst_nogate srst_open_drain connect_deassert_srst
Info : Unable to match requested speed 1000 kHz,using 950 kHz
Info : Unable to match requested speed 1000 kHz,using 950 kHz
Info : clock speed 950 kHz
Info : STLINK v2 JTAG v35 API v2 SWIM v7 VID 0x0483 PID 0x3748
Info : using stlink api v2
Info : Target voltage: 3.166623
Error: jtag status contains invalid mode value - communication failure
Polling target stm32f3x.cpu Failed,trying to reexamine
Examination Failed,GDB will be halted. Polling again in 100ms
Info : PrevIoUs state query Failed,trying to reconnect
Error: jtag status contains invalid mode value - communication failure
Polling target stm32f3x.cpu Failed,GDB will be halted. Polling again in 300ms
Info : PrevIoUs state query Failed,GDB will be halted. Polling again in 700ms
Info : PrevIoUs state query Failed,GDB will be halted. Polling again in 1500ms
Info : PrevIoUs state query Failed,GDB will be halted. Polling again in 3100ms
Info : PrevIoUs state query Failed,GDB will be halted. Polling again in 6300ms
^C

我以前在 stm32f103 上的 bluepill 上写了一些代码,当我连接到我的 PC 时,代码运行(它导致 pc13 上的 LED 闪烁)

上次运行良好时,我没有更改 openocd.cfg 文件

解决方法

在 OpenOCD 尝试连接时按住重置按钮。

我在 STM32F3DISCOVERY 板上遇到了完全相同的错误。
这样做使我能够再次连接。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...