2015-06-12 05:25 AM
Hello,
I am trying to find solution for ADC (single channel) data logging at every 1 uSec using DMA. And DMA should inform CPU after 100 reading i.e after 100usec so that I can process these 100 reading at every 100usec. I am not able to use simple 1usec timer for this task because it will consume almost all processing time.What I have done is as below.I used DMA2_Stream0 channel2 for ADC reg-> ADCDataBuffer and DMA2_Stream1 channel-6 with TIM1 for ADCDataBuffer -> DSTBufferI have tried using DMA2_Stream1 and TIM1 but it is updating DSTBuffer(100 reading) in 1 usec instead of 100usec. So how to configure DMA which increment destination address at every 1usec and inform after 100usecIt would be really helpful if you can provide any suggestion or examples guide for this.Thanks in advance! #stm32f407-adc-tim-dma2015-06-12 06:05 AM
I've posted a number of ADC + DMA + TIM examples. You configure the ADC+DMA to do your 100 samples (or x2) as non-continuous and triggered. Configure the triggering timer to the rate you want.
There are others, try google