BL602/604 Reference Manual
6.3.5 DMA interrupt
• DMA_INT_TCOMPLETED
–
Data transmission completed interrupt. When a data transmission is completed, this interrupt will be entered.
• DMA_INT_ERR
–
Data transmission error interrupt, when an error occurs during data transmission, this interrupt will be entered
6.4 Transmission mode
6.4.1 Memory to memory
After this mode is started, the DMA will move the data from the source address to the destination address according
to the set transfer size. After the transfer, the DMA controller will automatically return to the idle state and wait for the
next transfer.
The specific configuration process is as follows:
1. Set the value of the register DMA_C0SrcAddr to the memory address of the source
2. Set the value of the register DMA_C0DstAddr to the target memory address
3. Select the transmission mode and set the value of the DMA_C0Config [FLOWCTRL] bit to 0, that is, select the
memory-to-memory mode
4. Set the value of the corresponding bit in the DMA_C0Control register: set the DI and SI bits to 1 to enable the
automatic address accumulation mode, the DTW and STW bits set the transmission width of the source and
destination, and the DBS and SBS bits set the burst type of the source and destination
5. Select the appropriate channel, enable DMA, and complete the data transfer
6.4.2 Memory to peripheral
In this working mode, the DMA will move data from the source to the internal cache according to the set transfer size
(TransferSize). When the cache space is insufficient, the DMA will automatically suspend it. When there is sufficient
cache space, continue to transfer until it reaches Set the moving quantity.
On the other hand, when the target peripheral request triggers, it will burst the target configuration to the target address
until it reaches the set number of moves and automatically returns to the idle state, waiting for the next startup.
The specific configuration process is as follows:
1. Set the value of the register DMA_C0SrcAddr to the memory address of the source
2. Set the value of the register DMA_C0DstAddr to the target peripheral address
3. Select the transfer mode and set the value of the DMA_C0Config [FLOWCTRL] bit to 1 to select the memory-to-
BL602/604 Reference Manual
75/ 195
@2020 Bouffalo Lab