锂电池充电管理:TP4056 与 CC-CV 到底管什么
给锂电池充电,你可能觉得"不就是接个电源正负极吗"。真这么干,轻则鼓包报废,重则起火。锂电池是常见电池里最娇气的一种,充电必须有个"管家"盯着——控电流、控电压、到点就停。这个管家就是充电管理芯片,TP4056 是入门项目里最常见的一颗。这篇讲清它管什么、不管什么,你就不会犯那些烧板子的低级错误。
为什么锂电池不能直接充
拿一节 3.7V 锂电池(满电 4.2V),你要是直接接个 5V 电源上去,两件坏事会同时发生。
第一是电流失控。 电池空的时候内阻很低,5V 一怼,瞬间涌进去的电流可能几安培,远超电池能承受的。电流一大,电池内部剧烈发热,锂枝晶开始生长——这是鼓包和内短路的根源。
第二是过充。 就算你限了流,5V 也会一直往里灌,把电池顶过头。锂电池的电压红线是 4.2V(个别高压电芯 4.35V/4.4V,以电芯规格书为准),越线电解液分解、正极崩坏,轻则寿命暴跌,重则热失控起火。它对过充的容忍度几乎为零,这也是它比别的电池危险得多的地方,见 锂电池安全。
所以充电必须做两件事:前期把电流摁住,后期把电压摁住,充满立刻停。 这套逻辑有个标准名字,叫 CC-CV。
CC-CV:恒流打底,恒压收尾
CC-CV = 恒流(Constant Current)+ 恒压(Constant Voltage),是锂电池充电的黄金曲线,几乎所有充电芯片都照这个走。它分两个阶段:
恒流阶段(CC)。 电池电压还低(比如 3.5V)时,芯片死死把电流控制在设定值(比如 1A),电压随电量增加慢慢往上爬。这个阶段充进去的电量最多,是主力干活的阶段,像往桶里倒水先大流量猛灌。
恒压阶段(CV)。 电池电压爬到 4.2V 这条红线,芯片就切换策略:电压死死钉在 4.2V 不再往上,转而让电流自己往下掉。因为电池越来越满,能"吃进"的电流自然越来越小。这个阶段像给快满的桶收尾,涓涓细流慢慢补。
什么时候算充满? CV 阶段电流掉到很小(通常是设定值的 1/10,比如 1A 设定掉到 100mA),芯片判定"满了",停充。这就是充电越到后面越慢的原因——不是电源不给力,CV 阶段本来就该慢下来,是保护电池的正常行为。
一句话记住这条曲线:先恒流猛充,到 4.2V 转恒压,电流掉到零头就停。 谁来精确执行这套动作?就是 TP4056 这类芯片。
TP4056:一个电阻定电流
TP4056 是最流行的单节锂电池线性充电芯片,几块钱一颗,模块淘宝一大把。它把上面整套 CC-CV 逻辑做进了芯片里,你只要接好电池、接好 5V 输入,它自己就按曲线充。你需要动手的只有两件事。
第一件:用一个电阻设定充电电流。 TP4056 的 PROG 引脚接一个电阻到地,这个电阻的阻值决定 CC 阶段的恒流值。关系是反比:
充电电流 I ≈ 1200 / R_prog
(I 单位 mA,R_prog 单位 kΩ)
比如 R = 1.2kΩ,充电电流约 1000mA(1A);想充 500mA,就用 2.4kΩ 左右。市面上的红色 TP4056 模块默认板载 1.2kΩ,也就是默认 1A 充电。这个值不能拍脑袋——它必须小于电池允许的最大充电电流,一般锂电池标 0.5C1C(500mAh 电池就是 250mA500mA),设大了就是在慢性伤害电池。
第二件:看两个指示灯。 TP4056 有充电指示(CHRG)和满电指示(STDBY)两个引脚,模块上通常接了红蓝两个灯:充电中红灯亮,充满了蓝灯亮。这是它给你的状态反馈,一眼就知道充到哪了。
至于 CC-CV 的切换、4.2V 的精确控制、涓流截止——这些 TP4056 内部全包了,不用你管。它就是"充电"这件事的专职管家。
关键一点:充电芯片不管放电
这是新手最容易栽的坑,必须单独拎出来说:TP4056 只管充电,完全不管放电。
它管的是"电怎么进电池",至于电池往外供电时会不会过放(放到电压太低)、会不会过流(短路猛抽电流),TP4056 一概不负责。而锂电池过放(放到 3.0V 以下还硬抽)同样会造成永久损伤,甚至充不回来。
所以一块完整的锂电池管理至少要两套保护:充电保护(TP4056 干的) 和 放电保护(过放、过流、短路保护)。放电保护通常由另一颗芯片负责,比如 DW01 配对 MOS 管,这套东西一般直接做在电池的**保护板(BMS)**里。
落到实践就一句话:
要么买自带保护板的锂电池(大多数成品 18650、锂聚合物电池都带),要么用集成了充放电双保护的模块(比如 TP4056 + DW01 二合一模块,板上带 4 颗引脚芯片那种,比纯 TP4056 模块只多一块钱)。千万别拿裸 TP4056 模块配裸电芯——那样放电这一头是完全裸奔的。功耗那头怎么估电池够不够用,见 功耗预算。
常见坑
| 坑 | 现象 | 怎么避 |
|---|---|---|
| 充电电流设太大 | 电池发烫、鼓包、寿命骤减 | PROG 电阻按电池 0.5C~1C 选,别默认 1A 就给小电池充 |
| 只用裸 TP4056、没放电保护 | 电池被过放/短路,充不回来甚至报废 | 用带保护板的电池,或选 TP4056+DW01 二合一模块 |
| 边充边用(负载直接并在电池上) | 充电电流被负载分走、CC-CV 判断失准、充不满 | 优先选带"负载共享"的充电模块(如 TP4057、专门的 power-path 芯片),让输入优先供负载 |
| TP4056 是线性芯片,大电流会烫 | 1A 充电时芯片明显发热 | 大电流留意散热,或选开关型充电芯片;小电流场景无所谓 |
重点说边充边用。很多人把电池、TP4056、负载三者直接并在一起想"边充边跑"。问题是 TP4056 靠检测流进电池的电流判断充满,负载把电流分走后它就判断不准——可能永远显示没满或提前误判。真要边充边用,得用带 power-path(负载共享) 的方案:插上 5V 时优先供负载、余量才充电,拔掉输入才切到电池放电。
一句话口诀
锂电池充电铁律:先恒流后恒压,到 4.2V 就钉住,电流掉到零头就停(这就是 CC-CV)。TP4056 是执行这套曲线的专职管家,一个 PROG 电阻定充电电流(I≈1200/R),红蓝灯看状态。但记死一点——它只管充、不管放,放电保护要靠电池自带保护板或 TP4056+DW01 二合一模块,别让电池放电这头裸奔。
下一步
充电只是电池的一半,另一半是怎么让电池更耐用、怎么估续航,见 电池寿命与续航。锂电池为什么这么娇气、安全红线到底在哪,系统看 锂电池安全。你的电路到底吃多少电、这块电池够撑多久,去 功耗预算 算清楚。回 元器件原理总览 补齐其余基础。