可靠的 ESP32 供电,就是往 micro-USB 口或 VIN 引脚送进稳定的 5V——来源可以是一个好的 USB 适配器,也可以是电池经过转换模块。绝对不要把 3.7–4.2V 的 18650 直接接到 3V3 引脚——它绕过稳压器,并超过 3.6V 上限。正确做法:电芯 → 升压 → 5V/VIN,或 电芯 → 合格的 3.3V 稳压器 → 3V3。下面讲三条供电路径,以及怎么止住掉电重启(brownout)。
为什么 ESP32 老是触发掉电重启检测?
让人意外的是 ESP32 的无线电部分。乐鑫的数据手册测得,以 802.11b 在 +19.5dBm 发射时的典型电流是 240mA——而且这是按 50% 占空比平均出来的,瞬时突发只会更高;乐鑫的硬件设计指南则要求 3.3V 电源不低于 500mA,并警告发射突发会造成“电流需求骤增,导致电源轨塌陷”。
电源轨一塌,芯片的监控电路就会在串口监视器上打印 Brownout detector was triggered,然后让板子重启。NodeMCU ESP32 开发板上的经典表现:程序一路跑得好好的,直到 WiFi.begin(),接着就开始循环重启。代码是无辜的——是供电没扛住那一毫秒的压力测试。

零件清单
三条供电路径该选哪一条?
开发板的三条供电路径——USB、电池加升压模块、较高电压加降压模块——最后都殊途同归:送进干净的 5V,再由板载稳压器变成 3.3V。
| 路径 | 用到的零件 | 适合 | 要注意 |
|---|---|---|---|
| USB | 手机充电器或充电宝 + micro-USB 数据线 | 桌面项目、第一次上传 | 弱的 USB 口和细线会掉压;充电宝会自动休眠 |
| 一节 18650 + 升压 | 18650 电芯 + 电池盒 + MT3608 调到 5V → VIN | 便携和电池供电项目 | 接上去之前先调到 5.0V;绝对不要 电芯 → 3V3 |
| 较高电压 + 降压 | 9–12V 适配器或电池组 + LM2596 调到 5V → VIN | 共用一条 12V 供电轨的固定安装 | 接上去之前先调到 5.0V;需要 ~2V 压差裕量 |
Andreas Spiess 把这些方案基本都上机实测过——动手之前值得看一看:

ESP32 直接用 USB 供电可以吗?
USB 是最简单的 ESP32 供电方式——一个额定 1A 以上的好 5V 充电器,足以让板子跑一整天。坑都在边缘情况上:电脑的 USB 2.0 口规格只有 500mA,正好卡在 ESP32 的下限;又长又细的线在突发时压降够大,连一个够力的充电器输出也照样被拉到掉电重启。
充电宝还多一个怪癖:空闲的 ESP32 耗电太小,很多充电宝会判定没接负载而自己关掉——项目跑 30 秒就死掉,那是自动休眠,不是程序有 bug。只能充电的数据线是反过来的坑:板子能上电,但上传会失败——这种线里没有数据线芯。
一节 18650 能直接接到 3V3 引脚吗?
不能——18650 接上 3V3 引脚会把板子搞坏。绝对不要把 3.7–4.2V 的 18650 直接接到 3V3 引脚——它绕过稳压器,并超过 3.6V 上限。正确做法:电芯 → 升压 → 5V/VIN,或 电芯 → 合格的 3.3V 稳压器 → 3V3。锂电芯的电压落在 3.0V 到 4.2V 之间,而乐鑫数据手册给 ESP32 供电引脚定的绝对上限是 3.6V。喂 3V3 引脚同时还绕开了板载稳压器,等于把刚充饱的 4.2V 直接加在裸芯片上。
改喂 VIN 引脚也救不了这个想法。开发板上 AMS1117 类型的稳压器,在 3.3V 输出之上最多需要 1.3V 的压差(保证的最大压差,标称条件为 0.8A 负载)(AMS1117 数据手册),所以 VIN 大约要 4.6V 起步——而单节电芯一辈子都待在这个值以下。VIN 能吃 5V 到大约 12V,但 5V 才是甜点区;再高的部分只会变成热量。
| 从哪里喂电 | 安全输入 | 备注 |
|---|---|---|
| micro-USB 口 | 5V | 最简单;经过板载 3.3V 稳压器 |
| VIN 引脚 | ~5–12V(5V 最理想) | 至少要 ~4.6V——单节裸锂电芯太低 |
| 3V3 引脚 | 只接稳压后的 3.0–3.6V | 绕过稳压器;绝对不要直接接锂电芯 |
单节电芯的正确做法:电芯 → 升压 → 5V/VIN(MT3608 升到 5V 送进 VIN),或 电芯 → 合格的 3.3V 稳压器 → 3V3(一颗像样的低压差稳压器)。充电方面,我们的 TP4056 18650 充电教程 讲了保护板,以及锂电池为什么绝不能无人看管地充。
什么时候用 LM2596 降压模块,什么时候用 MT3608 升压模块?
LM2596 是往下降:输入 4.5–40V,输出可调 1.2–37V,额定 3A(TI 的 LM2596 数据手册)——蓝色模块板上通常标 7–35V 输入,而 2A 才是散热上现实的上限。它适合本来就有较高电压电源的场合,比如 12V 灯带适配器或太阳能控制器。在 ESP32 碰到它之前就把输出调到 5.0V——这些模块出厂电压是随机的,我们的 LM2596 调压教程 手把手讲多圈微调电位器怎么转。
MT3608 是往上升:输入 2–24V,输出最高 28V,属于 2A 级别的升压转换器,内部开关限流 4A(MT3608 数据手册)。把一节 18650 升到 5V,连续输出按大约 1A 来规划——喂一块开发板绰绰有余,但不够再带舵机。规矩一样:先用万用表把它修到 5.0V;还要记住,升压模块只能升到输入电压以上。

