4.2 KiB
4.2 KiB
ESP32-C3 GPIO 引脚映射
芯片:esp32-c3 | 类别:gpio | 信源: Espressif 官方文档
系统引脚(System Pins)
- EN (CHIP_PU) [I, Pin 2 QFN32 / WROOM-02 模组 Pin2]
- 芯片使能。高电平=正常工作,低电平=芯片关闭。
- 禁止浮空! 必须外部上拉到 VDD(典型 10kΩ)。
- 上电时序:VDD 稳定 >=50µs (t_STBL) 后 EN 拉高;EN 拉低 >=50µs (t_RST) 触发复位。
- VDD [P]
- 芯片主供电 3.0-3.6V,推荐 3.3V,需 >=500mA。
- VDD3P3_CPU(数字 GPIO 域)/ VDD3P3_RTC(RTC 域)/ VDD_SPI(Flash 供电域)。
- 内部数字 LDO 输出 1.1V 供数字核心,RTC LDO 输出 1.1V 供 RTC 域。
- GND [P]
- 所有 GND 焊盘必须全部连接到电源地平面。
- XTAL_P / XTAL_N [-]
- 40 MHz 外部高速晶振。不可复用为 GPIO。
- 晶振两端对地各接负载电容(典型 15-22pF,具体值见晶振 datasheet)。
- LNA_IN [I]
- 射频天线输入端口(WiFi 4 + BLE 5.0)。不可复用为 GPIO。
- USB_D- / USB_D+ [I/O, GPIO18 (Pin13 模组) / GPIO19 (Pin14 模组)]
- USB Serial/JTAG。默认上电即启用 USB 上拉电阻。
- 用作普通 GPIO 需固件重配 IO MUX,重配后 USB 功能失效只能通过 UART0 (GPIO20/21) 烧录。
C3 无 DAC、无触摸传感器、无 ULP 协处理器、无以太网 MAC。GPIO12-17 被 Flash 占用。RTC Deep-sleep 唤醒仅 GPIO0-5。
驱动电流
- GPIO18, GPIO19:默认 40 mA — USB/JTAG 引脚,增强驱动能力
- 其他所有 GPIO:默认 20 mA — 标准驱动能力
上电时序
- t_STBL:>= 50 µs — VDD 稳定后到 EN 拉高之间的最短等待时间
- t_RST:>= 50 µs — EN 拉低以触发硬件复位的最短保持时间
- t_H:>= 3 ms — EN 拉高后 Strapping 引脚值被锁存的时间,此后 Strapping 引脚恢复普通 GPIO 功能
EN (CHIP_PU) 引脚绝对不能浮空,必须通过外部上拉电阻(典型 10kΩ)连接到 VDD。
Strapping 引脚(3个)⚠️ 与 D0WD 方向相反
- GPIO2:Pin=Pin5, 上电状态决定=VDD_SPI 电压, 正常启动需要=LOW=3.3V, 备注=禁止接上拉!禁止做 I2C SDA!
- GPIO8:Pin=Pin22, 上电状态决定=ROM 打印 + 下载模式, 正常启动需要=HIGH=关闭打印, LOW=下载, 备注=需上拉 3.3V,与 D0WD 相反
- GPIO9:Pin=Pin23, 上电状态决定=启动模式, 正常启动需要=HIGH=SPI Boot, 备注=需上拉 + BOOT 键
⚠️ 铁律:C3 的 GPIO2/8/9 三根 Strapping 引脚,设计初期就必须标红。GPIO2 绝对不能接任何有上拉的信号线。
ADC 映射
ADC1(5ch,WiFi 可用)
- ADC1_CH0:GPIO=GPIO0
- ADC1_CH1:GPIO=GPIO1
- ADC1_CH2:GPIO=GPIO2, 备注=⚡ Strapping
- ADC1_CH3:GPIO=GPIO3
- ADC1_CH4:GPIO=GPIO4
ADC2(1ch)
- ADC2_CH0:GPIO=GPIO5
12-bit SAR,最高 100 Ksps。C3 无 ADC2/WiFi 冲突(RISC-V 架构已修复)。
USB Serial/JTAG
- USB_D-:GPIO=GPIO18, 说明=默认 USB,切 GPIO 需固件配置
- USB_D+:GPIO=GPIO19, 说明=默认 USB,切 GPIO 需固件配置
所有 GPIO 功能表
- 0:ADC=ADC1_CH0, RTC 唤醒=Deep-sleep, 复用=XTAL_32K_P
- 1:ADC=ADC1_CH1, RTC 唤醒=Deep-sleep, 复用=XTAL_32K_N
- 2:ADC=ADC1_CH2, RTC 唤醒=Deep-sleep, 复用=FSPIQ, Strapping=⚡ VDD_SPI, 备注=禁止上拉!
- 3:ADC=ADC1_CH3, RTC 唤醒=Deep-sleep, 复用=JTAG_MTMS
- 4:ADC=ADC1_CH4, RTC 唤醒=Deep-sleep, 复用=JTAG_MTCK
- 5:ADC=ADC2_CH0, RTC 唤醒=Deep-sleep, 复用=JTAG_MTDI
- 6:RTC 唤醒=Light-sleep, 复用=FSPICLK
- 7:RTC 唤醒=Light-sleep, 复用=FSPID
- 8:RTC 唤醒=Light-sleep, 复用=FSPICS0, Strapping=⚡ 启动+日志, 备注=高电平=进下载
- 9:RTC 唤醒=Light-sleep, 复用=FSPIHD, Strapping=⚡ Boot Mode
- 10:RTC 唤醒=Light-sleep, 复用=FSPIWP/FSPICS1
- 11:RTC 唤醒=Light-sleep, 复用=VDD_SPI
- 12–17:复用=FSPI, 备注=🔒 Flash 占用
- 18:复用=USB_D-, 备注=⚠️ USB 占
- 19:复用=USB_D+, 备注=⚠️ USB 占
- 20:复用=U0RXD
- 21:复用=U0TXD
新手安全 GPIO
GPIO0, GPIO1, GPIO4, GPIO5, GPIO10(避开 Strapping/USB/Flash 冲突)