Hi everyone,
I'm trying to measure battery level using nRF52833. Reading previous posts, there are two popular ways to measure battery level with SAADC module 1) battery detection on the VDD pin; 2) having voltage divider and connect the power source to an analog pin.
The following is my power circuit diagram.
For battery detection on the VDD pin, I config the pin as
NRF_DRV_SAADC_DEFAULT_CHANNEL_CONFIG_SE(NRF_SAADC_INPUT_VDD);
However, since I'm using a voltage regulator chip to obtain a stable voltage 3V, even the battery is draining during the circuit operation, it still stays stably at 3V. Thus, I'm not sure if this approach is feasible. Please advise!
For battery detection using voltage divider (R1 = R2 = 100kOHM, C = 1nF), since the boost DC-DC regulator requires the min voltage of 0.7V, my circuit can only operate when its battery from 0.7V - 1.5V. Thus, the voltage after going through the voltage divider will be 0.35V to 0.75V and will be fed to an analog pin (AIN). In this case how can I formulate to have 100% battery level at 0.75V and 0% battery level at 0.35V?
The following guideline was found in app_util.h in the nRF5_SDK. Not sure if I should use this like the way I should do?
* The discharge curve for CR2032 is non-linear. In this model it is split into * 4 linear sections: * - Section 1: 3.0V - 2.9V = 100% - 42% (58% drop on 100 mV) * - Section 2: 2.9V - 2.74V = 42% - 18% (24% drop on 160 mV) * - Section 3: 2.74V - 2.44V = 18% - 6% (12% drop on 300 mV) * - Section 4: 2.44V - 2.1V = 6% - 0% (6% drop on 340 mV)