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.

LAUNCHXL-F28379D: Internal Temperature Sensor Bug

Part Number: LAUNCHXL-F28379D


Hi all

I was examining internal temperature sensor of the F28379D on the Launchpad and got a problem with it.

I was heating it slowly with an heating fan and observed the sensor results. In the beginning, the temperature was rising, but at some point the temperature dropped down below zero. When i stopped heating, the temperature rised to the point, where it started falling, and the began decreasing. Well, i suggest you look at the attached picture.

The measurements are preformed on the CPU1. I've checked the VREFHI scheme: element U13 on the scheme (5V -> 3V converter) is operating normally. During the test i heat only the MCU, and not the whole board. I did not measure the actual temperature of the case with any external device, but i am pretty sure that it was not really hot - i can touch it with my finger right after removing the fan. Maybe something about 65 degrees.

The core is running on its rated 200 MHz frequency.

Init code for the ADC:

    EALLOW;
    // Init ADC
AdcaRegs.ADCCTL2.bit.PRESCALE = 6; //set ADCCLK divider to /4 AdcSetMode(ADC_ADCA, ADC_RESOLUTION_12BIT, ADC_SIGNALMODE_SINGLE); // Non-differential signal, 12 bit resolution AdcaRegs.ADCCTL1.bit.ADCPWDNZ = 1; // Power-up ADC // Enable temprature sensor on Adca13 channel AnalogSubsysRegs.TSNSCTL.bit.ENABLE = 1; // Setup ADC channel AdcaRegs.ADCSOC0CTL.bit.ACQPS = 10; // Sample-and-Hold Window: 10 cycles AdcaRegs.ADCSOC0CTL.bit.CHSEL = 13; // Channel ADCINA13 - internal TempSens AdcaRegs.ADCSOC0CTL.bit.TRIGSEL = 0x0; // Trigger - Software DELAY_US(1000L); // Force conversion AdcaRegs.ADCSOCFRC1.bit.SOC0 = 1; DELAY_US(1000L); EDIS;

For conversion into degrees i used code from the C2000 library. Anyway, the red line on the picture shows raw ADCRESULT.

It's taken into account, that VREFHI is 3.0V instead of 2.5V, but again, i don't think that matters.

On the picture below: when the green line starts rising - is the moment when i applied heating. The point where the blue dashed cursor is placed - i removed heating. The oscillations of the green line in the end - i was just randomly moving the fan around the MCU.

Could you please help me with that? What can be the problem?