AnsweredAssumed Answered

Question about continuous sampling of multiple ADC channels

Question asked by Enyart.Jason on Oct 1, 2012
Latest reply on Dec 20, 2012 by Clive One
I would like to continuously sample multiple (~5) channels, preferably with no CPU triggering after the initial setup.  I had been thinking that we would just set up a continuous regular group and then pass back pointers to the the data registers and/or copy the conversions back in the IRQs on a per-channel basis for provision to the application on demand.

However, browsing the docs, my understanding is that all channels in the regular channel group will write their conversions to the same data register meaning that each channel will overwrite the previous channel's conversion and an EOC will occur with only the last regular channel in the SQR having data stored.

I am new to ARMs but this seems odd to me. I would expect to have a data register for each channel or perhaps a queued DR buffer. Am I missing something?

It looks like the best option, given what I would like to do, will be to set up only a single channel in the regular group and then chain up to 4 injected channels to that EOC by  setting CONT and JAUTO (Auto-injection, since the injected group has a DR for each channel in the group).

Any thoughts?

Outcomes