The problem to use eDMA to transfer the data collected by ADC0 to the array infinitily

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

The problem to use eDMA to transfer the data collected by ADC0 to the array infinitily

491 Views
wangtezi
Contributor I

My processor is MPC5748G and the compiler is S32.


I want to use eDMA to transfer the data collected by ADC0 to the array. I hope that the DMA operation will be performed automatically after each AD conversion, and the infinite loop will not stop. But in fact, no matter how I set the eDMA parameter and the ADC0 parameter, eDMA can only be transmitted once.


After each startup of the software, the simulation finds that the conversion value of ADC0 has been transferred to the corresponding position of the target array; changing the input of the ADC, it can be seen that the sample value of the ADC has changed, but the data of the eDMA target array has not changed. Looking at the values of each Register did not reveal a problem.


Trying to connect to this channel itself after completing the eDMA major loop is also not successful.


The relevant code is attached.


Can you help me solve it?

0 Kudos
1 Reply

354 Views
davidtosenovjan
NXP TechSupport
NXP TechSupport

Hi, I guess you have incorrectly set CITER/BITER value, it is supposed to be set to the length of the buffer, if it is your intention.

Infinite loop works fine, if channel is not disabled after transfer (i.e. DREQ=0).

0 Kudos