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.

Where is Piccolo ADC ONESHOT Register

There is a flowchart include the "ONESHOT!=0" content in the chapter 1.3.4 of "TMS320x2802x, 2803x Piccolo Analog-to-Digital Converter (ADC) and Comparator" manual, but cannot find ONESHOT in the ADC registers description, how we should operate ONESHOT in FW?

  • Hi Terry,

    Yes, there's no ONESHOT in ADC registers and is not required. It totally depends upon your implementation of triggered SOC in the round robin scheme; that will decide whether ONESHOT equals 1 or 0 and not the other way round!

    Regards,

    Gautam

  • Hi Gautam

    Oh, do you mean the ADC macro will check ONESHOT 1 or 0 by hardware itself and not need FW involve?  If yes, would you please help more advice when the ONESHOT will be 1 and when it will be 0?

  • Hi Terry,

    ONESHOT=1, for channels present in the round robin wheel.

    ONESHOT=0, for channels present elsewhere

    Regards,

    Gautam

  • Hi Terry,

    Please refer to the F2806x documentation and header files for how ONESHOT operates and where the bit is in the ADC registers.  

    This was a documentation/header file oversight that these have not been updated for the F2802x and F2803x.  You can copy the changes in the F2806x header files to the F2803x/F2802x header files and everything should work.  

    Note that ONESHOT mode is only useful if the workaround used for the first sample issue is to set ADCCLK = 30MHz and to enable Non-overlap.  Otherwise, ONESHOT causes conversions one at a time, which are all bad due to the first sample erratum.