- 通过电量查询函数查询获取,在misc.lua中:
功能 : | 获取VBAT的电池电压 |
参数 : | 无 |
返回值: | 电压,number类型,单位毫伏 |
function getvbatvolt() local v1,v2,v3,v4,v5 = pmd.param_get() return v2 end
如果是task版本,使用misc.getVbatt()获取
以上都只是需要主动轮询的方式去获取,如果需要中断方式,参考如下代码设计:
--电池电量发生变化时,会主动上报消息 local function chgMsg(msg) if msg and msg.voltage and msg.level and msg.level<=100 then --msg.voltage,number类型,vbat电压,单位毫伏 --msg.level,number类型,剩余电量百分比,计算方式为线性计算,(msg.voltage-3400)*100/(4200-3200),如果满足不了自己的需求,根据msg.voltage自行计算 log.info("charge.chgMsg",msg.voltage,msg.level) end end rtos.on(rtos.MSG_PMD,chgMsg)