文章图片
如上DAM芯片外围电路
文章图片
如上 DMA引脚图
1.数据传输三要素: 源目的长度:
1.1 源
DMA 源涉及到俩个,一个是外设源另一个是 系统内部源
1 .外设源
我们通过SDMA_SEL 寄存器选择响应的外部源,然后通过选择DMACCxConfiguration的FlowCntrl
设置DMACC0SrcAddr-外设fifo
DMACCxConfiguration->SrcPeripheral
2.内部系统源
我们直接给地址就行。然后通过选择DMACCxConfiguration的FlowCntr
设置DMACC0SrcAddr-内存地址
2.2 目的外设地址和内存地址
1外设目的
DMACC0DestAddr=外设fifo
DMACCxConfiguration->DestPeripheral
2内部系统员
SrcPeripheral =外设内部地址
2.3 长度
长度设计到三个寄存器DSZTSZTC
DSZ:代表数据宽度:简称位宽
TSZ: brust 传输的时候是4single 时候是1
TC: 传输节拍
所以你一次传输的数据就是 DSZ×TSZ×TC
2 传输完成响应
使能中断DMACCxConfiguration-》H
如果是内存到内存
这可以通过时能SoftBReq 而响应中断
如果是外部只能由上面电路图中引脚DREQ 进行响应。
【DMA分析之2 代码编写】