Question
Are memory-to-memory DMA transfers supported on the ADuCM360, and ADuCM361?
Answer
Yes, memory-to-memory transfers are supported on ADuCM360 and ADuCM361.
Any of the dedicated DMA channels can be used for this type of transfer i.e.
there is no specific channel for memory-to-memory transfer. In the example
below, channel 0 (SPI1TX DMA channel) is used.
1) Flash to SRAM
•Setup the DMA base pointer
oSource end pointer pointing to a location in Flash
oDestination end pointer pointing to a location in SRAM
oAutorequest DMA transfer type
•Enable DMA channel 0
•Enable uDMA
•Initiate a software request on channel 0
2) SRAM to Flash
Before starting the transfer:
•The Flash destination page must be erase.
•The Flash write must be enabled.
The sequence described in 1) can then be used with source and destination
pointer swapped.