梗概

视频讲解

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响应,转入中断处理程序,完成结束处理工作。

图解

|