2019-08-14 01:00 AM
As per table 69 under section 5.3.22 of datasheet STM32F405XX/407XX (DocID022152 Rev 8), the parameters of “Average slope�? (Avg_Slope) and “Voltage at 25°C�? are specified to be 2.5mV/°C and 0.76V, respectively. Does it imply the sensitivity to be 400°C/V and hence the full 12-bit conversion range from -279°C (0X000) to 1041°C (0X3FF)?
When referring to the Reference manual RM0090 (DocID078909 Rev 11) section 13.10, the Main Features of that temperature sensor are twofold: supported temperature range from -40°C to 125°C and precision ±1.5°C.
As such, should the 12-bit ADC always be bounded within the range of 0X2E5 (741 in decimal) to 0X4E5 (1253 in decimal)? Nevertheless, I found that my STM32F407ZG always outputs below 0X2C4 at room temperature. May anyone validate the “Average slope�? (Avg_Slope) to be 2.5mV/°C? It seems more reasonable if that parameter would be 25mV/°C.
Solved! Go to Solution.
2019-08-14 02:22 AM
Obvious the temperature sensor in in the chip itself and so the temperature range is the range for the whole chip, so mostly -40 to 95 Celsius. Slope is negative and in the range given. Have a look at the stored . Temperature sensor calibration values. Also be aware to enable the sensor and to have long enough sampling times.
2019-08-14 02:22 AM
Obvious the temperature sensor in in the chip itself and so the temperature range is the range for the whole chip, so mostly -40 to 95 Celsius. Slope is negative and in the range given. Have a look at the stored . Temperature sensor calibration values. Also be aware to enable the sensor and to have long enough sampling times.
2019-08-14 06:32 PM
Thanks for your prompt help.
I found my code making two (2) mistakes:
(1) insufficient sampling time to avoid cross-talk when reading multiple channels;
(2) data truncation to 10-bit ADC (<-my bad);
The temperature sensor works fine now and the 12-bit ADC value is slightly above 1000, indicating its internal temperature is around 4X°C.