欢迎光临
我们一直在努力

chx用什么配置stm32寄存器版学习笔记 DMA

DMA(Direct Memory Access),直接存储器访问。DMA传输方式无需CPU直接控制传输,通过硬件为RAM与I/O设备开辟一条直接传送数据的通路,使CPU效率大大提高。stm32f103有2个DMA控制器,DMA1有7个通道,DMA2有5个通道,专门用来管理来自外设对存储器的访问请求,还有一个仲裁器来协调各个DMA请求的优先权。

一:DMA各通道请求

  例如,串口1发送的DMA,就要用到DMA1的通道4(也就是说通道与各通讯口是相互对应的)

       参考手册

 

 

 

 

 

 

二.DMA1通道4(串口1发送)配置步骤

①设置外设地址

DMA通道x外设地址寄存器(DMA_CPARx)(x = 1…7)

 

 

②设置存储器地址

 存储器地址通过DMA1_CMAR设置

 

 

 

 

 

 

 

 Eg:DMA_CHx->CMAR=(u32)cmar; //DMA1,存储器地址

 

③设置传输数据量

 

 

 

Eg:DMA_CHx->CNDTR=cndtr;     //DMA1,传输数据量

 

④设置通道4的配置信息

 

 

 

 

 

 

⑤使能DMA1通道4,启动传输

DMAx_CCRx 最低位开启DMA传输。

注意要设置USART1的使能DMA传输位,通过USART1->CR3的第七位设置,这样就可以启动一次USART1的DMA传输了。

 

DMA中断状态显示及清除

DMA中断状态寄存器(DMA_ISR)

 

 

 

 

 

 

 

 

 

 

 

 

 

DMA1通道4(串口1发送)应用

赞(0)
未经允许不得转载:上海聚慕医疗器械有限公司 » chx用什么配置stm32寄存器版学习笔记 DMA

登录

找回密码

注册