Windows ESP32S3的JTAG调试

一、前言

最近有小伙伴使用的是 windows 开发的esp32,在开发过程中,在使用 esp32-s3仿真调试的时候,由于环境问题,一直打开 openocd 错误,导致没有办法使用,这里记录一下过程。

二、配置硬件

ESP32-C3内置了JTAG调试

2.1 配置 ESP32-S3 内置 JTAG 接口

ESP32-C3 内置 JTAG 电路,无需任何额外芯片即可调试。只需要一根连接到 D+/D- 引脚的 USB 电缆。

ESP32-C3 针脚USB信号
GPIO18D-
GPIO19D+
5VV_BUS
GNDGround

请确认用于 USB 通信的 ESP32-C3 引脚未连接到其他可能干扰 JTAG 操作的硬件。

2.2 配置 USB 驱动程序

JTAG通信应该在所有支持的平台上工作。Windows 用户可能会收到LIBUSB_ERROR_NOT_FOUND错误。请使用 ESP-IDF 工具安装器 2.8 (或更新版本),并选择驱动程序“乐鑫 - WinUSB 支持 JTAG (ESP32-C3/S3)”来解决此问题。如果您不想重新运行安装程序,那么可以通过从PowerShell运行以下命令来使用idf-env实现相同的效果:

Invoke-WebRequest 'https://dl.espressif.com/dl/idf-env/idf-env.exe' -OutFile .\idf-env.exe; .\idf-env.exe driver install --espressif

在 Linux 上,需要添加 OpenOCD udev 规则,方法是将以下 udev 规则文件放在文件夹中来完成。/etc/udev/rules.d

参考这个文章:ESP32S3在wsl环境的JTAG、openocd仿真调试-CSDN博客

在这里插入图片描述

  • 设备详情

    在这里插入图片描述

三、软件调试

3.1 如果vscode 调试时打开 openocd 提示错误

Error: libusb_open() failed with LIBUSB_ERROR_NOT_FOUND 
Error: esp_usb_jtag: could not find or open device! 

在这里插入图片描述

那么还是驱动有问题,如果驱动供应商是 微软 提供的,那么驱动就有问题,要 libwdi 才是对的

在这里插入图片描述

3.2 更新驱动

在这里插入图片描述

由于刚刚在 2.2 已经下载配置了驱动,所以这里可以直接自动搜索驱动程序

3.3 vscode打开 OpenOCD

在这里插入图片描述

  • 启动成功、图标会变绿色

    在这里插入图片描述

  • .vscode 目录下新建一个文件 launch.json (这个文件如果自动生成了,那就不用管),并且编辑一下内容

    在这里插入图片描述

    {
      "version": "0.2.0",
      "configurations": [
        {
          "type": "espidf",
          "name": "Launch",
          "request": "launch"
        }
      ]
    }
    

    3.4 打开函数文件,按下 F5 运行调试

    在这里插入图片描述


文章是自己总结而记录,有些知识点没说明白的,请各位看官多多提意见,多多交流,欢迎大家留言
如果技术交流可以加以下群,方便沟通

  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

^Lim

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值