cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F4 ADC Impedance Calculation

bryan costanich
Associate II
Posted on November 05, 2017 at 19:38

Hey folks!

I�m trying to calculate the impedance and current draw of the ADC in an STM32F4 that�s on the Netduino. The data sheet says that the max External Input Impedance is

50K?

, but gives the following equation for calculating the actual impedance:0690X00000608qxQAA.png

I�ve having a hard time tracking down some of these variables, though. For instance, k is supposed to be the number of sampling periods, but I don�t know where that register is defined. I can�t find it anywhere in the firmware source. However, I have found some of the other things:

  • MCU Frequency: 168MHz
  • ADC Clock: set to default, which is peripheral clock / 2 (according to the note next to this in source). I�m pretty sure from my reading that the peripheral clock is the same as the MCU clock. So 168MHz / 2 = 84MHz. However, the data sheet says that the ADC Clock Frequency (fADC) is between 30 and 36MHz for VDDA of 2.5V to 3.6V, and the VDDA on the Netduino should be around 3.3V. So what is the actual value here?
  • ADC Sampling Time: 28 cycles (I found this as a note in the source somewhere)
  • N: 12 (because it�s 12 bit resolution)
  • RADC: This is the sampling switch resistance, and is stated to be 6k? in the data sheet.
  • CADC: this is the internal sample and hold capacitor, which has a stated value of between 4 and 7 pF.I assume I can just use 5.5pF for calculations.

Hoping that you folks can help clear up the ADC Clock value based on the other items so I can do the calculation. Or, if there's some other value I need to know, please let me know so I can track it down.

thanks!!

#stm32f4-adc #adc
12 REPLIES 12
Posted on November 15, 2017 at 04:55

Thank you. I'm still trying to track down all the vars to figure out the actual value, but 6k works for now.

raptorhal2
Lead
Posted on November 15, 2017 at 15:15

Check your math. I get RAIN = 11.175 K. Did you use pico = 10 to the minus 12?

Suggestion: go on the Netduino forum and ask what the MCU clock value is.

Hal

Posted on November 15, 2017 at 17:11

Darnit. I did not convert pico. 

Hal, thanks for all your help here.

MCU Clock is 168MHz.