"); //-->
设备性能是否被电源管理束缚?Air8201电源管理优化方案提供深度解决路径。通过强化稳定性消除运行风险,结合精准性调控优化能耗效率,该方案能够层层解锁设备隐藏性能,释放硬件的完整实力。
本文针对电源管理文档的核心文件进行了优化:无需改动硬件,即可提升充电状态下的电压测量准确性。
一、 Air8201电源管理优化方案
1.1 充电时动态校准电压
修改原demo示例batteryMange.lua文件的checkBattery函数:
在读取ADC电压前,通过充电IC 2712A的寄存器控制,短暂关闭充电回路,消除充电电流对电压的影响;测量完成后恢复充电——这是最为准确的方式。
我们之前的demo比较多配置I_CTRL和V_CTRL这两个寄存器,这次主要配置工作模式寄存器MODE Register。
示例代码如下所示:
1.2 加入软件滤波
增加移动平均滤波:
在checkBattery函数中,记录最近几次电压值,取平均值以减少瞬时波动影响。
这个方式存在一定误差,但是也能尽量拿到较准确的电压值。
示例代码如下所示:
1.3 加入软件滤波
根据充电状态调整电压计算:
在mathBatteryPercent函数中,如果当前处于充电状态(ischarge == true),则对读取的电压值进行补偿(例如减去固定偏移量)。
这点更适合标准差异,比如插上USB和未插USB的电压检测总是差距某一个数值,且一个测试周期内都维持这种差异。
示例代码如下所示:
二、验证步骤要点
2.1 日志调试
在checkBattery中增加日志输出,观察充电/不充电状态下的原始电压值和补偿后的值。
2.2 阈值测试
插入USB时,验证低电量关机逻辑是否基于补偿后的电压触发,避免误关机,因为补偿后的电压会略低(原来的关机条件为电量低于30%且2分钟内未充电)。
今天的内容就分享到这里了~
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。