16.3.4 DMA Message Transfers
Once the Enable bit is set to start DMA message transfers, the Source/Destination Pointer and Counter registers are initialized to the conditions shown in the table below.
Register | Value Loaded |
---|---|
DMAnSPTR | DMAnSSA |
DMAnSCNT | DMAnSSZ |
DMAnDPTR | DMAnDSA |
DMAnDCNT | DMAnDSZ |
During the DMA operation after each transaction, Table 16-4 and Table 16-5 indicate how the Source/Destination Pointer and Counter registers are modified.
The following sections discuss how to initiate and terminate DMA transfers.
Register | Modified Source Counter/Pointer Value |
---|---|
DMAnSCNT !=
1 |
DMAnSCNT = DMAnSCNT -1 |
SMODE =
00 : DMAnSPTR = DMAnSPTR |
|
SMODE =
01 : DMAnSPTR = DMAnSPTR + 1 |
|
SMODE =
10 : DMAnSPTR = DMAnSPTR - 1 |
|
DMAnSCNT ==
1 |
DMAnSCNT = DMAnSSZ |
DMAnSPTR = DMAnSSA |
Register | Modified Destination Counter/Pointer Value |
---|---|
DMAnDCNT !=
1 |
DMAnDCNT = DMAnDCNT -1 |
DMODE =
00 : DMAnDPTR = DMAnDPTR |
|
DMODE =
01 : DMAnDPTR = DMAnDPTR + 1 |
|
DMODE =
10 : DMAnDPTR = DMAnDPTR - 1 |
|
DMAnDCNT ==
1 |
DMAnDCNT = DMAnDSZ |
DMAnDPTR = DMAnDSA |