This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP430F2013 Internal Temperature Sensor

Hello all,

 

I'm trying to play with the onchip Temperature sensor.

I performed some single shot conversions. Using internal 1,2V ref voltage, pair A6 (Temperature Sensor).

I get around the value 0xD270 (+/-8LSB) in SD16MEM0.  Format is configured as "Bipolar Offset binary".

Now is coming my problem. I want to convert this value into a temperature one. To what I understood about the formating, 0x8000=0V so  0xD270 equals 386mV (= (0xD270-0x8000)*1200mV / 0xFFFF)?

Considering a 3,55mV/°C and a 0 offset, I'm around -164°C (=(386mV/3,55)-273). 

Even considering an offset, I am very far away from expected values (room temperature).

What could be wrong in my calculation ?

Thanks in advance for your help[:)]

 

My config:

SD16CCTL0 = 0x0408

SD16INCTL0 = 0x06

SD16IV = 0x0

SD16CTL  = 0x001C

SD16AE=0x00

  • Hi Fabrice,

    I'm not sure where you got the 3.55 figure from. According to the figures on P48 of the 2013's data sheet the sensor temperature coefficient (TC) is somewhere in the range 1.18 to 1.46 mV/K and typically 1.32 mV/K. So, using the 'typical' figure, your 386mV represents 386/1.32 = 292.4K = 19.4C, which is what you are expecting.

    For accurate measurements, however, the biggest problem is the sensor's offset. This is quoted (same page) as being between -100 and +100mV. So for the worst-case scenario with TC = 1.18,  your measured temperature (if you assume a zero offset) could have an error of 100/1.18 = + or - 85 degrees. If you want an accurate measurement, you would need to calibrate the sensor by comparing the sensor output values at two or more different (preferably widely spaced)  accurately known temperatures (e.g. 0 and 20 C).

  • thanks for your reply. I misread the datasheet and the 3,55mV/°C was for the 2012 version, not the 2013 version.

     

    You are right about the offset. I only wanted to use the internal temp sensor to make me familiar with  the SD16 module and espcially with the bipolar/unipolar SDMEM0 formatting .

    I would better play with the A5 channel (Vcc/11) which is a known value.

     

    I just discovered that all measurements were wrong because of the clock rate that was too high I always got much lower results than expected. just changed SD16SSEL and SD16XDIV

**Attention** This is a public forum