前言
使用原生的USB代替UART进行烧录和调试,可以有更快的的烧录速度,如果是直接使用模组画PCB,在BOM上还省了一个TTL转USB芯片,且只需要在软硬件上都配置一次,之后便可即插即用。
一、硬件准备
type_c数据线;
安信可科技ESP-12K的开发板
TYPE-C母座转接测试板(没有的话可以直接剪断一根USB线来焊接)
TYPE-C母座转接测试板和开发板使用4根线连接
ESP-12K开发板 | TYPE-C母座转接测试板 |
---|---|
5V | V |
P19 | D- |
P20 | D+ |
GND | G |
焊接如图
按住开发板的IO0按键,使用数据线将开发板和电脑连接后,松开按键;
也可以不按IO0按键,直接用数据线将开发板和电脑连接,开发板上电后,先按住IO0,后按一次EN,再松开IO0。
此举目的是:让芯片复位过程中检测IO0的电平为低,进入下载模式
按上述操作执行后打开设备管理器,会看到有一个 USB串行设备 和 ESP32-S2
二、软件准备
前提:VS code已配置好的ESP32系列芯片开发环境
1.创建例程
打开VScode,按F1后,输入Show Examples Projects
再次点击
选择 hello_world 例程,放在自己创建的目录下
2.USB配置
芯片选择esp32s2 (插入不同的开发板则选对应的芯片,前提是支持USB OTG)
点击左下角的齿轮符号menuconfig
ps:此处可能会打不开,一般是点击清除,清除编译文件可以解决
在上方的搜索框里输入:USB
按下图进行勾选,最后点击保存
ps:选择USB CDC后,ESP32S2-specific选项会消失
端口选择刚才在设备管理器中看到的USB串行设备COM16
芯片选择ESP32S2
点击构建,构建需要一定的时间,可以点终端查看进度
最后点击烧录
这一次烧录会出现一个警告,并且烧录不成功,不过到此步以后,已经是可以能用USB烧录固件了,原因不在此深究。
可以拔下数据线再连接上,不操作任何硬件,或者按一下EM键进行复位,在设备管理器上依旧能看到USB串行设备COM16。
再次进行端口选择,点击烧录,出现下图最后的两行表示烧录成功
打开串口调试窗口
总结
至此,ESP32S2使用原生的USB烧录代码教程结束,此教程关键的地方在于menuconfig的USB设置,更换工程后,记得去配置USB。
分享一个复位键与IO0电平控制键相结合的的电平锁存电路。
如果对您有用,请点个赞吧!