DMA

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. 通过状态标志位判断是否传输完成
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个专注于USB的驱动工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值