2014-08-18 8:39 PM
I enabled ADC with DMA as such:
2015-07-13 9:43 AM
I have the same issue. Did you have any luck solving it?
2015-07-13 10:00 AM
Ok, well then you need to consider the conversion rate and quantity. If you do ONE sample, and it occurs every 30-40 machine cycles, the machine is going to saturate into and out of the interrupt handler.
So, a) pace the conversions at a realistic rate you can actually process them, b) do enough conversions before processing, thereby decimating the interrupt loading.The normal way to do this would be to have a large buffer which you can bisect in a ping/pong fashion with the DMA HT and TC interrupts providing the End-Of-Conversion signal for the block of samples. You'd configure a timer to trigger the conversions at a desired rate, say 44.1 KHz or whatever.If you just want the ADC+DMA to load data into a variable or array in the background, so that whenever you read the data it has the most current values, do you need to interrupt at all?We’re moving the ST Community to a new platform to give you a better and more reliable community experience.