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.

MSPM0G1507: Temperature Sensor Readings Incorrect

Part Number: MSPM0G1507

Tool/software:

Hello,

I am sampling the temperature sensor on the MSPM0G1507 and I am having some issues when converting the ADC reading to a temperature. My ADC values on ADC0 channel 11 (Temperature Sensor) are around 1760 at room temperature. The trim value read from the factory region is 796. When I make the calculation, I get this result:

Parameters

  • Sampling Time = 25 us
  • TEMP_SENSE0 = 796
  • TS= -1.8 mV/℃ (From slasew9d)
  • TSTRIM = 30 ℃ (From slasew9d)
  • VREF = 1.4 V
  • VREF_TRIM = 1.4 V (From slasew9d)
  • RES = 12 bits

VSAMPLE = (1.4 / 4096) * (1760 - 0.5) ≈ 0. 6014 V

VTRIM = (1.4 / 4096) * (796 - 0.5) ≈ 0. 2719 V

TSAMPLE = (1000 / -1.8) * (0.6014 - 0.2719) ≈ -183.1 ℃

TRM’s (slau846b) example trim value of 1857 provides a more realistic result:

VTRIM = (1.4 / 4096) * (1857 - 0.5) ≈ 0.6345 V

TSAMPLE = (1000 / -1.8) * (0.6014 - 0.6345) + 30 ≈ 48.39 ℃

 

These are the values read from the factory region:

TRACEID: 0x001D1D35

DEVICEID: 0x2BB8802F

USERID: 0x804D2655

TEMP_SENSE0: 0x0000031B

 

I also tested on another board to see if it was a single flawed calibration value, but I read 795 from the TEMP_SENSE0 register. This part is being used on a custom board.

Similar questions seemed to be using early samples, as identified by an empty TRACEID, but this is not the case for my part.

 RE: MSPM0L1304: Internal temperature sensor - factory calibration 

 LP-MSPM0L1306: Temperature sensor formula unclear 

 

It seems like the trim value is off, based on the example from TRM, but I'm not sure if maybe the readings are incorrect instead?

Thanks,

DIM