梗概
视频讲解
10行代码,就能让你真正理解DMA!你用的可能很少,但是在单片机中非常重要!_哔哩哔哩_bilibili
适用范围
特点:
类似于程序控制I-O,但是用DMA控制器代替CPU来完成所有工作。
优点:
- 操作均由硬件电路实现,传输速度快;
- CPU仅在初始化和结束时参与,基本上不干预数据传送,可减少CPU开销
- CPU与外设并行工作,效率高。
缺点:
- DMA控制器的速度不如CPU
- 性能不高
运行过程
DMA方式的数据传送分三个阶段:
传送前预处理
- 由CPU执行I/O指令,对DMA控制器进行初始化和启动
- 告诉DMA需要传送哪些数据,多少数据
数据传送阶段
- 由DMA控制器控制总线进行数据传送。
- CPU不干预,CPU可以干其他事
后处理阶段
数据传送结束,DMA控制器向CPU发中断请求,报告DMA操作结束。CPU响应,转入中断处理程序,完成结束处理工作。