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

77 lines
2.0 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-C2 硬件约束与踩坑
> **芯片:esp32-c2** | **类别:constraints** | **信源:** [Espressif 官方文档](https://docs.espressif.com)
## 1. GPIO 数量极度有限 ⚠️ 首要问题
- SiP Flash 型号 **仅 14 个 GPIO 可用**GPIO1117 被 Flash 占用)
- 比 C322 个)少 8 个,比 ESP3234 个)少 20 个
- 规划外设时必须精打细算,可能不够用
## 2. 无通用 SPI ⚠️ 容易被忽略
- SPI0/1 被 Flash 完全占用
- **没有 SPI2(通用 SPI**,无法接 SPI 外设(如 SPI LCD、SPI Flash 等)
- 如果项目需要 SPI 外设 → 换 C3 或更高系列
## 3. 无 I2S
- C2 没有 I2S 接口
- 需要音频输出或 PDM 麦克风 → 换 C3 或 S3
## 4. 仅 1 个 UART
- 只有 UART0(默认 GPIO20/21),同时用于烧录和日志
- 如果项目需要独立的调试串口 + 通信串口 → 不够用
- 换 C3 有 2 个 UART
## 5. ADC 限制
- 仅 5 通道 ADC1GPIO04),无 ADC2
- 推荐工作范围 02800 mV(非 03300 mV
- 无 ADC/WiFi 冲突(RISC-V 架构)
- 最高采样率 100 Ksps
## 6. Strapping 引脚
- **GPIO8**: 启动模式引脚
- **GPIO9**: 启动模式引脚
> 仅 2 个 Strapping,比 C33个)更简单。
## 7. USB-JTAG
- GPIO18/19 默认 USB Serial/JTAG
- 切 GPIO 后 USB 烧录功能失效,只能 UART
## 8. RTC 唤醒
- Deep-sleep: GPIO05
- Light-sleep: GPIO020
## 9. 供电
- 3.03.6V,推荐 3.3V
- LDO ≥ 500 mA
- WiFi TX 峰值约 150 mA(功耗低于 C3)
## 10. 什么时候选 C2,什么时候换 C3
- **极低成本 IoT 节点**: 需要通用 SPI
- **GPIO ≤ 10 个**: GPIO > 14 个
- **不需要 SPI 外设**: 需要 I2S 音频
- **不需要 I2S / 音频**: 需要 2 个 UART
- **ESP8266 升级(需要 BLE**: 需要 DAC / 触摸
## 11. 常见踩坑
- **选了 C2 发现接不了 SPI LCD**: 无通用 SPI
→ 换 C3
- **GPIO 不够用**: SiP 型号仅 14 GPIO
→ 换 C3 或非 SiP 型号
- **需要两个串口不够**: 仅 1 个 UART
→ 换 C3
- **需要 I2S 音频输出**: 无 I2S
→ 换 C3