我正在尝试使用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
我在Google上搜索并发现了一些类似的帖子,但是没有运气解决它。
有人有想法吗?
MVH Ole K Hornnes
答案 0 :(得分:3)
设置CPUTAPID 0x2ba01477 ;将适用于克隆,但不适用于真正的STM32…
代替使用:设置CPUTAPID 0
零告诉OpenOCD忽略ID号,因此任何MCU都可以工作……
信息来源:OpenOCD TAPs
答案 1 :(得分:2)
在OpenOCD配置文件中,您需要添加:
set CPUTAPID 0x2ba01477
我从未使用过AC6 SystemWorkbench,现在也没有如何配置板卡和调试适配器。因此,我真的不能说出在哪里可以找到配置文件。
OpenOCD带有电路板配置的整个目录,通常在目录 OpenOCD / 脚本 / board 中。它包含一个名为stm32f103c8_blue_pill.cfg
的脚本,在您的情况下可能会用到。从那里开始...
答案 2 :(得分: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错误