TI E2E Community
MSP430 Ultra-Low Power 16-bit Microcontroller Forum
MSP430 Internal Temperature ADC measurement issue...
I am using the MSP430F1611, and I am finding reading the internal temperature (ADC internal channel 10) does not appear to be very stable. I have setup the ADC12CLK to use a 32kHz ACLK and am using sample and hold of 64 ADC12CLK cycles (SHT_4). I am reading the internal temperature ADC at a rate of 1Hz and find the temperature varies as much as 20 to 30 degrees C ( as much as 200 ADC counts).
If I switch the ADC12CLK to use the internal ADC12 OSC, and change the samle and hold to 1024 (SHT_15), the readings seem a bit more stable, but I still see variations of 20 to 30 degrees over a period of time.
I understand the internal temp may not be all that acurate, but I assume is should be a bit more stable? Anyone seen similar issues? Is there a range of ADC12CLK frequencies that should be valid, i.e. running the ADC12CLK from ACLK 32kHz should not be an issue?
What reference are you using for your conversions?
Please note the specs for the temperature sensor and Note 2 on page 42 of the datasheet: http://focus.ti.com/lit/ds/symlink/msp430f1611.pdf Essentially the temperature sensor can require a 1-point calibration to get a semi-accurate value, since the temp sensor can be as much as 20 degrees off initially (mentioned in Note 2). If the user does a 1 point calibration at 25 deg C then the accuracy at that temperature will be very good. As you move away from 25 deg calibration point then accuracy can diminish proportionally with the TCsensor (mV/degC) min and max stated in the datasheet .
I have see the note you referenced, and I am aware that the temp needs to be calibrated. What I am seeing is the ADC readings for the temp seem to be jumping around and does not seem to be stable. I am sure the temp on my desktop is not jumping around like I see the MSP430 temp ADC readings.
I am using the internal 2.5V VRef and the part is running off 2.8V.
Typically, I am converting ADC readings at 20Hz (every 50ms). I am using the ADC memory to setup convertions for six channels, one of which is the MSP430 Temp (channel 10). The ADC12MCTLx is set to use SREF_1 (VR+ = VREF+ and VR- = AVss). I have a total of six channels defined with the last channel set as "End of Sequence" (EOS).
ADC12CTL0 is set with (REF2_5V | MSC | SHT0_4 | SHT1_4 | ADC12ON | REFON)ADC12CTL1 is set with (CONSEQ_1 | ADCSSEL_1 | ADC12DIV_0 | SHP | SHS_0) where ACLK is 32kHz.
My other external voltages being measured look good and stable. The MSP430 Temp seems to be the only one jumping around. Again, if I run the ADC12 using ADC12OSC (5Mhz) instead, the readings seem to be more stable, but I do seem to get occational spikes.
Again, I am not looking for the accuracy (that can be resolved with Calibration and an offset), I am just trying to under stand the jitter I am seeing.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.