eva17

STM系列(6)--使用 STM32 实现锂电充电器

0
阅读(1847)

融创芯城邀请注册享好礼,2万元奖金等你来瓜分,排行榜奖金活动将持续至2月28日,最后几天,抓紧拉人注册,享受做小股东的乐趣吧!!

问题:

在很多便携式消费类设备上,通常需要通过USB口对设备自带的锂电池充电。如果使用专用的电池管理芯片,不仅增加了产品成本,也增大了PCB的面积。所以客户希望在已有的主芯片STM32上同时实现对锂电池的充电管理。

调研:

锂离子电池充电分为两个阶段:先恒流充电,到接近终止电压时改为恒压充电,电池以充电率为1C流充电,开始时电池电压以较大的斜率升压,当电池电压接近4.2V时,改成4.2V恒压充电,电流渐降,电压变化不大,到充电电流降为1/10C时,认为接近充满,可以终止充电。(C是以电池标称容量对照电流的一种表示方法,如电池是1000mAh的容量,1C就是充电电流1000mA,注意是mA而不是mAh0.01C就是10mA。)

结论:

使用STM32片上定时器的PWM输出和ADC采样功能即可实现对锂电池的充电管理。

处理:


本方案在STM32F101上完成。BTY_CHRGPB0)为定时器的PWM输出,用于控制MOSFET的开关程度,从而改变对锂电的充电电流。TSC101用于充电电流的检测,将电流转换为电压量。BTY_V(PA3)BTY_I(PB1)STM32ADC输入通道。STM32通过采样充电电流BTY_I和电池电压BTY_V,来调整PWM输出的占空比,以实现闭环控制。当BTY_V小于4.2V时,逐步调整PWM波的占空比,使BTY_I达到1C进行充电。当检测到BTY_V大于或等于4.2V时,逐步调整PWM波的占空比,使BTY_I降至0.1C进行充电。当充电电流小于0.01C时,充电完成。


建议:

客户可在本例程的基础上实现智能三段式充电,或增加温度检测,以提高产品的安全可靠性。


Baidu
map