Iam 鼎!
DMA框架解析1
DMA框架解析2
DMA框架解析3
源、目标和传输模式
源传输和目标传输在整个 4 GB 区域(地址在 0x0000 0000 和 0xFFFF FFFF 之间)都可以
寻址外设和存储器(这个功能是相对牛的了)。关于这4GB地址映射方面知识,可以看下面的连接:
- 储存空间映射4
- 储存空间重映射
- 位带与别名区6
传输方向使用 DMA_SxCR 寄存器中的 DIR[1:0] 位进行配置,有三种可能的传输方向:存储
器到外设、外设到存储器或存储器到存储器。
外设到存储器模式
解析:
- 使能这种模式(将 DMA_SxCR 寄存器中的位 EN 置 1) 时,每次产生外设请求,数据流都会启动数据源到 FIFO 的传输。达到 FIFO 的阈值级别时, FIFO 的内容移出并存储到目标中。如果 DMA_SxNDTR 寄存器达到零、外设请求传输终止(在使用外设流控制器的情况下)或DMA_SxCR 寄存器中的 EN 位由软件清零,传输即会停止。
- 在直接模式下(当 DMA_SxFCR 寄存器中的 DMDIS 值为“0”时),不使用 FIFO 的阈值级别控制:每完成一次从外设到 FIFO 的数据传输后,相应的数据立即就会移出并存储到目标中。
- 只有赢得了数据流的仲裁后,相应数据流才有权访问 AHB 源或目标端口。系统使用在DMA_SxCR 寄存器 PL[1:0] 位中为每个数据流定义的优先级执行仲裁。
总结:第1条内容主要注意如何启动以及停止数据流,了解工作过程。第2条解释了直接模式和FIFO模式的区别。
存储器到外设模式