Posted on August 21, 2014 at 03:37
I am trying to get 24 ADC channels to transfer using DMA. The following code works for ADC2 and ADC3, but ADC1 the data stored in the DMA buffer is random. The data for ADC1 can sometimes appear correct, but the...
Posted on August 26, 2014 at 18:06
The code above still has the DMA memory loss of sync problem. However, it is only a problem when running in the debugger (I'm usingKeil uVision). Running full speed the ADC DMA transfers work perfectly.
...
Posted on August 25, 2014 at 18:17
For future reference, the code below seems to be working correctly. TIM8 is used to control the rate of ADC conversions by using the timer TRGO output.
//static const uint32_t SystemCoreClock = 16800...
Posted on August 22, 2014 at 00:47
I've changed the code to correctly (I think) implement the Triple_Mode_RegSimult. Now I'm using one DMA stream and reading data from the three ADC's using ADC->CDC (common data register). And it works... for a ...
Posted on August 21, 2014 at 17:10
Let me clarify. When I say this line of code does not work.
ADC_CommonInitStructure.ADC_Mode = ADC_Mode_Independent;
I mean it works in the same way as the ADC_TripleMode_RegSimult does. The AD...
Posted on August 21, 2014 at 16:15
Thanks for the quick response.
I was not aware that the triple modes were only usable on one data stream. I did try various combinations of the ADC->CDR with the DMA without success.
The table b...