首先规定电池容量的定义:一块充饱的电池按照规定的恒流电流放电,当放电至规定电压时所用的时间乘于电流得到电池的容量。
比如,一块锂电池从充饱(4.2V)以600mA放电至2.75V时用了65分钟,该电池的容量为600mA*(65/60)h=650mAh。
一块电池在放电的时候,电池的电压会随着电池电量的流失逐渐的下降。这样就可以得到一个比较简单而有效的对应关系,就是电压对容量。
得到一根电池正常使用(比如50mA放电)的放电曲线,对时间进行4等分,以充电限制电压为4.2V的锂电池为例,可以列出这样一个对应关系
4.20V----100%
3.95V----75%
3.85V----50%
3.73V----25%
3.50V----5%(因为手机不可能完全用光电池的电量,一般低于3.50V时就可能自动关机了)
2.75V----0%
在许多手机的隐藏菜单里面,可以调出工程模式来查看电池的电压,比如三星系列手机,波导S1200和S1000等手机,均可以看到电池电压。
当然以上的对应关系因为电池的种类和不同生产厂家而异,但是相差不多,可以用来参考。有了这样一个对应关系,手机的电量显示就比较简单了,单片机取样一个电池的电压值,比如电压为3.90V,就显示3格(4格为满格),依次类推。
手机如果要显示电池的精确容量,必须时刻进行放电电流对时间的积分运算,这个过程比较复杂,需要专用的芯片来完成,一块电池带一个芯片(成本就上去了),笔记本电能的锂电池就有这样的管理芯片来精确获得电池的容量,SONY的智慧型锂电池还有爱立信的T28等手机锂电池也有类似芯片,据我所知,德州仪器的BQ26231就可以实现这个功能,所以它们的用户界面上有电池容量的百分比显示,比较舒服。否则我们只能看的粗糙的电量“格子”了。
波导的某些机型(如936,S1200,8288包括以前的818,838等老战斗机)的容量显示又有点不合常规,以S1200为例,他的容量格子定义如下:
4.20V~3.76V----4格
3.76V~3.72V----3格
3.72V~3.70V----2格
3.70V~3.60V----1格
3.60V以下------0格,电池报警
3.40V左右自行关机
对比正常的容量关系,它在显示剩下3格的时候,就是3.76V时,实际电池只剩下30%左右的电量了,这就可以解释为什么S1200的手机(上面提到的手机均是如此)第一格可以用很长时间,而接下去的3格反而1天就完了。