电池电量计
PowerMonitor 虽然测量结果最准确。但是需要拆机比较麻烦。我们还可以通过谷歌 BatteryManager 提供的接口直接读取电池电量计的统计结果来获得电流值。
电池电量计负责估计电池容量。其基本功能为监测电压,充电/放电电流和电池温度,并估计电池荷电状态(SOC)及电池的完全充电容量(FCC)。有两种典型的电量计:电压型电量计和电流型电量计,目前手机上使用的电量计主要是电流型电量计。
- 电压型电量计:简单讲就是检测当前电压,然后查询电压-电池容量对应表,获得电量估算
- 电流型电量计:也叫库仑计,原理是在电池的充电/放电路径上的连接一个检测电阻。ADC 量测在检测电阻上的电压,转换成电池正在充电或放电的电流值。实时计数器(RTC)则提供把该电流值对时间作积分,从而得知流过多少库伦。

Android 提供了 BMS 的接口,通过属性提供了电池电量计的统计结果
- BATTERY_PROPERTY_CHARGE_COUNTER 剩余电池容量,单位为微安时
- BATTERY_PROPERTY_CURRENT_NOW 瞬时电池电流,单位为微安
- BATTERY_PROPERTY_CURRENT_AVERAGE 平均电池电流,单位为微安
- BATTERY_PROPERTY_CAPACITY 剩余电池容量,显示为整数百分比
- BATTERY_PROPERTY_ENERGY_COUNTER 剩余能量,单位为纳瓦时
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2021-05-18 pinctrl子系统系统目录查看