1. 程式人生 > >有關用STM32晶片自帶的ADC測量電池電壓,然後根據放電曲線得到電池容量的問題

有關用STM32晶片自帶的ADC測量電池電壓,然後根據放電曲線得到電池容量的問題

首先,這種方式測量我認為肯定是不能正確得到電池剩餘容量的。STM32的ADC參考電壓,我們一般設定為3.3V,也就是說ADC採集到的外部電壓最高也是3.3V,一般我們使用的電池可能要高於3.3v,這就需要對電池的電壓進行降壓處理。這就存在一個降壓因子,也就是採集到的電壓和電池的實際放電電壓存在某種比例關係,只要得到這個比例因子的值,那麼問題就解決了。

可是,這個比例因子,得到不容易啊。對電池的降壓,一般是通過電阻來實現,如果電流發生變化,那麼降壓的大小就會發生變化,這個比例因子也就發生了變化,這樣通過ADC測量到的的電壓再經過比例因子計算得到的電池電壓就更加的不準確。

其次,電池的放電曲線,在平緩階段,電壓降低的很少,但是放電確放了很多,這種通過電壓判定容量也是有很大的缺陷的。