环境:

  • Windows10 + Windows Terminal + Powershell
  • Open On-Chip Debugger 0.11.0 (2021-06-25)
  • STlink v2
  • F103C8T6最小系统

问题描述

芯片的idcode与预设不匹配。

PS C:\Users\hyq> openocd -f E:\OpenOCD\share\openocd\scripts\interface\stlink-v2.cfg -f E:\OpenOCD\share\openocd\scripts\target\stm32f1x.cfg
Open On-Chip Debugger 0.11.0 (2021-06-25) [https://github.com/sysprogs/openocd]
Licensed under GNU GPL v2
libusb1 09e75e98b4d9ea7909e8837b7a3f00dda4589dc3
For bug reports, readhttp://openocd.org/doc/doxygen/bugs.html
WARNING: interface/stlink-v2.cfg is deprecated, please switch to interface/stlink.cfg
Info : auto-selecting first available session transport "hla_swd". To override use 'transport select <transport>'.
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
Info : DEPRECATED target event trace-config
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : clock speed 1000 kHz
Info : STLINK V2J37S7 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.210533
Warn : UNEXPECTED idcode: 0x2ba01477
Error: expected 1 of 1: 0x1ba01477

原因分析:

当OpenOCD初始化JTAG的过程中,会试图获取JTAG chain上的芯片的idcode (或CPUTAPID, 或Tap ID),与OpenOCD target config文件中的idcode对比,用来识别该芯片。

两种情况会导致这个过程出现错误:

  1. OpenOCD错误地读取了idcode。通常表现为idcode=0x000000000x000000ff
  2. 实际芯片idcode与所选择的OpenOCD target idcode不匹配。可能是.cfg文件信息过时/有误,或者芯片有问题。

解决方案:

根据提示,可以修改.cfg文件设置解决问题。

找到OpenOCD target config文件,这里位于

E:\OpenOCD\share\openocd\scripts\target\stm32f1x.cfg

找到内容

#jtag scan chain
if { [info exists CPUTAPID] } {set _CPUTAPID $CPUTAPID
} else {if { [using_jtag] } {# See STM Document RM0008 Section 26.6.3set _CPUTAPID 0x3ba00477} {# this is the SW-DP tap id not the jtag tap idset _CPUTAPID 0x1ba01477}
}

其中的 set _CPUTAPID 0x1ba01477

改为   set _CPUTAPID 0x2ba01477

保存。命令行再次输入

openocd -f E:\OpenOCD\share\openocd\scripts\interface\stlink-v2.cfg -f E:\OpenOCD\share\openocd\scripts\target\stm32f1x.cfg

结果

Open On-Chip Debugger 0.11.0 (2021-06-25) [https://github.com/sysprogs/openocd]
Licensed under GNU GPL v2
libusb1 09e75e98b4d9ea7909e8837b7a3f00dda4589dc3
For bug reports, readhttp://openocd.org/doc/doxygen/bugs.html
WARNING: interface/stlink-v2.cfg is deprecated, please switch to interface/stlink.cfg
Info : auto-selecting first available session transport "hla_swd". To override use 'transport select <transport>'.
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
Info : DEPRECATED target event trace-config
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : clock speed 1000 kHz
Info : STLINK V2J37S7 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.194733
Info : stm32f1x.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : starting gdb server for stm32f1x.cpu on 3333
Info : Listening on port 3333 for gdb connections

OpenOCD+GDB学习记录(1)相关推荐

  1. 主线剧情01-ARM-IMX6ULL基础学习记录

    ARM & i.MX6ULL 基础学习记录 编辑整理 by Staok 本文大部分内容摘自"100ask imx6ull"开发板的配套资料(如<IMX6ULL裸机开发 ...

  2. Linux学习记录(二)QEMU安装与Linux内核环境搭建

    Linux学习记录(二) 记录本人学习的过程和遇到的问题 QEMU安装与Linux内核环境搭建 Linux学习记录(二) 一.QEMU安装 1.什么是QEMU 2.QEMU安装 二.Linux内核环境 ...

  3. linux学习记录-coredump segment fault

    linux学习记录: 1.coredump:段错误; 总线错误; 程式记忆体区段错误; 链接:http://www.cnblogs.com/doctorqbw/archive/2011/12/21/2 ...

  4. 嵌入式Linux 学习记录

    0 修订记录 持续更新中 修订时间 修订条目 2020-05-22 完成初步框架 2020-05-26 补充部分笔记 2020-08-27 补充进阶部分的笔记 1 基础 1.1 C语言 学习记录: C ...

  5. NJ大学PA学习记录

    PB学习笔记(7.26) 1.常见问题(7.26) 我总觉得讲义写得不清楚:毕业工作后,不会再有讲义具体地告诉你应该做什么, 总有一天你需要在脱离讲义的情况下完成任务. 我们希望你现在就放弃" ...

  6. Pytorch学习记录-torchtext和Pytorch的实例( 使用神经网络训练Seq2Seq代码)

    Pytorch学习记录-torchtext和Pytorch的实例1 0. PyTorch Seq2Seq项目介绍 1. 使用神经网络训练Seq2Seq 1.1 简介,对论文中公式的解读 1.2 数据预 ...

  7. HTML5与CSS3权威指南之CSS3学习记录

    title: HTML5与CSS3权威指南之CSS3学习记录 toc: true date: 2018-10-14 00:06:09 学习资料--<HTML5与CSS3权威指南>(第3版) ...

  8. springboot @cacheable不起作用_Springboot学习记录13 使用缓存:整合redis

    本学习记录的代码,部分参考自gitee码云的如下工程.这个工程有详尽的Spingboot1.x教程.鸣谢! https://gitee.com/didispace/SpringBoot-Learnin ...

  9. 【Cmake】Cmake学习记录

    Cmake学习记录 1.1 常例 add_library(gen_reference_infogen_reference_info/gen_reference_info.hgen_reference_ ...

最新文章

  1. 奥比中光Orbbec Astra Pro体感摄像头“标定全过程”
  2. 【风之语】至贱城市之成都
  3. Python学习之关键要素
  4. Go 语言编程 — 错误处理
  5. 【Webkit Blog翻译】深入研究WebRTC | 内有福利
  6. s11.1 lsof:查看进程打开的文件
  7. 2017总结、2018展望
  8. Reids Lua 模糊查询所有key 及 相对应的集合总数
  9. java流有什么用_在Java中,流比循环有什么优势?
  10. 05-用两个栈实现一个队列
  11. 用DSA或者RSA进行加密或者数字签名
  12. 求模板啊,求软著说明书模板啊
  13. android 6 root权限,安卓一键root(权限获取)
  14. mysql rpl_mysql5.5 半同步参数rpl_semi_sync_master_timeout 测试解决办法
  15. sql 闩锁 原因_关于SQL Server中的闩锁
  16. Codeforces 897D. Ithea Plays With Chtholly (交互)
  17. word插入visio 绘图——图形匹配画布大小
  18. 机器学习python中train_test_split()函数进行数据集分割
  19. lr0文法分析表示例_LR0分析表
  20. android广播 有序 无序,Android全局广播(无序,有序)

热门文章

  1. html5 cms结构,cms产品架构图.html
  2. matlab图像处理二,图像缩放、旋转、修剪
  3. Ceres Solver从零开始手把手教学使用
  4. python调用so库 undefind symbol_内嵌Python import时undefined symbol错误及解决 | 学步园
  5. win11_中文包/中文输入法(微软拼音)设置/键盘/输入法移除win10启用单词输入法/基于英语语言包的美式键/半角切换设置开关
  6. 十一、TN 的本征自洽方法、梯度更新与任意 TN 的收缩
  7. 一度智信电商是真的假的?
  8. 用户体验 | 深耕用户体验筑造银行竞争的护城河
  9. APP测试点总结(全面)
  10. 二元函数可微与偏导数_二元函数的连续、偏导数、可微之间的关系-推荐下载...