MTK6582开发板 MT6582核心板 充电电池调试
www.mtkban.com
褀联智能
[mt6582]电池及充电参数配置
.PM 充电
1 配置文件位置:
CUSTOM_KERNEL_BATTERY= battery
mediatek\custom\kernel\battery\battery\cust_battery.h
mediatek\custom\kernel\battery\battery\custom_fuel_gauge.h
2充电常用参数修改:
…\mediatek\custom\kernel\battery\battery\cust_battery.h
3充电电流修改:
#defineUSB_CHARGER_CURRENT Cust_CC_550MA // :Cust_CC_450MA
#define AC_CHARGER_CURRENT Cust_CC_800MA // : Cust_CC_650MA
4.充电电阻设定(根据硬件的bom):
#defineR_CURRENT_SENSE 2 //0.2 Ohm// 0.2欧姆
5 充电温度检测设定
#defineBAT_TEMP_PROTECT_ENABLE 1 //
// #defineBAT_NTC_TSM_1
NTC修改为10K电阻或者47K电阻(NTC 为电池温度保护NegativeTemperature Coefficient)
#define BAT_NTC_101 //#define BAT_NTC_47 0
其他:
#defineV_CHARGER_MIN 4400 //modify //4400 // 4.4 V
#defineV_CHARGER_ENABLE 1 //1:ON , 0:OFF //
其他宏定义说明:
#defineR_CURRENT_SENSE 2 //0.2 Ohm //检测当前充电的电阻
#define R_BAT_SENSE4 //times of voltage //测量电池电压检测电阻
#define R_I_SENSE 4 //times of voltage //测量接电感电流传感器电压的电阻
#defineR_CHARGER_SENSE ((R_CHARGER_1+R_CHARGER_2)/R_CHARGER_2)
// times ofvoltage 测量充电器检测电压的电阻
#defineV_CHARGER_MAX 6500 //6.5 V 充电器的电压最大值
#defineV_CHARGER_MIN 4400 //4.4 充电器的电压最小值
#defineV_CHARGER_ENABLE 0 //1:ON , 0:OFF //充电电压保护使能
/* Teperaturerelated setting */
#defineRBAT_PULL_UP_R 39000 //检测电池温度的上拉电阻
#defineRBAT_PULL_UP_VOLT 1800 //检测电池温度的下拉电阻
#defineTBAT_OVER_CRITICAL_LOW 68237 //用于计算电阻的值
//#defineTBAT_OVER_CRITICAL_LOW 483954
#defineBAT_TEMP_PROTECT_ENABLE 0 电池温度保护
#define BAT_NTC_100 负温度系数
6.7充电界面显示修改:
\mediatek\custom\lk\include\target\cust_display.h//坐标
\mediatek\platform\mt6577\lk\mt_logo.c//显示
6 电池容量、电池曲线修改:
电池容量修改:
mediatek\custom\kernel\battery\battery\custom_fuel_gauge.h
#define Q_MAX_POS_50 ((2168* 1316) / 1307)
#define Q_MAX_POS_25 2168
#define Q_MAX_POS_0 ((2168 * 1220) / 1307)
#define Q_MAX_NEG_10 ((2168 * 1162) / 1307)
#define Q_MAX_POS_50_H_CURRENT ((2168 * 1295) / 1307)
#define Q_MAX_POS_25_H_CURRENT ((2168 * 1270) / 1307)
#define Q_MAX_POS_0_H_CURRENT ((2168 * 1102) / 1307)
#define Q_MAX_NEG_10_H_CURRENT ((2168 * 599) / 1307)
电池曲线集成方式:(电压-百分比对应表需要电池厂商提供)
mediatek\custom\kernel\battery\battery\cust_fuel_gauge.h
BATTERY_PROFILE_STRUCbattery_profile_t1[] =// T1 0C
BATTERY_PROFILE_STRUCbattery_profile_t2[] =// T2 25C
alps\mediatek\kernel\drivers\power\battery_meter.c
关键 int force_get_tbat(void)
alps\mediatek\custom\mt6582\kernel\battery\battery\cust_battery_meter.h
//#define FIXED_TBAT_25
根据是否使用fuelgage温度设置成恒定或自动检测:
/* Disable Battery check for HQA */
//#ifdef MTK_DISABLE_POWER_ON_OFF_VOLTAGE_LIMITATION
#define FIXED_TBAT_25
//#endif
[FAQ05789][BMT]Bat_on pin脚悬空会有什么问题 ?
1.Bat_on pin是用来检测电池+检测电池温度
2.该pin脚的电压范围0-1.062V
3.如果不使用NTC功能,请将Bat_on pin脚接地,并且软体固定返回温度25.
mt6575 MT6515 MT6577 MT6517 MT6589
如果悬空:
1.软体会判断找不到电池。
2.插着usb或是充电器 不能开机,会卡住检测电池的循环里。
3.不插usb或是充电器 可以正常开机, 但是底层获得的电池的温度是最低的温度,-20度。如果这个时候还采用FG的电量计算方式 会以-10度来构造zcv表格。
4.开机之后,在75/77平台上面,插入USB,可以充电,不会关机。 在89平台,一旦插入usb,就会重启。(软体检测到该pin脚悬空,判断为无没有电池,调用关机函数)
本文详细介绍了MT6582开发板和核心板在电池充电过程中的参数配置,包括充电电流、电阻设定、温度检测、充电界面显示以及电池容量和曲线的修改方法。内容涵盖cust_battery.h和custom_fuel_gauge.h等关键文件的修改,旨在帮助开发者优化MT6582平台的电池管理。


被折叠的 条评论
为什么被折叠?



