Files
esp32-dev/components/esp32_constraints.md
T
2026-08-05 17:25:09 +08:00

72 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ESP32 硬件约束与踩坑
> **芯片:esp32** | **类别:constraints** | **信源:** [Espressif 官方文档](https://docs.espressif.com)
## 1. ADC2 与 WiFi 冲突 ⚠️ 最常踩的坑
- **使用 WiFi 时 ADC2 完全不可用**ADC2 模块与 WiFi 射频共享内部资源)
- 解决:需要 WiFi + ADC → 只能用 **ADC1**GPIO3239
- 不使用 WiFi 时 ADC2 正常可用
- 即使 WiFi 短暂关闭也无法可靠复用 ADC2(需完全禁用 WiFi 驱动)
## 2. GPIO12 (MTDI) — Flash 电压陷阱 ⚠️ 最危险的坑
- GPIO12=LOW(默认):VDD_SDIO=3.3V → Flash 正常 ✅
- GPIO12=HIGHVDD_SDIO=1.8V → Flash 无法读取 → **变砖**
- **绝对不能在 GPIO12 上接上拉电阻到 3.3V**
- **不能用 GPIO12 做 I2C SDA**(开漏+上拉会让 GPIO12 变高)
- 如果必须用 GPIO12,用外部 **下拉** 电阻
## 3. 仅输入引脚限制
- **GPIO3439**: **无内部上拉/下拉**,外部必须自行加
- **GPIO3439**: **不能做数字输出**
- **GPIO3439**: 不能做 I2C/SPI MOSI/UART TX/PWM 输出
## 4. Flash/PSRAM 引脚占用
- **GPIO611**: 内部 Flash SPI(所有模组)
- **GPIO1617**: 内部 PSRAMWROVER 模组)
## 5. 供电约束
- **工作电压**: 2.73.6V,推荐 **3.3V ±5%**
- **WiFi TX 峰值电流**: ~500 mA
- **供电纹波**: < **75 mVpp**
- **EN 引脚**: 不能浮空,需上拉到 VDD3P3_RTC
- **推荐 LDO**: ≥500 mA 输出能力
## 6. JTAG 引脚冲突
- GPIO12 — MTDI, ⚡ StrappingFlash 电压选择)
- GPIO13 — MTCK, 无冲突
- GPIO14 — MTMS, 无冲突
- GPIO15 — MTDO, ⚡ Strapping
## 7. 外部晶振
- 外部高速晶振:**40 MHz**(必须)
- 外部 RTC 晶振:**32.768 kHz**(可选,用于 Deep-sleep 精确计时)
## 8. 常见踩坑速查
- **用 GPIO12 做输出,板子不启动**: GPIO12 被外部上拉 → Flash 1.8V
→ 避免在 GPIO12 上加外部上拉
- **ADC 读数全是噪音**: 用了 ADC2 且 WiFi 开着
→ 切换到 ADC1GPIO3239
- **GPIO34–39 输出不工作**: 它们是仅输入引脚
→ 换个能做输出的 GPIO
- **上电后直接进下载模式**: GPIO0 被外部拉低
→ 检查 GPIO0 电路
- **Deep-sleep 后 RTC 内存丢了**: RTC Slow 内存只有 8KB 且需特殊 API
→ 使用 `RTC_DATA_ATTR` 属性
## 上电时序要求
- t_STBL**>= 50 µs** — VDD 电源轨稳定后到 EN (CHIP_PU) 拉高之间的最短等待时间
- t_RST**>= 50 µs** — EN 拉低以触发硬件复位的最短保持时间
- t_H**>= 3 ms** — EN 拉高后 Strapping 引脚值被内部锁存的时间,此后 Strapping 引脚恢复普通 GPIO 功能
> CHIP_PU (EN) 引脚**绝对不能浮空**。推荐电路:EN 通过 10kΩ 上拉到 VDD,对地接 1µF 电容做消抖和上电延迟。