Analog-to-digital converter (ADC)
RM0090
416/1731
DocID018909 Rev 11
Figure 63. Temperature sensor and V
REFINT
channel block diagram
1. V
SENSE
is input to ADC1_IN16 for the STM23F40x and STM32F41x devices and to ADC1_IN18 for the
STM32F42x and STM32F43x devices.
Reading the temperature
To use the sensor:
3. Select ADC1_IN16 or ADC1_IN18 input channel.
4. Select a sampling time greater than the minimum sampling time specified in the
datasheet.
5. Set the TSVREFE bit in the ADC_CCR register to wake up the temperature sensor
from power down mode
6. Start the ADC conversion by setting the SWSTART bit (or by external trigger)
7. Read the resulting V
SENSE
data in the ADC data register
8. Calculate the temperature using the following formula:
Temperature (in °C) = {(V
SENSE
– V
25
) / Avg_Slope} + 25
Where:
–
V
25
= V
SENSE
value for 25° C
–
Avg_Slope = average slope of the temperature vs. V
SENSE
curve (given in mV/°C
or µV/°C)
Refer to the datasheet’s electrical characteristics section for the actual values of V
25
and Avg_Slope.
Note:
The sensor has a startup time after waking from power down mode before it can output
V
SENSE
at the correct level. The ADC also has a startup time after power-on, so to minimize
the delay, the ADON and TSVREFE bits should be set at the same time.
The temperature sensor output voltage changes linearly with temperature. The offset of this
linear function depends on each chip due to process variation (up to 45 °C from one chip to
another).
-36
4EMPERATURE
SENSOR
63%.3%
4362%&%CONTROLBIT
!$#
!DDRESSDATAB
US
62%&).4
!$#?).
!$#?).
)NTERNAL
POWERBLOCK
!$#?).
CONVERTEDDATA