烧录故障排除
连接失败
如果在运行给定命令时出现如“连接失败”这样的错误,造成该错误的原因之一可能是运行 esptool.py
时出现错误。 esptool.py
是构建系统调用的程序,用于重置芯片、与 ROM 引导加载器交互以及烧录固件的工具。可以按照以下步骤进行手动复位,轻松解决该问题。如果问题仍未解决,请参考 esptool 故障排除 获取更多信息。
esptool.py
通过使 USB 至 UART 桥(如 FTDI 或 CP210x)的 DTR 和 RTS 控制线生效来自动复位 ESP32-C3(请参考 与 ESP32-C3 创建串口连接 获取更多详细信息)。DTR 和 RTS 控制线又连接到 ESP32-C3 的 GPIO9
和 CHIP_PU
(EN) 管脚上,因此 DTR 和 RTS 的电压电平变化会使 ESP32-C3 进入固件下载模式。相关示例可查看 ESP32 DevKitC 开发板的 原理图。
一般来说,使用官方的 ESP-IDF 开发板不会出现问题。但是, esptool.py
在以下情况下不能自动重置硬件:
硬件未连接到
GPIO9
和CIHP_PU
的 DTR 和 RTS 控制线。DTR 和 RTS 控制线的配置方式不同。
不存在这样的串行控制线路。
根据硬件的种类,也可以将 ESP32-C3 开发板手动设置为固件下载模式(复位)。
对于乐鑫开发板,可以参考对应开发板的入门指南或用户指南。例如,可以通过按住
Boot
按钮 (GPIO9
) 再按住EN
按钮 (CHIP_PU
) 来手动复位 ESP-IDF 开发板。对于其他类型的硬件,可以尝试将
GPIO9
拉低。