DMA

来源:互联网 发布:管家婆软件操作流程 编辑:程序博客网 时间:2024/05/18 01:42
DMA,全称为: Direct Memory Access,即直接存储器访问, DMA 传输将数据从一个地址空间复制到另外一个地址空间。 当 CPU 初始化这个传输动作,传输动作本身是由DMA 控制器 来实行和完成。
STM32 最多有 2 个 DMA 控制器( DMA2 仅存在大容量产品中), DMA1 有 7 个通道。 DMA2 有 个通道。每个通道专门用来管理来自于一个或多个外设对存储器访问的请求。还有一个仲裁起来协调各个 DMA 请求的优先权。
配置DMA
1. 使能 DMA 时钟
2. 配置各个寄存器为缺省值
3. 配置 DMA 各个参数
(内存地址,外设地址,
内存数据宽度,外设数据宽度,
内存地址寄存器是否递增,外设地址寄存器是否递增,
传输方向 DIR,
一次传输最大数据量,
是否循环模式,
DMA通道优先级,
是否从内存到内存)
4. 使能串口 DMA 发送
5. 使能 DMA 通道开始传输
6. 读取寄存器计算传输百分比
7. 通过状态标志位判断是否传输完成
原创粉丝点击