Hi Team,
I want to measure the core temperature for the MC9s12ZCM,
I have enabled Temperature sensor and configured voltage level generated by the temperature sensor is driven to a special channel input of the ADC Converter.
| /* Temperature sensor/Bandgap voltage enable bit is enabled */ |
CPMUHTCTL_HTE = 1;
| /*! Voltage Access Select Bit is toggled to read : |
| | * 1) VSEL = 0, internal temp proportional to VHT |
| | * 2) VSEL = 1, Bandgap refernce voltage (VBG) |
| | */ |
CPMUHTCTL_VSEL = 0;
Also configured adc1 channel to read the result of temperature sensor with configuration
Temp Sensor, Internal_0, 4 clock cycles sample time
written {0x00,0xC8,0x00,0x00}, at address 0x00002040
With this configuration, I am getting the raw count for temperature sensor as around 1095:
Considering the ADC reference voltage as 5V (VADD =5V)
Voltage with count 1095 = 1.33 V (with 12 bit adc)
So, for calculating the physical value of temperature I am referring following formula :
VHT(temp) = VHT(150) - (150 - temp) * dVHT
where, as per electrical specification
VHT(150) = 2.33 V
dVHT = 5.05 mv/degree Cel(typical)
So for temperature range 150 to -40 degree VHT ranges from 2.33 to 1.37 V
But in my case for the adc count are read as 1095, so VHT measured is 1.33V which is not in acceptable range f 1.37V to 2.33 so temperature value is bellow -40 degree.
And I think this is not the valid scenario, Core temperature must not be too low.Please help me to resolve this issue. Let me know if I am missing any configuration
Regards,
Amey