cancel
Showing results for 
Search instead for 
Did you mean: 

How to Wire NTC10k Temperature Sensors to NUCLEO-H7S3L8 ADC?

htxy
Associate III

Hello,

 

I’m trying to read temperature from some NTC10k sensors using a NUCLEO-H7S3L8 board. The datasheet says it has 14 ADC channels available, but I’m not sure how to wire the sensors correctly. I am using all channels in single ended mode

Each sensor is a simple 2-wire heat-dependent resistor (variable resistance in ohms). They don’t have their own power supply and only change resistance with temperature.

 

My questions are:

How do I need to wire the NTC10k to an ADC channel so that the MCU can actually measure something?

Do I need a voltage divider or extra resistor in the circuit?

If I want to connect several of these sensors (up to 14), do I need one resistor per sensor, or is there a simpler way?

Thanks in advance.

1 ACCEPTED SOLUTION

Accepted Solutions
LCE
Principal II

LCE_0-1759130228947.png

This is what TDK means - although the capacitor seems to be debatable.
I actually use a H7 ADC for voltage monitoring with many muxed inputs, each input has a divider like that, always with 10k || 10 nF to GND. But with low ADC clock and big sampling times.

View solution in original post

10 REPLIES 10
TDK
Super User

Connect them in series with a 10 kOhm resistor and hook up the middle node to the ADC pin. You need 1 resistor per NTC. After calculating the voltage, back-calculate what the resistance of the NTC is and from there, the temperature.

If you feel a post has answered your question, please click "Accept as Solution".
LCE
Principal II

And do some calculations concerning resistor change per °C and if the resulting voltage change will give you high enough resolution.

Also check the STM32 ADC input impedance, it's usually not that high and might affect your 10k / 10k divider.

Use lots of oversampling, and give each ADC input an extra capacitor with (at least) a few nF.

htxy
Associate III

But if all sensors are positioned indipendently from each other, a seriell connection would mean that a resistance of a previous sensor would effect the next one in the line. Wouldnt a paralell setup be more suitable?

htxy
Associate III

My sampling time per ADC-channel is currently set to round about 614 cycles. Why though should i put a capacitor before the ADC INP pin?

 

Regarding the "manual" calibration, i completely agree

Connect each of them in series with a 10 kOhm resistor. So you have 14 resistors.

14 of these circuits:

[3.3V] -> [10 kOhm] -> [NTC] -> [GND]

Connect the middle node to the ADC pin.

 

I do not recommend a capacitor here.

If you feel a post has answered your question, please click "Accept as Solution".
htxy
Associate III

Sounds fair, just two questions for clarification:

 

- I would connect the line from NTC to GND to the ADC

- Is it working if i supply external voltage for all 14 ADCs? If i supply them with a certain voltage, does it neeed to be as the ADCs VDD(3.3V) or if I use for example VREFBUF/VREF+ the voltage of it?

Connecting GND to the ADC won't help. Connect the middle node in the diagram I gave above. The wire between the resistor and the NTC.

You can use any voltage such that the ADC voltage is within the allowable range. Ensure the voltage supply you use for this can supply enough current for all 14 sensors.

If you feel a post has answered your question, please click "Accept as Solution".
LCE
Principal II

I do not recommend a capacitor here.

I'd rather use a long sampling time and a capacitor for each input.

Even though this slowly changing input signal can easily be filtered digitally, but still there's noise to suppress - and in this case maybe even from inside ADC to the outside. I haven't seen that (haven't checked) for the STM32, but with other ADCs.

LCE
Principal II

LCE_0-1759130228947.png

This is what TDK means - although the capacitor seems to be debatable.
I actually use a H7 ADC for voltage monitoring with many muxed inputs, each input has a divider like that, always with 10k || 10 nF to GND. But with low ADC clock and big sampling times.