ESP32 进入下载(烧录)模式完整方法

ESP32 进入下载(烧录)模式完整方法

核心原理

ESP32 复位(EN 引脚上升沿瞬间)检测到 GPIO0 为低电平,就会进入 UART 下载模式;GPIO0 高电平则正常运行 Flash 程序Espressif Systems。

引脚定义:

  • GPIO0 = BOOT 按键(启动选择脚)
  • EN(CHIP_PU) = 复位按键
自动下载电路原理图

一、标准开发板手动按键进入(最常用)

绝大多数 ESP32-WROOM、ESP32-DevKit 板都有 BOOT、EN 两个按键,步骤严格按顺序:
  1. 按住 BOOT 不放
  2. 短按一下 EN 然后立刻松开 EN
  3. 继续按住 BOOT 0.5 秒再松开

    ✅ 此时已经进入下载模式,串口会打印 waiting for download

进入下载模式串口日志

极简口诀

按住 BOOT → 按一下 EN 松手 → 再松 BOOT

二、裸板 / 最小系统手动接线进入

没有按键时直接接线:
  1. GPIO0 接到 GND(拉低)
  2. EN 引脚断电再上电 / 给一个复位脉冲
  3. 上电完成后可以断开 GPIO0 与 GND,保持下载模式

三、自动进入下载(官方开发板默认)

带 CH340/CP2102 的成品 ESP32 自带自动下载电路:
  • Arduino IDE、ESP-IDF、esptool.py 点击上传,软件自动控制串口 DTR/RTS 电平,自动拉低 GPIO0 + 复位,无需手动按键
  • 烧录失败、识别不到端口时,改用上面手动按键方式即可

四、判断是否成功进入下载模式

串口监视器(波特率 115200)出现下面日志即为成功:
rst:0x1 (POWERON_RESET),boot:0x3 (DOWNLOAD_BOOT(UART0/UART1/SDIO_REI_REO_V2))

waiting for download

五、常见问题

  1. 按了按键进不去:松手时序错,必须先松 EN、后松 BOOT
  2. 自动下载失效:USB 转串口芯片损坏、DTR/RTS 线路虚焊
  3. ESP32-C3/S3 引脚不同:C3 是 GPIO9 控制下载,不要沿用 GPIO0 操作

发表评论