| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> STM32采用串口DMA方式,用115200bps或更高速率向上位机连续发送数据 -> 正文阅读 |
|
[嵌入式]STM32采用串口DMA方式,用115200bps或更高速率向上位机连续发送数据 |
文章目录一、DMA的基本介绍1.DMA的定义DMA,全称Direct Memory Access,即直接存储器访问。DMA用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU的干预,通过DMA数据可以快速地移动。这就节省了CPU的资源来做其他操作。 2.DMA传输方式?DMA的作用就是实现数据的直接传输,而去掉了传统数据传输需要CPU寄存器参与的环节,主要涉及四种情况的数据传输,但本质上是一样的,都是从内存的某一区域传输到内存的另一区域(外设的数据寄存器本质上就是内存的一个存储单元)。四种情况的数据传输如下: 3.DMA传输参数我们知道,数据传输,首先需要的是1 数据的 4.DMA的主要特征每个通道都直接连接专用的硬件DMA请求,每个通道都同样支持软件触发。这些功能通过软件来配置; 5.DMA库函数配置过程(1)使能DMA时钟:RCC_AHBPeriphClockCmd(); 6.STM32中的DMA对于大容量的STM32芯片有2个DMA控制器 两个DMA控制器,DMA1有7个通道,DMA2有5个通道。每个通道都可以配置一些外设的地址。 7.DMA中断每个DMA通道都可以在DMA传输过半、传输完成和传输错误时产生中断。为应用的灵活性考虑,通过设置寄存器的不同位来打开这些中断。 8.DMA方式的接口函数
二、DMA方式实现串口通信1.STM32CubeMX工程创建(1)打开STM32CubeMX主界面,点击“ACCESS TO MCU SELECTOR”,创建新项目 2.程序编写(1)在点击GENERATE CODE之后弹出来的界面点击Open Project即可跳转到Keil5进行程序编写
3.程序编译及hex文件创建点击Rebuild编译程序,若没有错误即可成功创建hex文件 4.电路连接
5.程序烧录置BOOT0为0,BOOT1为1 6.串口调试打开野火串口调试助手,将波特率设置为115200,数据位设置为8,停止位设置为1,校验位设置为None,然后点击打开串口 7.运行结果
三、总结DMA是一个好的搬运工,将数据从一个地址空间复制到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。总的来说,用DMA实现串口收发数据,进行数据收发过程中,不需要MCU的干预,由DMA独立完成数据的收发,接收或者发送完成后才进入中断做后续处理,因此MCU使用效率更高。但是我对于DMA的认识还不够,还需要查阅更多相关资料,进行深入学习。 四、参考链接https://blog.csdn.net/as480133937/article/details/104827639/ |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 20:49:38- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |