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.

Table 16-3. DMA Initial Conditions
RegisterValue Loaded
DMAnSPTR DMAnSSA
DMAnSCNTDMAnSSZ
DMAnDPTR DMAnDSA
DMAnDCNTDMAnDSZ

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.

Table 16-4. DMA Source Pointer/Counter During Operation
RegisterModified Source Counter/Pointer Value
DMAnSCNT != 1DMAnSCNT = DMAnSCNT -1
SMODE = 00: DMAnSPTR = DMAnSPTR
SMODE = 01: DMAnSPTR = DMAnSPTR + 1
SMODE = 10: DMAnSPTR = DMAnSPTR - 1
DMAnSCNT == 1DMAnSCNT = DMAnSSZ
DMAnSPTR = DMAnSSA
Table 16-5. DMA Destination Pointer/Counter During Operation
RegisterModified Destination Counter/Pointer Value
DMAnDCNT != 1DMAnDCNT = DMAnDCNT -1
DMODE = 00: DMAnDPTR = DMAnDPTR
DMODE = 01: DMAnDPTR = DMAnDPTR + 1
DMODE = 10: DMAnDPTR = DMAnDPTR - 1
DMAnDCNT == 1DMAnDCNT = DMAnDSZ
DMAnDPTR = DMAnDSA