ESP32-S3 使用内置USB下载程序、调试、LOG相关问题总结

目录

Preface:

(一)为电脑安装USB驱动

(二)Platformio工程

(三)相关文章

(四)总结


Preface:

esp32-s3有一个built-in的usb-jtag,可以用来下载、调试、打印日志,但是网上关于如何使用它的文章相对较少,所以这里总结了一些我使用的记录~

目前是只弄了platformio版本的(2024/1/10),后面有需要再弄idf版本

(一)为电脑安装USB驱动

本人使用的是Windows10,没用Ubuntu,所以所有环境都是基于Win的。

虽然官方文档有教怎么用,但是说得不是很清楚,反正我是没看懂怎么用。。(可能我比较菜

然后就一直找,搞了好几天终于搞定了~

首先,需要用一个软件:Zadig,来为电脑安装驱动,作用就是烧录时,软件能够识别到。安装完成后双击打开,如下:

然后选择Options->List all devices后,就能检测到计算机上的所有端口了:

注意:其实在设备管理器也能看到端口,但是如果设备管理器一直在刷新(我估计是因为esp32没有进入下载模式导致的),就需要先让ESP32进入Boot模式,确定设备管理器能正常看到USB设备且没有一直刷新。

然后回到Zadig里面,下拉选择USB JTAG/serial debug unit (Interface 0),并且选择新的驱动为USB Serial(CDC)—(Communication Device Class),点击更新/安装驱动,等待结束(我这里已经更新好了):

然后,再选择USB JTAG/serial debug unit (Interface 2),新驱动选择为libusbK,然后点更新,等待结束(我这里已经更新好了):

那么,USB CDC的驱动就已经安装好了;

(二)Platformio工程

新建好工程后,在platformio.ini文件里面,这里我首先选择串口monitor的速度为115200(自定);(注意:在ESP32-S3使用Arduino的api时,如果使用的是正常串口打印,也就是TXD&RXD的话,要用Serial0.print才能正常打印;而使用USB CDC时,要使用Serial.print才能打印)

然后,为了使能USB CDC下载,需要在platformio.ini文件里添加编译命令如下:

build_flags = -DARDUINO_USB_CDC_ON_BOOT=1   ; Enable USB CDC
              -DCORE_DEBUG_LEVEL=1  ; Set debug level

如下图:

接着在主函数里进行测试:

因为platformio会自动选择COM口号,所以就不用管是哪个COM口了,直接编译上传:

然后打开串口监视器:

可以看到已经成功编译上传,并且能够通过该USB CDC实现串口输出以及LOG;

(三)相关文章

Thanks for the following articles:

[1] USB Settings for Logging with the ESP32-S3 in PlatformIO

[2] ESP32S3 esp-idf: Platformio serial monitor not working on USB CDC interface

[3] USB CDC and DFU Flashing

esp32s3 built-in usb-jtag debugging(if needed) via platformio:

[3] How to use JTAG built-in debugger of the ESP32-S3 in PLATFORMIO

 esp32s3 built-in usb-jtag debugging via platformio---Windows usb driver

[4]  Debugging Dice Device

(四)总结

英语真得好好学(实话)

Google真好用

完~


以上均为个人学习心得,如有错误,请不吝赐教~

THE END

相关推荐

  1. esp32s3使用双通道通信解决TCP粘包问题

    2024-01-11 08:00:03       28 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-11 08:00:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-11 08:00:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-11 08:00:03       82 阅读
  4. Python语言-面向对象

    2024-01-11 08:00:03       91 阅读

热门阅读

  1. ruoyi el-table调整

    2024-01-11 08:00:03       60 阅读
  2. openssl缺少libssl.so.1.1库文件

    2024-01-11 08:00:03       57 阅读
  3. metartc5_jz源码阅读-udp->receive

    2024-01-11 08:00:03       58 阅读
  4. 什么是CSS Hack

    2024-01-11 08:00:03       59 阅读
  5. 应用举例:模板方法设计模式(抽象类)

    2024-01-11 08:00:03       52 阅读
  6. Django REST框架

    2024-01-11 08:00:03       53 阅读
  7. win10使用debug,汇编初学

    2024-01-11 08:00:03       51 阅读
  8. 用汇编编写加解密函数

    2024-01-11 08:00:03       58 阅读
  9. web学习笔记(十四)

    2024-01-11 08:00:03       65 阅读
  10. 【Pytorch】在多进程中使用 CUDA

    2024-01-11 08:00:03       53 阅读
  11. 数据库基础5

    2024-01-11 08:00:03       48 阅读