一、DMA是什么?
直接存储器访问 (DMA) :用于在外设与存储器之间以及存储器与存储器之
间进行高速数据传输。DMA传输过程的初始化和启动由CPU完成,传输过
程由DMA控制器来执行,无需CPU参与,从而节省CPU资源,提高利用率。

DMA数据传输方式:
普通模式:
传输结束后(即要传输数据的数量达到零),将不再产生DMA操作。若
开始新的DMA传输,需在关闭DMA通道情况下,重新启动DMA传输。
循环模式:
可用于处理环形缓冲区和连续数据流(例如ADC扫描模式)。当激活循
环模式后,每轮传输结束时,要传输的数据数量将自动用设置的初始值
进行加载, 并继续响应DMA请求
二、STM32CubeMX 配置 DMA
1.环境搭建
- 配置外设 RCC ,选择 HSE (外部高速时钟)为 Crystal/Ceramic Resonator

- 设置串口
- 选择USART1,设置 MODE 为 Asynchronous

- 使能中断

本文介绍了直接存储器访问(DMA)的基本概念,并详细讲述了如何使用STM32CubeMX配置STM32的串口DMA,包括环境搭建、DMA配置以及代码修改,实现在高波特率下比中断方式更高效的通信。
最低0.47元/天 解锁文章
3663

被折叠的 条评论
为什么被折叠?



