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.

MSP430FR2111: Current drain is higher than expected while in LPM4

Part Number: MSP430FR2111

In my design the controller is in LPM4 in a base level loop while the ADC is configured to to do sampling in repeat single channel mode while looking for a voltage reading that exceeds a threshold. My ADC configuration is shown in the code excerpt below. During this loop, the measured current drain of the circuit is approximated 450uA. If this loop is executed with ADC sampling disabled, the current drain is approximately 110 uA. Therefore, it appears that having ADC sampling on is the root cause of the higher current. Is the higher current drain with ADC sampling enabled an expected consequence of doing the sampling, or is there a way to lower the current drain with the sampling enabled?

static const int fireThresholdFlu8_9 = 10;
//static const int fireThresholdFlu12 = 20;

// Configure ADC10 channel 4
ADCCTL0 &= ~ADCENC; // Disable ADC
ADCCTL0 |= ADCSHT_2 | ADCON | ADCMSC;        // ADCON, S&H=16 ADC clks; multiple conversions, those after 1st one done automatically
ADCCTL1 = ADCSHP_1 | ADCCONSEQ_2;             // ADCCLK = MODOSC; sample using timer; repeat single channel
ADCCTL2 = ADCRES_1;                                              // 10-bit conversion results
ADCIE = ADCHIIE;                                                          // Enable ADC above upper threshold interrupt

ADCHI = fireThresholdFlu8_9;

ADCMCTL0 = ADCINCH_4 | ADCSREF_0;               // A4 ADC external input select
ADCCTL0 |= ADCENC | ADCSC;                                 // Sampling and conversion start // Reference: V(R+)= 3V V(R-) = GND

channel = E_CHANNEL4;

  • Data sheet (SLASE78C) Table 5-18 says the ADC draws 207uA (typical) with CONSEQ=2 (and presumably MSC=1), which isn't far from your observations.

    You probably need to consider whether you really need to sample continually -- by using a trigger (CONSEQ=2, MSC=0, SHS > 0) you can tune the sample rate to how often/long your ADCHI events occur. Table 6-15 indicates that the RTC can be used as trigger (SHS=1), and the RTC can run at quite low power.

    [Edit: Fixed data sheet and Table references (I accidentally picked up the FR2311 datasheet).]

**Attention** This is a public forum