外观
ESP32
ESP32 是系列的开山之作,2016 年发布,双核 Xtensa LX6、Wi-Fi 4 加蓝牙 4.2(经典蓝牙 BR/EDR 与低功耗蓝牙 LE 双模)。它至今仍是教程、库、开源项目最多的一颗,也是唯一一颗在 2026 年中以前拥有经典蓝牙的 ESP32 芯片,直到 ESP32-S31 和 ESP32-E22 出现。
概览
- 发布时间:2016 年。
- 定位:通用 Wi-Fi + 蓝牙 MCU,适合需要经典蓝牙音频(A2DP)、以太网或大量历史库的项目。
- 状态:仍在量产。常见料号带
-V3后缀(如 ESP32-D0WD-V3),代表使用芯片 v3.x 版本,修复了早期版本的若干 bug。 - 官方在 2020 年之后把新功能(Wi-Fi 6、RISC-V、Matter/Thread)放到后续芯片上,ESP32 本身不会再增加新能力。
规格
| 项目 | 参数 |
|---|---|
| CPU | 双核 Xtensa LX6 32 位,最高 240 MHz(另有单核 S0WD / SOLO 版本) |
| 内存 | 520 KB SRAM,448 KB ROM,16 KB RTC SRAM |
| Flash | 外接 SPI Flash,常见 4 MB 到 16 MB;部分料号(U4WDH)内置 4 MB |
| PSRAM | 支持外接 Quad SPI PSRAM(常见 4 MB 到 8 MB),WROVER 系列模组内置 |
| Wi-Fi | 802.11 b/g/n,2.4 GHz |
| 蓝牙 | Bluetooth 4.2,BR/EDR + LE |
| 802.15.4 | 无 |
| USB | 无原生 USB,开发板靠串口桥 |
| GPIO | 34 个 |
| 外设 | 12 位 ADC(最多 18 通道)、2 路 DAC、10 路电容触摸、以太网 MAC (RMII)、CAN (TWAI)、SD/SDIO 主机与从机、I2S、PCNT、RMT、LED PWM、霍尔传感器(较新模组已去除) |
| 安全 | 安全启动、Flash 加密、AES / SHA / RSA / ECC 加速、随机数发生器 |
| 低功耗 | 5 种功耗模式,ULP 协处理器(FSM 型),RTC 内存保留 |
| 封装 | QFN48 (6×6 mm),另有 SiP 封装的 PICO 系列 |
亮点
- 经典蓝牙:能做蓝牙音箱、A2DP Sink/Source、HFP、SPP 串口。后续大多数 ESP32 型号放弃了经典蓝牙。
- 以太网 MAC:配外部 PHY(如 LAN8720)可做有线网络设备,Olimex ESP32-POE 就是典型例子。
- 双核加上 2 路 DAC、SD 主机接口,适合音频和数据采集一类项目。
- 生态最成熟,几乎所有 ESP32 库、固件、模组都先支持它。
已知局限与坑
- ADC2 与 Wi-Fi 冲突:Wi-Fi 启用时,ADC2 的 10 个通道不能使用,有 ADC 需求优先用 ADC1(GPIO32 到 GPIO39)。
- ADC 线性度差,需要校准才能得到较准确的电压。
- GPIO34 到 GPIO39 只能做输入,且没有内部上下拉。
- GPIO6 到 GPIO11 接内置 Flash,不要使用。
- Strapping 引脚:GPIO0(启动模式)、GPIO2、GPIO5、GPIO12(决定 Flash 电压,接错可能导致无法启动)、GPIO15。
- 没有原生 USB,开发板需要 CH340、CP2102 之类的串口桥,自动下载电路偶尔出现需要手动按 BOOT 键的情况。
- 老版本芯片 (v0 到 v1) 存在已知硬件问题(例如 PSRAM 缓存相关 bug),新设计应选 v3.x 的料号;各版本差异以乐鑫官方勘误表 (errata) 为准。
- 不支持 Wi-Fi 6、Thread、Zigbee,Matter 只能走 Wi-Fi。
- 功耗偏高,电池供电场景不如 ESP32-C3、ESP32-C6。
代表开发板
- ESP32-DevKitC(见乐鑫)
- M5Stack Core2、Atom Echo、StickC Plus2 等(见 M5Stack)
- AI-Thinker ESP32-CAM、NodeMCU-32S(见 Ai-Thinker)
- Olimex ESP32-POE(见 Olimex)
软件支持
- ESP-IDF:从最初版本就支持,芯片版本 v0.0、v1.0、v3.0 全部覆盖;这是最完整的参考平台。
- Arduino 框架:支持最完整。
- MicroPython:官方固件支持,是 MicroPython 在 ESP 上最主要的目标。
- ESPHome:成熟支持,经典蓝牙以外的大多数功能都可用。