77 lines
2.0 KiB
Markdown
77 lines
2.0 KiB
Markdown
# ESP32-C2 硬件约束与踩坑
|
||
|
||
> **芯片:esp32-c2** | **类别:constraints** | **信源:** [Espressif 官方文档](https://docs.espressif.com)
|
||
|
||
## 1. GPIO 数量极度有限 ⚠️ 首要问题
|
||
|
||
- SiP Flash 型号 **仅 14 个 GPIO 可用**(GPIO11–17 被 Flash 占用)
|
||
- 比 C3(22 个)少 8 个,比 ESP32(34 个)少 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 通道 ADC1(GPIO0–4),无 ADC2
|
||
- 推荐工作范围 0–2800 mV(非 0–3300 mV)
|
||
- 无 ADC/WiFi 冲突(RISC-V 架构)
|
||
- 最高采样率 100 Ksps
|
||
|
||
## 6. Strapping 引脚
|
||
|
||
- **GPIO8**: 启动模式引脚
|
||
- **GPIO9**: 启动模式引脚
|
||
|
||
> 仅 2 个 Strapping,比 C3(3个)更简单。
|
||
|
||
## 7. USB-JTAG
|
||
|
||
- GPIO18/19 默认 USB Serial/JTAG
|
||
- 切 GPIO 后 USB 烧录功能失效,只能 UART
|
||
|
||
## 8. RTC 唤醒
|
||
|
||
- Deep-sleep: GPIO0–5
|
||
- Light-sleep: GPIO0–20
|
||
|
||
## 9. 供电
|
||
|
||
- 3.0–3.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
|
||
|