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

  • 26
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值