Part Number: MSP430FR5969
Hi there,
I was trying to use DMA to transfer ADC samples from three channel into one Array in a format of {ADC channel 0_Sample0, ADC channel 1_Sample0, ADC channel 2_Sample0, ADC channel 0_Sample1, ADC channel 1_Sample1, ADC channel 2_Sample1, ......}
Noticing the Errata 43 and I tried to use to DMA to achieve that, first one for fix to block with the size of Array, and the other one for changing the source address in a loop of 3. ie: {0x0860, 0x0862, 0x0864}
But for my case, it never work. Even though that in debug session I saw the SA register of first DMA channel was actually updated to the value I wanted, but the data moved to Array is always from the ADC channel set in the DMA init process.
That means once DMA is set up, it would not take the value in DMAxSA or DMAxDA anymore. And I found that statement in User Manual Chapter 11.2.2.2 saying "The DMAxSA, DMAxDA, DMAxSZ registers are copied into temporary registers....."
So I just wonder how the guys achieve these in their project by using two DMA.
BR,
Jason