MTK平台 電池驅動相關

2021-08-02 04:11:12 字數 1616 閱讀 1461

mtk平台 電池驅動

一、相關**路徑(mt6755/android6.0)

alps/kernel-3.18/drivers/misc/mediatek/include/mt-plat/mt6755/include/mach/mt_battery_meter.h

alps/kernel-3.18/drivers/misc/mediatek/include/mt-plat/mt6755/include/mach/mt_battery_meter_table.h

alps/kernel-3.18/drivers/power/mediatek/battery_common.c

alps/kernel-3.18/drivers/power/mediatek/battery_meter.c

alps/kernel-3.18/drivers/power/mediatek/linear_charging.c

alps/kernel-3.18/drivers/power/mediatek/switch_charging.c

二、mtk battery框架結構圖

1、框架結構圖:

2、battery**框架:

3、oam_run()流程圖:

以下是電池電池曲線相關:

一、mtk電池電量演算法

1、soc_by_auxadc:通過模數轉換硬體獲得電池電壓,由電壓來換算電量,誤差大;

2、soc_by_sw_fg:通過庫倫積分演算法獲得電量,其中電流由軟體計算獲得(mtk平台常用的電池電量演算法);

3、soc_by_hw_fg:通過庫侖積分演算法獲得電量,其中電流由硬體的模數轉換獲得;

4、soc_by_sw_fg與soc_by_hw_fg的區別在於放電電量的獲取方式,乙個由軟體計算獲得,乙個由硬體模數轉換獲得。

二、庫侖積分演算法:

開機時測量電池的開路電壓,由開路電壓換算出電池電量,放電過程中對放電電流積分,開機時電池電量減去放電電量就是剩餘電池電量;

三、soc_by_sw_fg相關定義

1、ocv:電池開路電壓,即電池斷開負載時測得的電壓;

2、vbat:電池閉路電壓,即電池有負載時測得的電壓;

3、r:電池內阻;

4、i:電池放電電流 (i = (ocv - vbat)/r);

5、dod:放電深度,100-dod即為電池容量;

6、溫度:電池特性受溫度影響,一般用乙個熱敏電阻來測量溫度;

7、zcv:zero current voltage,一般指zcv**,也是開路電壓的意思;

8、vc:閉路電壓;

9、car:庫侖計;

10、cmax/qmax:電池容量。

高通平台電池曲線

fcc full charge capacity 滿電荷電量 uc remaining capacity rc 剩餘電量 cc coulumb counter 電量計 uuc unusable capacity 不可用電量 pc percentage charge 剩餘電荷佔fcc百分比 soc s...

MTK平台驅動除錯指南

gpio設定篇 一 gpio有關的函式 1 gpio modesetup 函式原型 void gpio modesetup kal uint16 pin,kal uint16 conf dada 功能 設定gpio的工作模式是作為gpio,還是作為專有功能介面。引數 pin gpio 的pin腳號,...

MTK平台驅動除錯指南

gpio設定篇 一 gpio有關的函式 1 gpio modesetup 函式原型 void gpio modesetup kal uint16 pin,kal uint16 conf dada 功能 設定gpio的工作模式是作為gpio,還是作為專有功能介面。引數 pin gpio 的pin腳號,...