pkuzhx 发表于 2018-5-22 16:06:44

8670本地电量读取不准怎么办?

我使用PowerBatteryGetVoltage函数读取本地的电量,每10s读取一次,然后通过uart打印出来:
BUTTON_MSG_BATTERY_READING
voltage:3981, level:2

BUTTON_MSG_BATTERY_READING
voltage:3981, level:2

BUTTON_MSG_BATTERY_READING
voltage:3949, level:2

BUTTON_MSG_BATTERY_READING
voltage:3949, level:2

BUTTON_MSG_BATTERY_READING
voltage:3949, level:2

BUTTON_MSG_BATTERY_READING
voltage:3949, level:2

BLE : Pairing mode disabled

BUTTON_MSG_BATTERY_READING
voltage:3949, level:2

BUTTON_MSG_BATTERY_READING
voltage:3949, level:2

BUTTON_MSG_BATTERY_READING
voltage:3949, level:2

BUTTON_MSG_BATTERY_READING
voltage:3949, level:2我的实际电压是3.974V,但是一开始读到的是3.981V,还算比较准,后来突然就跳到了3.949V,差了比较多。
怎么样才能读取的更准?这样突然跳动正常吗?

Andy_Bao 发表于 2018-5-24 01:02:32

这个 ADC 读取应该是精度足够准的。 问题在于电池都是有等效内阻的, 在有负载(尤其电流大的时候)时, 电压读出值是需要计算补偿的。 供电时 正补偿, 充电时负补偿;补偿值跟电流成正比。

pkuzhx 发表于 2018-5-24 08:28:37

Andy_Bao 发表于 2018-5-24 01:02
这个 ADC 读取应该是精度足够准的。 问题在于电池都是有等效内阻的, 在有负载(尤其电流大的时候)时, 电 ...

专业!一般差个不到50mV吧,也确实够用了
页: [1]
查看完整版本: 8670本地电量读取不准怎么办?