硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4381|回复: 16
收起左侧

[玩转DAPLINK] H7-TOOL高速DAPLINK用于Clion调试操作说明,采用OpenOCD做GDB Server(2023-05-26,已经发布)

  [复制链接]

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115988
QQ
发表于 2023-5-25 07:33:39 | 显示全部楼层 |阅读模式
【测试版本】
1、STM32CubeMX用的6.8.1
2、Clion用的2023.1.3
CLion-2023.1.3.exe (660.95MB)

3、OpenOCD用的如下(解压到磁盘根目录即可):
openocd-20230202.7z (7.04MB)

4、GCC用的如下:
arm-gnu-toolchain-12.2.mpacbti-rel1-mingw-w64-i686-arm-none-eabi.exe (224.92MB)

【Clion教程】

工程创建使用的此贴坛友分享的教程(坛友分享的MinGW安装,使用新版Clion2023已经自带了):
https://www.armbbs.cn/forum.php?mod=viewthread&tid=113447

我这里不同的是调试配置和坛友分享的不同,坛友分享的方法没法用于H7-TOOL的高速CMSIS-DAP V2.0的HID和WinUSB二合一

【Clion的GDB Server配置】

1、点击右上角的EDIT Config

下载 (2).png

2、

QQ截图20230526164046.png

3、点击前面的小加号,选择GDB:

QQ截图20230526164211.png

4、

1.png

5、下面选项1,2,3里面分别填如下内容
(1)localhost:3333
(2)前面安装的openocd的路径D:\OpenOCD-20230202-0.12.0\bin\openocd.exe
(3)配置内容
[C] 纯文本查看 复制代码
-f interface/cmsis-dap.cfg -c "adapter speed 10000" -c "transport select swd" -f target/stm32f4x.cfg -c "init;reset halt;"


adapter speed 10000:表示10MHz,大家根据自己的情况修改
target/stm32f4x.cfg:表示使用的f4系列,对应的cfg文件在openocd的路径D:\OpenOCD-20230202-0.12.0\share\openocd\scripts\target里面,大家根据自己的芯片型号选择相应的cfg文件

3.png

6、点开高级GDB选项,下面这里选择Never

4.png


最后点击此对话框的底端的Apply,然后点击OK按钮

5.png


7、现在就可以进行调试,调试前推荐在main函数前面双击,加上断点,保证进入调试后直接停在main这里,实际测试发现,进入调试后,直接直接运行了

56.png

然后点击这个图标就可以进入调试状态了:

34.png

进入调试后,单步调试等按钮也会展示出来:

12.png

动态效果如下:

12.gif



评分

参与人数 1金币 +5 收起 理由
byccc + 5 很给力!

查看全部评分

回复

使用道具 举报

36

主题

2050

回帖

2158

积分

至尊会员

积分
2158
发表于 2023-5-25 10:37:36 | 显示全部楼层
Clion相比VSCode好用不,看到不少人在用。
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115988
QQ
 楼主| 发表于 2023-5-25 10:54:44 | 显示全部楼层
byccc 发表于 2023-5-25 10:37
Clion相比VSCode好用不,看到不少人在用。

第一次用得折腾会才行,我昨天花了不少时间才把环境弄好。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115988
QQ
 楼主| 发表于 2023-5-26 05:33:01 | 显示全部楼层
忙于周报,没顾上更新,白天找个时间更新下。
回复

使用道具 举报

2

主题

74

回帖

80

积分

初级会员

积分
80
发表于 2023-5-26 10:37:35 | 显示全部楼层
老版本看着顺眼。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115988
QQ
 楼主| 发表于 2023-5-26 10:52:46 | 显示全部楼层
CoderXMan 发表于 2023-5-26 10:37
老版本看着顺眼。

这个用的是最新版2023,  并启用了他们的处于beta阶段的UI皮肤。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115988
QQ
 楼主| 发表于 2023-5-26 17:05:41 | 显示全部楼层
已经更新。
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2024-8-14 00:37:46 | 显示全部楼层
本帖最后由 星林 于 2024-8-14 09:59 编辑

已按照楼主方法配置,验证了此方法可行。[img][/img]
回复

使用道具 举报

4

主题

22

回帖

34

积分

新手上路

积分
34
发表于 2024-11-14 15:45:56 | 显示全部楼层
星林 发表于 2024-8-14 00:37
已按照楼主方法配置,验证了此方法可行。[/img]

如何实时查看变量(刷新)
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115988
QQ
 楼主| 发表于 2024-11-15 09:42:36 | 显示全部楼层
回复

使用道具 举报

0

主题

4

回帖

4

积分

新手上路

积分
4
发表于 2024-11-20 21:41:56 | 显示全部楼层
请问一下,照着配置了,昨天还好好的可以正常烧录和调试,今天就一直报错不行了,一直报同样的错,用的是h7-tool带的杜邦线,用上位机里面的烧录器能够正常烧录,在STM32Cubeide里面也是报同样的错误

