Solved
Continous data transfer to GPIO with DMA SPC56EL
Posted on February 03, 2015 at 16:11
Hello,
I would like to use DMA to control the states of some GPIOs. The software should write the entries of an array to the PGPDO[0]register. For that case, I wrote a small demo program. The outputArray isuint16_t and contains 256 elements.Each element stands for a state of 8 GPIO pins. The software should write these elements circular to the PGPDO[0] register, but it doesn´t work. The configuration looks like that: edmaChannelStart(0);
edmaTCDSetWord0(edmaGetTCD(0),&outputArray);
edmaTCDSetWord1(edmaGetTCD(0),1,1,2);
edmaTCDSetWord2(edmaGetTCD(0),512);
edmaTCDSetWord3(edmaGetTCD(0),-512);
edmaTCDSetWord4(edmaGetTCD(0),&SIUL.PGPDO[0].R);
edmaTCDSetWord5Linked(edmaGetTCD(0),0,0xFF,1);
edmaTCDSetWord6(edmaGetTCD(0),0);
edmaTCDSetWord7Linked(edmaGetTCD(0),0,0xFF,EDMA_TCD_MODE_START);
Can anybody tell me what I have to change in my configuration when I want the DMA transfer to run continuously as fast as possible?
Best regards,
Patrik