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.

TMS320F28069: ADC bug in TMS320F28069

Part Number: TMS320F28069


Hello,

I have a question about the ADC peripheral of the TMS320F28069. I want to use all 16 channels. Is this possible?

Lets give me an example:

  • Channel A [A0 - A7] is triggered by one PWM output, lets say PWM output1.
  • Channel B [B0 - B7] is triggered by another PWM output, lets say PWM output2.

One time I want to read all the result from A0 to A7 and other timer B0 to B7.

I read in the errata sheet (sprz342k.pdf) on page 15 a bug about the peripheral, and I don't understand exactly what the workaround is.

The bug description on page 15 is:

"When the ADC conversions are initiated by any source of trigger in either sequential or
simultaneous sampling mode, the first sample may not be the correct conversion result"

Does this mean in my case that I can use only 14 channels instead of 16?

If it is possible to use all 16 channels, can somebody tell me the steps?

Many thanks....

  • Hi Erhan,

    See also e2e.ti.com/.../2109310

    If you don't use the workaround, you will indeed need to discard 1 sample from each of the 2 sets of conversions.

    You can also do something like enter the ISR for samples A0 to A7 sometime before sample A7 is complete and then software trigger A0 to get a good result for A0 too. You need to carefully consider where the RR pointer is after this, because it could result in A1 being the first (bad) sample next time! If you are alternating between SOC0 to SOC7 for A0 to A7 and SOC8 to SOC15 for B0 to B7 the RR pointer may be correctly reset by the other channel group. Otherwise you may want to SW trigger another sample at the end of the conversion set to get things into the right state.