Part Number: MSP430F5359
I am using MSP430F5359, my raw ADC value get stuck at 2048. For example, if my voltage is such that the raw values are 1900, I can keep increasing the voltage till it is about 1990, then the raw values jump to 2048 and then stay at 2048 till the voltage is high enough for 2050, then the become linear and normal again. Any ideas why?
the ADC12A is configured using the following code:
REFCTL0 &= ~REFMSTR; // Reset REFMSTR to hand over control to
// ADC12_A ref control registers
ADC12CTL0 = ADC12SHT1_5 + // Sample Hold
ADC12SHT0_5 + // Sample Hold
ADC12REF2_5V; // Enable 2.5Volt Reference
ADC12CTL1 = ADC12SHP + // use sampling timer
ADC12CONSEQ_0 + // Use sampling timer, single sequence
ADC12CSTARTADD_9; // Start scan with channel 9
ADC12CTL2 = ADC12RES_2 + // 12 bit resolution
ADC12SR + // slower, lower power sampling rate
ADC12REFBURST; // Reference is only on when converting
ADC12MCTL9 = ADC12INCH_4 + ADC12SREF_1; // Press 1,Vr+=Vref+ and Vr-=AVss
To begin sampling the system executes the following code:
ADC12CTL0 |= ADC12ON + // Turn on ADC
ADC12REFON + // Turn on the voltage reference
ADC12ENC; // Enable Conversion
ADC12IE |= ADC12IE9; // Enable interrupt
Then each conversion is started by:
ADC12CTL0 |= ADC12SC; // Enable Conversion