基于 OpenOCD 的 STM32CubeIDE 开发烧录调试环境搭建-DAPLINK

STM32cubeIDE 是ST官方推出的一款用于开发 STM32 的工具,整合了 STM32CubeMX 和 TrueSTUDIO 而成,对于 STM32 的开发这个工具应该会在未来成为主流,毕竟有官方加持又商用免费。但仿真烧录只支持 J-LINK 和 ST-LINK 或 OpenOCD。

CMSIS-DAP/DAPLink 仿真器是硬件软件均开源的仿真器,相比当前市面上流行的jlink/st-link,烧录速度快,不丢固件,无版权风险,功能丰富,价格低廉,外观简洁精致,能较好的满足电子工程师进行日常的开发调试下载需求。

然而 STM32CubeIDE并没有直接支持它,只能通过 OpenOCD 的方式间接支持。本篇就介绍如何通过 OpenOCD 使得 STM32CubeIDE 支持 DAPLINK 调试工具

测试环境与准备

DAPLink 仿真器购买:淘宝-MUSE LAB 型号: DAPLINk
STM32CubeIDE:V1.5.1
OpenOCD下载:Version 20201228
经测试:淘宝-维特智能 的CMSIS-DAP也使用本教程

部署 OpenOCD

  1. 下载好OpenOCD,解压到任意目录,建议路径不带空格或中文
  2. 并在 bin 目录右键,新建文本文档,并重命名为 DAP-Linkl-stm32F4.bat(前缀名称可以随意,后缀 .bat不能更改)
    重命名
  3. 右键编辑或者使用 vs-code 打开
    编辑bat
  4. 输入以下内容:
openocd -f interface/cmsis-dap.cfg -f target/stm32f4x.cfg

意思是:使用cmsis-dap调试stm32f4,这里默认使用 SWD 接口。通过其他配置,还可以支持 J-link 接口,未做尝试,不再叙述。

后面的 stm32f4x.cfg 需要适配你的芯片型号,具体支持型号可以在 OpenOCD-20201228-0.10.0\share\openocd\scripts\target 的目录,在里面能找到
target
可以看到 stm32 大部分型号都支持了。F1系列 的就改为 stm32f1x.cfg,F7系列 的就改为 stm32f7x.cfg,同理类推。

  1. 单击 DAP-Linkl-stm32F4.bat 执行,会弹出一下窗口,表示连接成功。最小化窗口,保持后台运行。
    打开bat

STM32CubeIDE 配置

  1. 新建测试工程(我的是 LED 亮灭测试)
  2. 单击菜单栏 Debug图标(绿色甲壳虫)旁的下拉按钮,单击选择 Debug Configurations 进入配置界面
    debug打开
  3. 配置如下图所示,
    一定要:取消勾选 Live Expressions,网上教程都没这一步,导致调试失败。
    取消勾选原因:Does STM32CubeIDE not support live variable watching?
    debug配置
  4. 弹窗单击 Switch ,进入调试界面
    switch

仿真测试

进入仿真调试界面,可以看到 GPIOC(LED的 IO 为 GPIOC_13) 的 寄存器 ODR 值会随着程序运行改变。
调式

再看另外两个窗口:现场表达式Expressions
可以看到 现场表达式 是无法使用的(由于前面取消勾选了 Live Expressions),但Expressions是可以的。而这两者很相似啊,具体区别也未查到,不知道是软件的bug还是什么情况。反正还是可以实时查看表达式值就很开心😀

以后每次调试都需要单击 DAP-Linkl-stm32F4.bat 并保持后台运行。

参考链接

  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值