STM32CubeIDE用DAP调试的超级无敌简单方法——2022.01.07

STM32CubeIDE作为ST生态中重要的一环,必然以支持自家的ST-LINK为第一要务。不过当我们手上没有ST-LINK只有其他调试器时也是可以debug和下载的,只需要做一丢丢的简单操作,下面这个方法个人觉得比网上大多数方法都要简单很多,不需要调用STM32CubeIDE外部的OpenOCD喔(滑稽)。

转载请在醒目位置标注原作者及原文链接
转载请在醒目位置标注原作者及原文链接
转载请在醒目位置标注原作者及原文链接

准备工作

软件:

  • 最新版本的STM32CubeIDE

硬件:

  • 野火 STM32H743挑战者 开发板(等待调试的目标硬件,我手上有这块板就以他做演示了)
  • fireDAP调试器

开始设置

新建工程之类的就不说了,不在本文讨论范围,直接从debug设置开始。

不过需要提醒的是工程路径不能有中文,要不然可能会有一些奇奇怪怪的问题。

  1. 首先新建一个debug配置。点击debug Configurations,在弹出的窗口中双击STM32 Cortex-M C/C++ Application,新建debug配置。
    在这里插入图片描述
    在这里插入图片描述
  2. 在右侧窗口中选择调试器选项卡,然后按照下图中标注的顺序依次设置。
    在这里插入图片描述
  3. 设置完成后,在STM32CubeIDE的界面左侧,能看到刚刚生成的.cfg调试器配置文件,双击打开它,如果双击打不开的话,可以在自己的IDE工程目录下找到它,用notepad++或者vscode都可以打开。
    打开之后先另存为一个新的.cfg文件,切记一定要另存!另存!另存! 不然接下来的修改,IDE会直接覆盖掉。
    在这里插入图片描述
  4. 打开另存的新的.cfg文件,按照下图修改里面的内容,然后保存退出文件编辑。
    在这里插入图片描述
  5. 最后,再次进入debug Configurations界面,在这里把刚才修改的文件添加进来,整个设置工作就做完了。
    在这里插入图片描述

进入调试

所有工作做完以后就可以愉快的debug啦,点击虫子图标进入debug,如果一切顺利,可以在IDE下方的console窗口看到类似这样的信息。
在这里插入图片描述
随着代码运行,IDE界面右侧能看到寄存器值改变就说明配置成功,可以开干了。XD
在这里插入图片描述

额外配置

上面的配置主要针对带有硬件rst线的接线方式,有时候rst线不一定会引出来,这时候直接用这个配置就可能出问题,这里说一下其他不依赖硬件rst线的配置步骤。

其实和上面的配置基本差不多,唯一不同的地方在生成.cfg文件之前,具体在上面第2步,执行完第2步图中前两个标号以后找到Configuration Script,点击show generator options。
在这里插入图片描述
可以看到多出来一些选项,在Reset Mode下拉框中可以选择不同的复位模式,选择好之后,剩下的步骤就跟上面完全一样了。
在这里插入图片描述

一些注意事项

  1. 市面上的DAP各种各样,有些型号DAP默认需要外部参考电平,所以最好把DAP的VREF接到目标芯片的3.3V
  2. 尽可能保持CubeIDE在最新版本
  3. 如果是刚装完CubeIDE,不管是什么系统平台都强烈建议先重启一次系统再配置DAP
  4. DAP与目标芯片调试接口之间的接线要尽可能短,并且要注意是否有接触不良的情况
  5. DAP和目标芯片需要保证各自的供电正确且稳定
  6. 如果是虚拟机运行CubeIDE,请确保DAP正确挂载在虚拟机中
  7. Linux或MacOS如果在装CubeIDE之前已经安装了其他版本的OpenOCD,可能需要卸载掉之前的OpenOCD后再装CubeIDE
  8. 如果电脑上插着不止1个DAP,可能进Debug的时候会报错,这个好像是因为OpenOCD的限制,区分不了多个DAP
STM32CubeIDE可以使用DAP(Debug Access Port)仿真器来进行调试和仿真。DAP是一种用于连接和通信的调试接口,常见的DAP仿真器包括ST-Link和J-Link等。 在STM32CubeIDE中,你可以通过以下步骤来使用DAP仿真器进行调试: 1. 连接仿真器:将DAP仿真器(如ST-Link)连接到目标STM32微控制器的调试接口。通常,仿真器会通过USB接口与计算机连接。 2. 配置仿真器:在STM32CubeIDE的项目配置中,选择正确的仿真器类型和连接方式。例如,选择ST-Link作为仿真器,并选择通过USB连接。 3. 配置目标设备:在STM32CubeIDE的项目配置中,选择目标设备的型号和调试接口。确保与实际连接的设备型号和接口一致。 4. 启动调试会话:在STM32CubeIDE的工具栏或菜单中,选择启动调试会话。这将启动调试器并与目标设备建立连接。 5. 调试应用程序:一旦调试会话建立成功,你可以设置断点、监视变量、单步执行等操作来调试你的应用程序。通过STM32CubeIDE提供的调试界面,你可以实时查看寄存器状态、内存内容和变量值等信息。 需要注意的是,具体的步骤可能会因为使用的仿真器型号和目标设备型号而有所不同。请参考STM32CubeIDE的官方文档和相关资源,以获得更详细的指导和说明。 总之,通过使用DAP仿真器,你可以在STM32CubeIDE中进行调试和仿真,以验证和调优你的STM32微控制器应用程序。
评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值