cancel
Showing results for 
Search instead for 
Did you mean: 

Limitations with differential ADC on STM32F3 family

element
Associate II
Posted on September 02, 2016 at 10:18

I'd like to create a multi cell Li-Ion (LiFePo4) battery monitor to measure the voltage of individual cells connected in series.  I was quite happy to find that the STM32F3 family has differential ADC capabilities.

Since each cell is connected in series, I am hopeful that I can measure voltages between any 2 consecutive wires (each wire tied to each junction point between the cells), which will provide a nice increase in maximum cells that can be measured.  However, I saw the following Caution in the RM0316 Reference Manual on page 318:

Caution:

When configuring the channel �i� in differential input mode, its negative input voltage is

connected to ADC_INi+1. As a consequence, channel �i+1� is no longer usable in single-

ended mode or in differential mode and must never be configured to be converted.

I'm still hopeful that I might be able to get this to work though, without having to reduce the available channels in half.  Only 1 channel needs to be sampled at a time and very infrequently.  I will probably be putting the CPU to sleep for periods of time in between sampling as well to save power.  Does this caution still apply, if the ADC controller is completely reset, and then re-configured with a new differential pair (which may share a wire from the previously sampled one)?

Also, I was wondering about safe input voltage ranges.  I'm going to use 3.6V for VREF+.  I see that the ADC inputs appear to accept a max of 4V.  Normally a cell should never go above that (3.6V is the max safe voltage for a LiFePo4 cell), but this monitor will be hooked up when the battery is operating and possibly having a lot of current drawn through the series connected cells.  Something tells me I should protect the inputs with at least a voltage divider or something.  Would be nice to detect voltages slightly over 3.6V anyways.  I need to keep the divider network resistance high though so that it isn't draining the batteries too much.

Thanks for any tips on this project.

Best regards,

Element Green

#adc #stm32f3 #differential-mode
0 REPLIES 0