Windows环境下用Jlink调试ESP32

Windows环境下用Jlink调试ESP32,第1张

本文记录了我在 Windows 环境下用 Jlink 调试 ESP32 时遇到的问题,以及相应的解决办法,并在文章末尾处附加了解决问题时查找的资料。

调试之前首先需要将 Jlink 与 ESP32 相连,接口图如下:

引脚图如下:

Jlink 与 ESP32 连接好后,我们就可以开始调试了。

ESP32 利用 openocd 来进行调试,我们可以使用命令 openocd -f interface/jlink.cfg -f board/esp-wroom-32.cfg 来启动一个 gdb server ,启动成功后我们就可以使用 gdb(交叉编译器版本)连接这个 server 了。但是遇到了下述问题,

错误信息:

错误信息提示没有找到 J-Link 设备,这是由于 Windows 下没有 libusb,需要更新 Jlink 驱动。解决办法如下:

我这里用两个 Jlink (不同固件)测试,驱动名称分别为:

参考:

更新了 Jlink 驱动后,又遇见了下述问题:

第一个错误提示为 Error: JTAG I/O operation failed: 0x1. ,这种问题会出现在 openocd-esp32 2020 及以后的版本。

解决办法为:

这样,就能成功地启动 gdb server 了。

参考:

办法总比困难多,遇见困难就是一个提升自我的过程。

对准你要调的函数前加2行

<1>

#pragma

SAVE

<2>

#pragma

OT(0)

yourFunction()

{

}

<3>

#pragma

RESTORE

即可!意图为:不要编译器做任何优化。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12065076.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存