使用ESP开发板作为USB-UART桥
ESP开发板通常带有板载USB接口,可能是集成在芯片中(例如ESP32-S系列)或通过板载USB-UART桥芯片实现。 然而,一些基于ESP的设备如果不是为开发设计的,可能不会考虑这一点,并且仅暴露UART0引脚(TX和RX)用于烧录目的。
通常情况下,你会使用一个专用的USB-UART接口板来完成这个任务,但如果没有这样的设备怎么办? 在这种情况下,可以使用一个带有USB-UART桥芯片的开发板来烧录另一个设备。这是通过将ESP芯片置于复位状态实现的,这样它就不会干扰桥芯片的操作。
这不需要在开发板上烧录任何固件,也不会改变已经烧录的内容——它纯粹是使用串行接口芯片的一种方式。
在本指南中,我们将带有功能性USB_UART桥芯片的开发板称为烧录板。
确保你已经阅读了物理连接到您的设备,以便正确理解你的烧录开发板的功能。

你需要进行以下电气连接:
ℹ️ Note
大多数ESP32 S和C系列开发板不带有独立的USB-UART芯片——它们将USB-UART集成在ESP中。有关ESP32-S系列的说明,请参见下文。
两个板上的5V连接可能标记为
5V
或VIN
。有些板可能没有5V连接,并且只需要3.3V。除了从烧录板为目标板供电外,还可以使用单独的电源,只需确保所有地线引脚都连接在一起。
- 在烧录开发板上将
EN
和GND
连接在一起 - 烧录开发板上的
+5.0V
或3V3
分别连接到目标设备的VIN
或3V3
- 烧录开发板的地线或地线连接到目标设备的地线
- 烧录开发板的
TX
连接到目标设备的TX
- 烧录开发板的
RX
连接到目标设备的RX
通过将EN
连接到烧录板的地线来拉低EN
,可以防止烧录模块上的ESP芯片启动并污染串行线路。
一旦连接完成,通过USB将烧录板连接到计算机,并使用你打算使用的任何方法继续烧录目标板。ℹ️ Note
如果板之前没有加载ESPHome,可能需要将
IO0
引脚拉低(即连接到GND
),以强制板进入烧录模式。 这必须在通电之前完成。不要用3V3 LDO将3V3连接到目标设备的VIN,因为这可能导致电压骤降。
使ESP32-S系列开发板充当USB-UART桥
使用ESP32-S2/S3开发板的用户可以查看https://github.com/espressif/esp-usb-bridge。 但请注意,它要求你首先使用ESP-IDF将你的S2/S3板烧录成USB_UART桥的形式。 在SDKconfig中,请确保验证TxD/RxD信号的GPIO引脚。
使用ESP32-S开发板烧录目标设备所需的连接如下:
- 烧录开发板上的
VU/VUSB/5V
或3V3
分别连接到目标设备的VIN
或3V3
- 烧录开发板的地线或地线连接到目标设备的地线
- 烧录开发板的
TxD
连接到目标设备的RX
- 烧录开发板的
RxD
连接到目标设备的TX
由于我们使用ESP的内部UART,TX和RX线路应该是交叉连接的。 这与之前提到的带有外部USB_UART桥芯片的开发板形成对比。
ℹ️ Note
由于我们已经使我们的ESP32-S系列板充当USB_UART桥,因此在该板上烧录另一个二进制文件将不起作用,因为暴露的COM端口对应于USB_UART桥。 为此,你需要首先手动将其置于DOWNLOAD模式。(通过按住RESET并轻按BOOT按钮)