PE 10.4 Driver Suite and eDMA Initialization

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

PE 10.4 Driver Suite and eDMA Initialization

441 Views
ERussell
Contributor IV

I am trying to follow the example using PDB, ADC, and DMA described in App note AN4590 for a k64 processor. I don't seem to be able to properly set the Address adjustment field. At the completion of the major iteration count I want to be able to set the destination address (or the source address in the linked DMA channel) back to the beginning of a buffer in memory. This would mean subtracting a value from the current pointer (as described in the app note), but the Address adjustment field only allows positive values. I thought I could get around this by enabling Scatter/gather processing and putting the beginning address of the destination (or source) buffer into the Address adjustment field, but the value is ignored by PE. Is this a bug in 10.4 and the workaround is to manually set the registers myself or am I misunderstanding how this is supposed to work?

Thanks,

Elizabeth

0 Kudos
1 Reply

255 Views
Lukas_Heczko
NXP Employee
NXP Employee

Hi Elizabeth,

I assume you are using Init_eDMA component. The address adjustment property sets the "raw", unsigned value of the register. In order to set a negative value you have to store it as a two's complement notation. So if you for example want to set -24 as an adjustment then the address adjustment property should be set to 0xFFFFFFE8.

Hope this helps,

Lukas

0 Kudos