[C] 纯文本查看 复制代码
C:\software_dvlp\OpenOCD-20240916-0.12.0\bin\openocd.exe -s C:\software_dvlp\OpenOCD-20240916-0.12.0\share\openocd\scripts -f myboard\dap_link_stm32f4x.cfg -c "tcl_port disabled" -c "gdb_port disabled" -c "tcl_port disabled" -c "program \"C:/Users/kstor/workspace/Projects/kw407a/demo/cmake-build-debug/demo.elf\"" -c reset -c shutdown
Open On-Chip Debugger 0.12.0 (2024-09-16) [[url]https://github.com/sysprogs/openocd[/url]]
Licensed under GNU GPL v2
libusb1 d52e355daa09f17ce64819122cb067b8a2ee0d4b
For bug reports, read
        [url]http://openocd.org/doc/doxygen/bugs.html[/url]
Info : auto-selecting first available session transport "swd". To override use '
transport select <transport>'.
Warn : Transport "swd" was already selected
adapter speed: 4000 kHz
DEPRECATED! use 'tcl port' not 'tcl_port'
DEPRECATED! use 'gdb port', not 'gdb_port'
DEPRECATED! use 'tcl port' not 'tcl_port'
Info : Using CMSIS-DAPv2 interface with VID:PID=0xc251:0xf00a, serial=003F003532
32511836303936
Warn : could not claim interface: Operation not supported or unimplemented on th
is platform
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB read: Entity not found
Error: error submitting USB write: Entity not found
Error: CMSIS-DAP command CMD_INFO failed.
** OpenOCD init failed **
shutdown command invoked
屏幕截图 2024-11-20 213704.png
photo_2024-11-20_21-40-30.jpg
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115988
QQ
 楼主| 发表于 2024-11-21 02:04:59 | 显示全部楼层
臭臭泥_ 发表于 2024-11-20 21:41
请问一下,照着配置了,昨天还好好的可以正常烧录和调试,今天就一直报错不行了,一直报同样的错,用的是h7 ...

1、看下TOOL上电后首界面的USB电压值是多少,要在4.7X及其以上。
2、TOOL重新上电,不要进入这个专门的DAPLINK页面,保持在上电首界面,然后测试连接效果看看。
3、前两个已经测试了,这个加上试试

下载.png
回复

使用道具 举报

0

主题

4

回帖

4

积分

新手上路

积分
4
发表于 2024-11-21 11:12:02 | 显示全部楼层
eric2013 发表于 2024-11-21 02:04
1、看下TOOL上电后首界面的USB电压值是多少,要在4.7X及其以上。
2、TOOL重新上电,不要进入这个专门的D ...

谢谢!
添加了 cmsisi_dap_backend hid 这行后烧录和调试都正常了

[C] 纯文本查看 复制代码
C:\software_dvlp\OpenOCD-20240916-0.12.0\bin\openocd.exe -f interface/cmsis-dap.cfg -c "adapter speed 10000" -c "transport select swd" -c "cmsis_dap_backend hid" -f target/stm32f4x.cfg -c "init;reset halt;"
Open On-Chip Debugger 0.12.0 (2024-09-16) [[url]https://github.com/sysprogs/openocd[/url]]
Licensed under GNU GPL v2
libusb1 d52e355daa09f17ce64819122cb067b8a2ee0d4b
For bug reports, read
        [url]http://openocd.org/doc/doxygen/bugs.html[/url]
adapter speed: 10000 kHz
DEPRECATED! use 'cmsis-dap backend', not 'cmsis_dap_backend'
Info : CMSIS-DAP: SWD supported
Info : CMSIS-DAP: Atomic commands supported
Info : CMSIS-DAP: Test domain timer supported
Info : CMSIS-DAP: FW Version = 2.0.0
Info : CMSIS-DAP: Interface Initialised (SWD)
Info : SWCLK/TCK = 1 SWDIO/TMS = 1 TDI = 0 TDO = 0 nTRST = 0 nRESET = 1
Info : CMSIS-DAP: Interface ready
Info : clock speed 2000 kHz
Info : SWD DPIDR 0x2ba01477
Info : [stm32f4x.cpu] Cortex-M4 r0p1 processor detected
Info : [stm32f4x.cpu] target has 6 breakpoints, 4 watchpoints
Info : [stm32f4x.cpu] Examination succeed
Info : [stm32f4x.cpu] starting gdb server on 3333
Info : Listening on port 3333 for gdb connections
[stm32f4x.cpu] halted due to breakpoint, current mode: Thread
xPSR: 0x01000000 pc: 0x080006ac msp: 0x20020000
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : accepting 'gdb' connection on tcp/3333
Info : device id = 0x101f6413
Info : flash size = 1024 KiB
Info : flash size = 512 bytes
Warn : Prefer GDB command "target extended-remote :3333" instead of "target remo
te :3333"
调试器已连接至 localhost:3333


也就是说后端通信模式得设置为hid模式,不用winusb模式是吗
还是说我缺少什么驱动用不了winusb
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115988
QQ
 楼主| 发表于 2024-11-21 11:27:08 | 显示全部楼层
臭臭泥_ 发表于 2024-11-21 11:12
谢谢!
添加了 cmsisi_dap_backend hid 这行后烧录和调试都正常了

现在的OpenOCD不支持WinUSB。
回复

使用道具 举报

0

主题

4

回帖

4

积分

新手上路

积分
4
发表于 2024-11-21 11:46:45 来自手机 | 显示全部楼层
eric2013 发表于 2024-11-21 11:27
现在的OpenOCD不支持WinUSB。

好的好的,谢谢!
再请问一下,一般下载速度是怎么选择,现在选择的是10MHz
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115988
QQ
 楼主| 发表于 2024-11-22 10:30:09 | 显示全部楼层
臭臭泥_ 发表于 2024-11-21 11:46
好的好的,谢谢!
再请问一下,一般下载速度是怎么选择,现在选择的是10MHz

一般就用10M即可,不正常的时候,可以考虑降低速度。
回复

使用道具 举报

0

主题

4

回帖

4

积分

新手上路

积分
4
发表于 2024-11-22 22:23:29 | 显示全部楼层
eric2013 发表于 2024-11-22 10:30
一般就用10M即可,不正常的时候,可以考虑降低速度。

好的,谢谢!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-6-1 14:43 , Processed in 0.311465 second(s), 30 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表