验证安装

在本节中,我们将检查一些必需的工具/驱动程序是否已正确安装和配置。

使用 Mini-USB USB 线将您的笔记本电脑/PC 连接到开发板。开发板有两个 USB 连接器;使用标有“USB ST-LINK”的连接器,它位于板边缘的中心。

还要检查 ST-LINK 头部是否已填充。请参见下图;ST-LINK 头部已突出显示。

现在运行以下命令

openocd -f interface/stlink.cfg -f target/stm32f3x.cfg

注意:旧版本的 openocd,包括 2017 年发布的 0.10.0 版本,不包含新的(且更可取的)interface/stlink.cfg 文件;相反,您可能需要使用 interface/stlink-v2.cfginterface/stlink-v2-1.cfg

您应该获得以下输出,并且程序应该阻塞控制台

Open On-Chip Debugger 0.10.0
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.org/doc/doxygen/bugs.html
Info : auto-selecting first available session transport "hla_swd". To override use 'transport select <transport>'.
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
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 v27 API v2 SWIM v15 VID 0x0483 PID 0x374B
Info : using stlink api v2
Info : Target voltage: 2.919881
Info : stm32f3x.cpu: hardware has 6 breakpoints, 4 watchpoints

内容可能不完全匹配,但您应该获得关于断点和观察点的最后一行。如果您获得了它,则终止 OpenOCD 进程并转到下一节

如果您没有获得“断点”行,请尝试以下命令之一。

openocd -f interface/stlink-v2.cfg -f target/stm32f3x.cfg
openocd -f interface/stlink-v2-1.cfg -f target/stm32f3x.cfg

如果其中一个命令有效,则意味着您获得了开发板的旧硬件版本。这不会有问题,但请记住这一点,因为您稍后需要以稍微不同的方式进行配置。您可以转到下一节

如果所有命令都无法作为普通用户运行,请尝试以 root 权限运行它们(例如 sudo openocd ..)。如果命令确实以 root 权限运行,请检查udev 规则是否已正确设置。

如果您已到达此步骤并且 OpenOCD 无法正常工作,请打开一个问题,我们将帮助您解决!