4

我正在尝试使用 AC6 SystemWorkBench 和 ST-LINK v2 设备用 CS32F103C8T6 芯片刷新蓝色药丸克隆。这是一个从 STM32CubeMX 构建的项目——我使用的是 MacOS Mojave 机器。这是尝试刷新设备时的输出。

Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
adapter speed: 8000 kHz
adapter_nsrst_delay: 100
Info : clock speed 8000 kHz
Info : STLINK v2 JTAG v31 API v2 SWIM v7 VID 0x0483 PID 0x3748
Info : using stlink api v2
Info : Target voltage: 3.162004
Info : Unable to match requested speed 8000 kHz, using 4000 kHz
Info : Stlink adapter speed set to 4000 kHz
Warn : UNEXPECTED idcode: 0x2ba01477
Error: expected 1 of 1: 0x1ba01477
in procedure 'program' 
in procedure 'init' called at file "embedded:startup.tcl", line 495
in procedure 'ocd_bouncer'
** OpenOCD init failed **
shutdown command invoked

我用谷歌搜索并找到了一些类似的帖子,但没有运气解决它。

有人有想法吗?

mvh Ole K Hornnes

4

3 回答 3

8

在 OpenOCD 配置文件中,您需要添加:

set CPUTAPID 0x2ba01477

我从未使用过 AC6 SystemWorkbench,我现在也不知道如何配置板和其中的调试适配器。所以我真的不知道在哪里寻找配置文件。

OpenOCD 带有一个完整的板配置目录,通常在目录OpenOCD / scripts / board中。它包含一个名为 的脚本stm32f103c8_blue_pill.cfg,可能会在您的情况下使用。从那里开始...

于 2019-11-22T10:01:43.127 回答
6

设置 CPUTAPID 0x2ba01477;将适用于克隆,但不适用于正版 STM32……</p>

而是使用:设置 CPUTAPID 0

零告诉 OpenOCD 忽略 id 号,因此任何 MCU 都可以工作……</p>

信息来源:OpenOCD TAPs

于 2020-05-18T07:02:54.617 回答
2

C:\Ac6\SystemWorkbench\plugins\fr.ac6.mcu.debug_2.5.0.201904120827\resources\openocd\st_scripts\target\stm32f1x.cfg

在第一个 if 语句之前添加这一行

设置 CPUTAPID 0

它解决了所有 openocd stlink id 错误

于 2020-08-14T11:41:28.643 回答