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.

MSPM0G1505: MSPM0G1505

Part Number: MSPM0G1505
Other Parts Discussed in Thread: SYSCONFIG

Tool/software:

Hi - we are using the ADC12_0 in Sequence mode in a MSPM0G1505. We have set up ADC12 with the following parameters:

1.  Clock Source - ULPCLK

2. Sample Clock divider Div by 8

3. Conversion Mode: Sequence

(a) Set Conversion Start Address - 0; End Address - 7

(b) Enable Repeat Mode is checked

(c) Sampling Mode is Auto

(d) Trigger Source is Software

5. ADC Conversion Memory 0-7 Conversion are set to use Sampling Timer 0 as Sample Period Source.

6. Enable Interrupts is set to MEM0 Result loaded Interrupt

In terms of reading the ADC .. this is the Pseudo Code:

 DL_ADC12_startConversion(ADC12_0_INST);

        while (false == gCheckADC0) {
            }

process ADC registers

DL_ADC12_enableConversions(ADC12_1_INST);
The Interrupt routine is as follows:
 
void ADC12_0_INST_IRQHandler(void)
{
    switch (DL_ADC12_getPendingInterrupt(ADC12_0_INST)) {
        case DL_ADC12_IIDX_MEM0_RESULT_LOADED:
            gCheckADC0 = true;
            break;
        default:
            break;
    }
}
The issue I'm having is that the ADC operation is a bit erratic. Sometimes the interrupt doesn't occur and ADC seems to be busy.
Any pointers why this can be happening? Are the above settings correct?
thanks
 
  • Hi Ranjeet,
    I would recommend to first install/re-install the latest version of CCS (20.0.2), the latest SDK and SYSCONFIG. If that doesn't work, let me know.

    Best Regards,

    Diego Abad

  • Hi Ranjeet, Were you able to try Diego's suggestion (install/re-install the latest version of CCS -20.0.2, the latest SDK and SYSCONFIG?  Any help or change w/ the issue?  Are you using SysConfig for ADC setup/init?

    Thx, Merril

    Hi Diego, Have you heard of any other reports of ADC w/ sequence of channels conversion issues w/ Gx50x devices?  Is there a recommended flow/flow-diagram for using this mode as I don't see one in the TRM.  Do you think any of the ADC errata items (https://www.ti.com/lit/er/slaz742b/slaz742b.pdf ) could be at play here?

    Thx, Merril

  • Hi Newman,
    There is an example of how to do a sequence of channels inside our M0SDK. The project name should be adc12_sequence_conversion. There isn't a flow-diagram for this mode available for this mode. There is one example of a sequence of channel implementation in our M0 Academy ADC Lab. This can also be found in our M0SDK. I think that the workaround from the ADC_ERR_02 could be something to try in this situation since this application uses Repeat Mode.
    Best Regards,
    Diego Abad