STM32F103单片机学习笔记(5):DMA

控制/MCU

1840人已加入

描述

外部中断触发时,DMA向串口发送一次数据。

DMA是一个好东西,它不需要占用CPU的资源,只需要配置好之后初始化使能就可以将数据从一个地址空间快速复制到另一个地址空间,当DMA传输完成的时候产生一个中断。STM32有2个DMA控制器,一共12个通道,每个通道专门用来管理来自于一个或多个外设对寄存器访问的请求,参考STM32参考手册。从外设(TIMx、ADC、SPIx、IIC、USARTx)产生7个请求,通过逻辑或者输入到DMA控制器,这意味着同时只能有一个请求有效,DMA1请求一览表。

STM32

DMA2请求一览表。

STM32

下面是DMA的库

STM32

DMA时钟

STM32

同样,和之前一样,流程图。

STM32

这里具体的代码我就不一一再细说了,只有DAM的初始化和设置我们没有写过,下面是DMA的初始化和设置。

STM32

串口DMA的设置。

STM32

DMA发送使能,在外部中断中调用这个函数。

好了,今天就到这里了。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分