Initial: knowledge base

This commit is contained in:
2026-08-05 17:25:09 +08:00
parent bfabe83832
commit 5700eb4115
35 changed files with 5140 additions and 11 deletions
+76
View File
@@ -0,0 +1,76 @@
# 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