简述
在低功耗嵌入式设备中,电源管理IC是很必要的,因为需要给锂电池充电,以及给板子供电。电源管理IC有许多选择,这里介绍STNS01,意法半导体的。
STNS01集成了供电电路,电池保护电路,电池温度监测和3.1V 100mA的LDO。
相关操作流程
当有外部充电线接入时,此时IC会执行安全检查,检查过后会使用“恒流/恒压”算法进行充电。外部接入的电压也有范围的,需要比Vuvlo(一般4.18V)高且比Vinovp(一般5.9V)低才能通过检查,进行充电。
充电时,会同时从外部USB取电供系统使用。
当输入电压正常,而CHG不停翻转时,这种状态表示有错误发生了。
上电
在电源管理IC关掉之后,整个系统也是掉电的,此时用符合范围的外部电源Vin去激活,即可使系统重新上电。
充电
通过使用“恒流/恒压”充电算法,STNS01可以将电池电压充到4.2V。正常充电时,CHG从高阻态切换到低电平。
如果充电电压高于Vbatmin,充电开始。如果电压是deeply discharged(电压比较低,即高于Vbatmin且低于Vpre),将进入pre-charge(预充电)阶段,此时使用较低电流(Ipre = 20% Ifast)进行恒流充电,这个阶段内如果电压在tPRE(一般是1800s)时间内未达到Vpre(一般是3V),充电过程将会停止且产生fault信号。
当前面的预充电阶段到达Vpre了,“恒流快速充电阶段”将会启动,此时的恒流充电电流会提高到Ifast,Ifast可通过外部的电阻控制在15mA到200mA。
如果“恒流快速充电阶段”启动,此时电压又掉到Vpre以下的话,充电过程也会停止且产生fault信号。“恒流快速充电阶段”,当Vbat到达Vfloat(一般4.2V),充电算法将切换到“恒压充电模式”。
在“恒压充电模式”,电压将被规整到Vfloat(此时恒压为Vfloat),充电电流将会下降,当充电电流达到Iend(Iend = 10% Ifast),充电过程最终停止,此时CHG引脚恢复高阻态。如果“恒压充电模式”下载tFAST(一般是36000s)内没有结束,充电过程将会停止且产生fault信号。
出于安全考虑,在充电过程中电池温度将持续被监测。
上面的过程流程图表示如下:
而整个过程的示意图如下:
此图所示是比较理想的状态,其实实际在充电满时,在图中第二个OFF阶段的电压会稍微往下掉一点。
而充电过程所需要的时间如下图所示:
可以看到官方给出的充电时间是约4个小时。
电池温度监测
STNS01集成了比较器,偏置电路和控制逻辑,通过外部的NTS电阻配合监测电池温度。电池温度只在充电过程中监测,其他时间不监测,是为功耗方面的考量。
电池温度正常范围在0到45摄氏度,若充电过程中超出了这个范围,充电过程将会被挂起。
电池过充保护
当可用电源输入进行充电时,电池过充保护将保护电池超过Vochg(一般是4.275V),当电压超过Vochg时,电源到电池的电流将被阻断,充电错误信号(CHG toggle)将会产生。当电池又恢复到Vochg以下时,此时必须要插拔充电电源才会使充电IC复位,再进行正常的充电操作。
电池电压过度消耗(discharge)保护
当没有电源充电时,电池电量将会被消耗,电池电量也会被监测以避免“电压过度消耗”。如果电池电量掉到Vodc(一般是2.8V)以下持续tODD(一般是400ms)的时间,设备就会掉电,电流消耗会降到500nA,此时的状态就称为overdischarge“电压过度消耗”状态。
在“电压过度消耗”状态下,如果有外部合法供电电源接入,充电过程被激活,LDO也立即会正常工作。如果外部供电电源拔掉,此时因为已经被激活,所以此时又会再监测电池电量看是否调到Vodc以下tODD时间,如果是则又进入“电压过度消耗”状态,不是则继续正常工作。
从下图可以看到,的确在2.8V附近时,会启动电压过度消耗保护:
电池电流过度消耗保护
当STNSo1从BAT引脚取电时(此时应该没有外部电源在充电,因此电源管理IC需要从电池来取电了),有此保护机制,当设备电流超出Ibatocp(一般在400到650mA)持续tDOD(一般在14ms)时间时,设备将会掉电,需要通过外部电源来重新激活。
输入电流过载保护
当STNS01直接从IN引脚供电(外部供电),当Vsys低于Vilimschth(一般为2V)时,输入电流将被限制在Iinlimsc(一般为400mA)以避免短路发生。
SYS和LDO短路保护
当SYS和LDO短路时,设备立即掉电。
输入电压过载保护
当STNS01直接从IN引脚供电(外部供电),Vuvlo
Shutdown模式
SD引脚给高电平,且没有外部供电接入,设备会进入Shutdown模式,电流500nA,需要重新激活才能正常使用了。
热Shutdown
当温度超过TSD,设备掉电。
电流反转保护
当外部输入电压很低时,且低于Vbat时,从BAT到IN引脚将被阻断,以避免不必要的电量消耗。