4 Replies Latest reply on Oct 9, 2017 12:31 PM by user_78878863

    Reading battery voltage via ADC

    bri_2235981

      I have a PSOC 4 BLE based project that runs off of a LiIon battery.  The PSoC runs off of 3.3V, from a buck/boost regulator, so that I can run off the battery from a high of over 4V to a low of under 3V.

       

      I'd like to be able to measure the battery voltage via the PSoC ADC.  This Cypress article has a great hack to read the battery voltage without using a voltage divider, by sample/holding the internal 1.024V Vref on an external cap, and then reading back the external caps voltage with VDDA as Vref:

       

      http://www.cypress.com/blog/psoc-hacker-blog/measuring-vdd-battery-volts-psoc4

       

      However, this only works for VDDA > VDDD, as that is a requirement of the PSoC (per the PSoC 4 family datasheet).

       

      I really like the approach in the article, because:

      • As opposed to a voltage divider, it does not drain the battery all the time.
      • It requires just one external component.

       

      Any thoughts on how I could accomplish this even when the battery voltage is less than VDDD?

       

      Thanks!