STM32DMA实验

本文介绍了STM32F1微控制器如何利用DMA(DirectMemoryAccess)进行串口数据传输。通过初始化DMA通道、配置传输参数、使能DMA及外设功能,实现外设与存储器之间的高效数据交换。在传输过程中,通过监控DMA传输状态,可以实现特定操作,如按键控制数据发送并在完成时闪烁指示灯。
摘要由CSDN通过智能技术生成

1 DMA 简介 DMA,全称是 Direct Memory Access,中文意思为直接存储器访问。DMA 可 用于实现外设与存储器之间或者存储器与存储器之间数据传输的高效性。之所以 称为高效,是因为 DMA 传输数据移动过程无需 CPU 直接操作,这样节省的 CPU 资 源就可供其它操作使用。从硬件层面来理解,DMA 就好像是 RAM 与 I/O 设备间数 据传输的通路,外设与存储器之间或者存储器与存储器之间可以直接在这条通路 上进行数据传输。这里说的外设一般指外设的数据寄存器,比如 ADC、SPI、I2C、 DCMI 等外设的数据寄存器,存储器一般是指片内 SRAM、外部存储器、片内 Flash 等。 STM32F1 最多有 2 个 DMA 控制器( DMA2 仅存在大容量产品中),DMA1 有 7 个通道。 DMA2 有 5 个通道。每个通道专门用来管理来自于一个或多个外设 对存储器访问的请求。还有一个仲裁器来协调各个 DMA 请求的优先权。

目的

本章所要实现的功能是:通过 KEY_UP 按键控制 DMA 串口 1 数据的传送,在 传送过程中让 DS1 指示灯不断闪烁,直到数据传送完成。DS1 指示灯闪烁提示系 统正常运行。程序框架如下: (1)初始化 USART1_TX 对应的 DMA 数据流相关参数 (2)编写主函数

开发步骤

(1)使能 DMA 控制器(DMA1 或 D

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值