低功耗产品ADC精确测量电池电压(电量)

低功耗设备电池电压精准测量
本文介绍了一种用于低功耗设备的电池电压精确测量方法,避免了因电池电压下降导致的测量误差。利用STM32L051芯片的特性,通过实时监测VDDA电压并结合分压电路,确保了即使在电池电压低于3.3V时也能获得准确的电压读数。

最近在搞一个小项目用到了电池电量采集,在网上看到了一个低功耗产品教程可实现电池电压精确采集,特此记录学习。https://www.bilibili.com/video/BV1eV411t7fn?p=31
一般电池电量采集有两种方法:

  1. 加电量采集芯片(库仑计)
  2. 分压电路进行ADC采集,进而计算出电压

对于很多低功耗产品来说,外加一个库仑计的成本是不能接受的,所以一般都是使用分压电路来进行电池电压的采集,而一般低功耗产品都把电阻加大至1M-2M,入下图就是经典的电池电压采集电路。
在这里插入图片描述

  • 这样看来貌似很简单的样子,把ADC值取出来,然后再转换为电压即可,实则不然!因为低功耗设备是靠电池供电的,而一般的锂电池的电压是随着电量的降低,电压也随之降低,虽然咱们的电路上一般会加上LDO电源芯片,来让3.6V的电池降压至3.3V给MCU供电。(注:特殊的锂亚电池可以长久保持稳压状态即使电量几乎耗尽)

一般ADC的电压转换方法为:电池电压=3.3*ADC采集值/分压比例

  • 可是咱们为什么用3.3V来乘呢?因为我们已经默认了MCU的电压为3.3V,如果电池电压一直稳定或者是常供电设备,这一点无需关注。但是可充电的锂电池一般随着电量降低电压也会降低,那么当电池的电压降到3.3V以下,经过LDO以后,MCU的电压也会在3.3V以下,再使用3.3带入公式计算,显然是不合理的!
  • 其实ST芯片已经有了一个算法来计算MCU
    VDDA的电压值,这个值是MCU内部自动实时监控的,其中它连接在ADC_IN17通道,通过这个方法咱们就可以确定VDDA的真实电压,同时VREFINT_CA
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值