MTK 电池曲线配置

Posted 请给我倒杯茶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MTK 电池曲线配置相关的知识,希望对你有一定的参考价值。

本文转载自:http://blog.csdn.net/u010245383/article/details/51006597

硬件平台:MT8382

网上有很多关于电池曲线配置的文档,定位到具体的文件和数据结构,但是具体的数据配置却是没有,由于工作期间需要配置到对应的电池曲线;特意把修改过程使用到的数据记录下来;

电池曲线需要修改 mediatek\custom\pro\kernel\battery\battery\cust_battery_meter_table.h 文件中的BATTERY_PROFILE_STRUC battery_profile_t2[]结构数组;

 

电池供应商提供恒流放电过程的数据:

技术分享图片

技术分享图片

技术分享图片

对于电池曲线,主要最关心的是放电过程的数据;从放电数据中可知电池的参数:电池最大电压为4.127V,最低电压2.697V,容量为2230.8mA;

    BATTERY_PROFILE_STRUC 结构描述的就是一个电池放电(消耗)过程的数据,电压是一致的,电量的表达方式是以另一种形式:百分比;

 

[cpp] view plain copy
 
  1. // T2 25C  
  2. BATTERY_PROFILE_STRUC battery_profile_t2[] =  
  3. {  
  4.  {0   , 4127},           
  5.  {1   , 4081},           
  6.  {3   , 4039},           
  7.  {4   , 4025},           
  8.  {6   , 4001},           
  9.   ......  
  10.  {36  , 3789},           
  11.  {37  , 3783},           
  12.  {39  , 3771},           
  13.  {40  , 3765},           
  14.  {42  , 3753},           
  15.   ......           
  16.  {90  , 3432},           
  17.  {92  , 3414},           
  18.  {93  , 3406},           
  19.  {94  , 3397},           
  20.  {96  , 3375},           
  21.  {97  , 3364},           
  22.  {98  , 3351},           
  23.  {100  , 3317},           
  24.  {101  , 3316},           
  25.   ......        
  26. };   

成员一表示消耗了百分之多少的电量,成员一表示消耗了该电量此时对应的电压值;

 

 

BATTERY_PROFILE_STRUC 数据含义:
假如产品的电压范围设置在4.127V - 3.300V,由此可知此时电池的预定使用容量为2100mA,所以每个百分点就是21mA;
 {0   , 4127},   表示消耗0%电量,即此时电池充饱电状态的电压最大值;
 {1   , 4081},   表示消耗1%电量,即此时电压为消耗了21mA时的电压值;
 ......
 {36  , 3789},  表示消耗36%电量,即此时电压为消耗了756mA时的电压值;  
 ......
{100  , 3317}, 表示消耗100%电量,即此时电压为预定最小值;
剩下的电量为储电保护,防止电池过放导致无法充电;

 

 

 

 

配置电池充电曲线,其实就是放电过程的逆序处理
修改对应文件: mediatek/custom/pro/lk/include/target/cust_battery.h
[cpp] view plain copy
 
  1. /* Battery Voltage and Percentage Mapping Table */  
  2. VBAT_TO_PERCENT Batt_VoltToPercent_Table[] = {  
  3.         /*BattVolt,BattPercent*/  
  4.         {3317,0},  
  5.         {3432,10},  
  6.         {3505,20},  
  7.         {3570,30},  
  8.         {3637,40},  
  9.         {3705,50},  
  10.         {3765,60},  
  11.         {3825,70},  
  12.         {3892,80},  
  13.         {3964,90},  
  14.         {4127,100},  
  15. };  
可以根据放电曲线进行相应的修改
{3432,10},    表示充电电量为10%时容量为210mA,电池对应的电压值;
 ......
{3964,90},    表示充电电量为90%时容量为1890mA,电池对应的电压值;
{4127,100},  表示充电电量为100%时,即电池充饱电状态的电压最大值;  

 

 

 

关于电池其他参数的配置,网上有很多帖子都有详细讲解,可以去参考;

 

以上是关于MTK 电池曲线配置的主要内容,如果未能解决你的问题,请参考以下文章

MTK 电池曲线配置

mtk battery_table

MTK驱动锁住端口方法

MTK线刷提示各种错误怎么办

基站蓄电池充放电曲线分析

iOS-电池图标结合贝塞尔曲线控制电量显示