跳到主要内容
版本:Next

3.1.7:调试器使用教程

1. IDE 支持

  • IAR,任意版本,CMSIS-DAP V1接口
  • IAR,>=7.40.2,CMSIS-DAP V2接口
  • Keil,任意版本,CMSIS-DAP V1接口
  • Keil,>=5.36,CMSIS-DAP V2接口
  • Segger Embedded Studio,CMSIS-DAP V1接口
  • Segger J-Flash,==V7.22B,CMSIS-DAP V1接口
  • OpenOCD
  • PyOCD
  • Probe RS
  • FreeMASTER,CMSIS-DAP V1接口
  • RT-Thread Studio
  • 其他待补充

2. 常见IDE设置方法

2.1 MDK 调试设置

按照如下的流程,打开项目设置,选择CMSIS-DAP 调试器,如下图所示:

image-20230304120524717

按照如下的设置,调整调试器的基本设置,并检查目标芯片是否连接正常,如下图所示,没问题之后,进入下一步。

image-20230304120816133

Flash Download 设置如下,根据实际的项目要求,设置合适的擦除方式,以及Program、Verify、Reset and Run 选项,并添加当前芯片的flash 算法,如下图所示

image-20230304122416442

提示
  • 擦除方式选择:如果需要保留芯片的某些数据,比如设置数据,签名信息,一般选择擦除方式为 Sector Sections
  • Reset and Run:在现在固件后要执行复位并运行,需要勾选Reset and Run 选项

针对高级用户,可以根据需要调整自定义调试设置,如下所示:

image-20230304123245601

检查Use Debug Driver选项,启用硬件调试器,此选项默认是开启的,如遇到问题,此选项也是重点需要检查的设置,如下所示

image-20230304123555568

检查设置之后,即可正常进入调试。

image-20230304123732246

2.1.1 操作示范

gif

2.1.2 视频演示

2.2 IAR 调试设置

项目右键,进入 Options 设置,切换到 General Options 标准设置页面,检查Target -> Device 是否选择正确,如下所示。

imgimg

进入到Debugger 菜单,Setup 标签页面,选择 Driver 为:CMSIS-DAP 设备,根据需要可以勾选 Run to main 选项,如下所示。

img

在Debugger -> CMSIS-DAP 的 Interface 标签页中,选择接口为 SWD,如下所示

img

经过以上的设置就可以进行芯片的调试开发。

2.1.1 演示视频

2.3 RT-thread Studio 调试设置

RT - thread Stduio 下载地址:https://www.rt-thread.org/studio.html

进入SDK Manager ,如下所示:

image-20230304125603458

检查当前芯片支持包,RT-thread 源码,以及Pyocd 是否安装。

image-20230304125916265

提示

通过DAPLink进行项目调试,必须使用Pyocd 或者 OpenOCD 作为调试器的Adapter ,最终通过gdb 连接进行调试。

新建RT-Thread 项目,如下所示:

image-20230304125439083

设置调试器,如下所示:

image-20230304130651051

配置完成后,生成项目,即可进行下载和调试,如下:

image-20230304130951610

提示

在SDK-manager 中安装好 Pyocd 或者 Openocd 是必须的,

2.4 其他IDE教程

3. 常见问题报错

3.1 目标芯片不匹配项目

常见错误描述如下:

  • Connection refused due to device mismatch!(Not a genuine ST Device! Abort connection).
  • PDSC : Sequence Execution failed.

上述问题可能是由于购买芯片不是原装芯片,详情请见 目标芯片不匹配

3.2 连接设备(芯片)失败

  • No Debug Unit Device found
  • SWD/JTAG Communication Failure
  • RDDI-DAP ERROR

上述问题详情请见 通信问题

3.3 编程失败

  • Flash Timeout. Reset the Target and try it again.
  • Error : Flash Download failed - "Cortex-M4"
  • Could not stop Cortex-M device!Please check the JTAG cable.
  • Error : Flash Download failed - Target DLL has been cancelled

上述问题详情请见 编程失败

3.4 校验失败

  • Contents mismatch at: 08000064H(Flash=FFH Required=0)

上述问题详情请见 校验失败

3.5 Flash配置错误

  • Cannot Load Flash Programming Algorithm!
  • Overlapping of Algorithms at Address 08000000H

上述问题详情请见 Flash 配置1Flash 配置2