Part Number: MSP430FR2111
Hi Champs,
My customer is designing a control board for smart grid using MSP430FR2111. During their debugging, they found when enabling LPM3, there will be an erroneous offset on A0 channel. You can find their code and testing results as follows.
A dry battery with resistive voltage divider was connected to both the A0 and A1 channels.
When enabling LPM3, the code is as follows
InitAdc10(ADCSSEL_0);
AdcVoltageRef(Enable);
InitTimerB00(8);
__bis_SR_register(GIE);
while(1)
{
if(AdcFlg)
{
FaultCalculate();
AdcFlg = 0;
}
__bis_SR_register(LPM3_bits | GIE);
}
And the results can be found in the following figure.
If MSP430 is set to active mode all the time, the code is as follows.
InitAdc10(ADCSSEL_0);
AdcVoltageRef(Enable);
InitTimerB00(8);
__bis_SR_register(GIE);
while(1)
{
//if(AdcFlg)
//{
// FaultCalculate();
// AdcFlg = 0;
// }
// __bis_SR_register(LPM3_bits | GIE);
}
The result is as follows.
Would you kindly suggest the root cause? Thanks.
Regards,
Young