双节 18650 电池扩展板怎么样?
双节 18650 电池盒扩展板 把这件事打包成一块板:装两节电芯,用 micro-USB 充电,四颗 LED 显示电量,并提供稳压 5V 的 USB 输出加一组 3V 排针。从它的 5V 输出接一根短线到开发板的 micro-USB,接线就这么多。
依赖它之前有两点要注意。两个电池盒是并联,不是串联——这一点从板子本身就能看出来:它把 3.7–4.2V 的单节电压升压到 5V,充电也走单节充电电路,这两件事都不可能用串联后的 7.4V 来完成。并联意味着容量相加、电压不变,所以要装两节同型号、同电量的电芯;电压差超过约 0.2V,装进去的瞬间电量高的那节就会往电量低的那节灌电流。3V 排针也跳过不用:它给 WiFi 突发留不出掉压余量——请用 5V 的 USB 输出。
怎么彻底止住掉电重启?
不管选了哪条路径,ESP32 防掉电重启都是同一份清单:
- 线要粗、要短。每一厘米细跳线都是电阻,而电阻会把一次 240mA 的突发变成一次电压跌落。
- 板子旁边加一颗大电容。在 VIN 和 GND 之间、靠近 ESP32 的位置接一颗 470–1000µF 电解电容,帮它扛过每一次突发——这是乐鑫自己那条 10µF 起步规矩的爱好者加强版。
- 裕量要留够。选一个额定电流至少是预计消耗两倍的电源——一个标称“1A”、到 800mA 就掉压的适配器,就是掉电重启制造机。
- 大胃口的负载单独供电。舵机、马达和灯带要自己的 5V 电源,只共用地线。
- 带载测量。空载读数说明不了任何问题——要在 WiFi 发射的同时去测 5V 和 3V3 引脚(我们的 数字万用表教程 讲了怎么测)。
SIM800L GSM 模块栽的是同一个跟头,只是更狠——我们的 SIM800L 掉电重启教程 就是这堂课的 2A 突发版本。
真实客户身上常见的错误
绝对不要把 3.7–4.2V 的 18650 直接接到 3V3 引脚。板子往往还能撑上一阵,于是后来的随机故障看起来像是产品有缺陷。其实它从第一分钟起就已经超出规格了。
把掉电重启怪到代码头上。程序偏偏死在 WiFi.begin(),人们就重新烧录、换库——可是串口监视器早就把凶手报出来了。Brownout detector was triggered 是一条电源消息,不是软件 bug。
没调好就先接上转换模块。LM2596 和 MT3608 出厂输出电压都是随机的,一块还停在 12V 的模块会顺着 VIN 把开发板烧掉。修到 5.0V 的时候,输出端只准接万用表表笔。
用开发板自己的供电轨带舵机。板载稳压器勉强够喂 ESP32 自己;舵机第一次堵转就会让板子重启。大胃口的负载要自己的电源,只在地线上相接。
常见问题
为什么我的 ESP32 一直打印 “Brownout detector was triggered”?
你的供电在 WiFi 发射突发时被拉垮了,这些突发会冲过 240mA。请用一个至少能提供 500mA 的电源,把线改短改粗,并在板子附近加一颗 470–1000µF 的电容。
一节 18650 电池能给 ESP32 供电吗?
能,但绝不能直接接。充饱的电芯 4.2V 高于 3V3 引脚 3.6V 的上限,而整个 3.0–4.2V 区间又都低于 VIN 引脚 ~4.6V 的最低要求。用 MT3608 升到 5V 送进 VIN,或者用一颗低压差 3.3V 稳压器送进 3V3。
ESP32 的 VIN 引脚能接多少电压?
实用范围是 5–12V,5V 是甜点区。板载 AMS1117 类型的稳压器大约需要 4.6V 才稳得住 3.3V 供电轨,而超过 5V 的部分都会变成热量。
直接在软件里关掉掉电检测行不行?
不行。它报告的是一次真实的电压塌陷——关掉它,等于用随机崩溃和写坏的 flash,换掉一次干净的重启。把供电修好,这条消息自然就消失了。
最后更新:2026年8月。有问题?WhatsApp 联系我们。



NodeMCU ESP32 Wi-Fi + Bluetooth Development Board CH340/CP2012 - For IOT Project - ESP-32(CP2102)
3.7V 18650 Battery Rechargeable Li-Ion Battery 1200mAh 2200mAh 3200mAh Flat Top - 18650 Li-Ion Battery (2200mAh)
Dual 18650 Lithium Battery Holder Shield V3 Power Module 5V USB 3V Pin Output Charging
LM2596S DC-DC Buck Converter Step Down Power Module 4-40V to 1.25-37V Voltage Regulator Board - LM2596S BUCK CONVERTOR
MT3608 Adjustable Step-up Convertor Boost Converter Switching Boost Converter for Arduino Project