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

75 lines
3.6 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.
# 型号混淆与易错坑点
> **类别:trap** | **芯片:cross-platform** | **主题:型号混淆与易错坑点**
> 看错一个字母/数字,整板功能异常
## 型号混淆
- ESP32-WROOM-32D ≠ ESP32-S3:区别=32D无原生USB需外挂串口芯片才能烧录,S3有原生USB直连Type-C, 后果=32D方案忘加CH340→变砖
- INA226 ≠ INA228:区别=引脚不同,寄存器不同, 后果=接线全错,I2C读数全乱
- IRLZ44N ≠ IRFZ44N:区别=逻辑电平vs标准,驱动电压不同, 后果=3.3V驱动不开IRFZ44N
- SH1106 ≠ SSD1315 ≠ SSD1306:区别=初始化序列不同, 后果=屏不亮或花屏
- 2Ω ≠ 10Ω:区别=数量级不同, 后果=负载电流差5倍,测量全错
- 10kΩ ≠ 100kΩ:区别=差一个零, 后果=分压比差10倍
## 封装极性
- SMA二极管:pin1=阴极(白线标记端),pin2=阳极
- LED 0805pin1=阳极,pin2=阴极
- 丝印必须标位号,不标焊接时找不到
## 电路常见错误
- **32D方案必须加USB转串口芯片**——WROOM-32D无原生USBType-C只能供电不能烧录,不加CH340/CH9102=变砖
- **GPIO12上拉→Flash变砖**——ESP32-32D的GPIO12 strapping决定VDD_SDIO,上拉10kΩ导致1.8V模式Flash不工作
- QFN中心焊盘必须接GND,禁NC——散热+电气完整性
- 面板交互件(按钮/LED)不能板载——PCB在壳内用户无法触及,必须外接连座
- 网表连接合法 ≠ 功能正确——必须带功能说明审查
- Type-C CC脚各5.1kΩ下拉到GND
- TTP223触摸IC禁下拉
- 过孔需指定网络(GND),否则"连接微散网络"
## DeepSeek审查误报记录
- "MOSFET驱动不足致命"——实际3.3V直驱AO3400A完全够用,Vgs=3.3V >> Vth≈0.6V
- "删R9和C5"——R9/C5是ESP32 EN脚电路不是ME6211 CE,不能删
- 审查结果要逐条判断,不能盲信
## 屏幕电压与板载电源轨匹配(2026-07-12)
- 5V版ST7735用在3.3V板子上:误区="接VBUS就行", 正解=GBC 5.0电池供电,3.3V LDO出给C3**板上压根没5V轨**
**三种处理方式:**
1. 加Boost升压(多一颗芯片多一份耗电,得不偿失)
2. 找3.3V原生版本模组(淘宝有的是,推荐)
3. 换C6+SPI彩屏方案(另开产品线)
**铁律:选屏幕先看板子上有没有对应电压轨,别想当然"接一下就行"。** 电池供电3.3V板子=没有5V,没有就是没有,不是接线能解决的。
**补充:** 同一型号屏幕模组(如ST7735)有3.3V和5V两个版本,采购时务必确认电压版本。
---
*2026-07-12 | 屏幕电压踩坑*
## 开漏输出引脚必须固件加INPUT_PULLUP2026-07-13
TP4056的CHRG(充电状态)和STDBY(充满指示)是**开漏输出**,芯片内部没有上拉,外部也没接上拉电阻。ESP32 GPIO配置为输入时默认高阻,引脚浮空→状态不确定→可能反复跳变→增加功耗。
**固件必须加:**
```cpp
pinMode(5, INPUT_PULLUP); // CHRG
pinMode(6, INPUT_PULLUP); // STDBY
```
**通用规则:** 任何开漏输出的信号连到MCU GPIO,要么硬件加上拉,要么固件启用内部上拉。不处理=浮空=不可靠+可能耗电。
## 硬件耐压≠软件拒测阈值,文档必须区分(2026-07-13)
GBC V5.0方案文档电压范围写法有歧义:
- **0~6V** — INA226硬件耐压上限,超过可能烧芯片
- **2.0VHIGH_VOLT_V** — 固件软件拒测阈值,超过只拒绝测量但不损坏
用户看到"0~6V"以为能测6V电池,实际固件2.0V就拒测了。**文档必须写清"硬件耐压"和"软件限制"是两个不同概念,分别标注。**
---
*2026-07-13 | 开漏上拉+文档歧义踩坑*