「STM32入门」USART串口通信

这篇具有很好参考价值的文章主要介绍了「STM32入门」USART串口通信。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

通信

通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统

通信协议:制定通信的规则,通信双方按照协议规则进行数据收发

STM32常见的通信协议 

本文将介绍USART 串口通信rx和tx,STM32,stm32,单片机,嵌入式硬件

概念解释

  1. TX、RX分别是Transmit和Receive的缩写,代表发送、接受数据
  2. 全双工的含义是发送线路和接受线路互不影响,可以同时进行
  3. 异步指的是没有时钟线的通信,需要通信双方制定帧头帧尾,通信频率等参数
  4. 单端电平指的是通信双方的电压都是以GND为参考电压的,因此这两个设备需要共地
  5. 点对点指的是这个通信只支持两个设备间进行通信

硬件电路连接抽象图 

串口通信rx和tx,STM32,stm32,单片机,嵌入式硬件 

串口参数及时序 

串口通信rx和tx,STM32,stm32,单片机,嵌入式硬件

⚠️  几个需要注意的点

  1. 第二张图D7的后一位是奇偶校验位
  2. 波特率决定了串口通信的速度,举个例子,如果波特率为1000bps,那么一秒就会传输1000个数据,每传输一个数据耗时1毫秒。
  3. 高电平作为空闲位,因此每当传输开始,发送方要先传送一个起始位,也就是低电平,告诉接受方我即将要传输数据了。传输结束后,要传输一个停止位恢复高电平。总结来说,就是TX引脚定时翻转电平,RX引脚定时读取电平,即可完成数据的传输。
  4. 数据位是低位先行,举个例子,比方说要传输一个0x0F的数据,将它转化为二进制就是00001111,那么传输的顺序应该是 1 1 1 1 0 0 0 0。

 USART外设简介

串口通信rx和tx,STM32,stm32,单片机,嵌入式硬件

 USART基本结构图串口通信rx和tx,STM32,stm32,单片机,嵌入式硬件

当数据由数据寄存器TDR转到移位寄存器时,会置一个标志位TXE,我们判断这个标志位,就可以知道是不是可以开始写入下一个数据了。

接收部分也是类似的,在接受控制器的控制下,一位一位地移入接收移位寄存器,移完一帧数据后,数据就会统一转运到接收数据寄存器,并置一个RXNE的标志位,我们检查这个标志位,就可以知道是不是接收到数据了。同时这个标志位也可以申请中断,这样就可以在接收到数据时,直接进入中断函数,然后快速地读取和保存数据。文章来源地址https://www.toymoban.com/news/detail-742535.html

到了这里,关于「STM32入门」USART串口通信的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32单片机(九)USART串口----第三节:USART串口实战练习(串口发送)

    ❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 :适用于想要从零基础开始学习入门单片机,且有一定C语言基础的的童鞋

    2024年02月10日
    浏览(37)
  • STM32单片机(九)USART串口----第四节:USART串口实战练习(串口发送+接收)

    ❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 :适用于想要从零基础开始学习入门单片机,且有一定C语言基础的的童鞋

    2024年02月10日
    浏览(38)
  • STM32CubeMX实现USART串口通信

    硬件:stm32f103c8t6核心板 软件:STM32CubeMX 6.6.1 keil5 mdk 这里就不再详细介绍了,详细请参考上一篇博客: https://blog.csdn.net/qq_55894922/article/details/127232999?spm=1001.2014.3001.5501 若点击 Manage embedded software packages 后,出现失败,则需要随便点击其它任一选项,进行下载一些文件,比如点

    2023年04月17日
    浏览(46)
  • stm32中常见的通信协议之USART(串口)

    USART是一种通用的串行、异步通信总线,该总线有两条数据线,可以实现全双工的发送和接收。 串口的通信速度用波特率来表示,其单位为bps(bit per second)即每秒钟传送bit的数量。 串口规定,数据线在空闲的状态下,必须是置为高电平的状态。 起始信号为低电平,因为串口

    2023年04月08日
    浏览(40)
  • STM32 串口通信USART1的配置和使用

    UART:universal asynchronous receiver and transmitter通用异步收发器 USART:universal synchronous asynchronous receiver and transmitter通用同步异步收发器 上图是利用寄存器配置的步骤,下面我用官方库函数配置USART1 1、要配置串口usart1,先查看数据手册以及开发板原理图的芯片管脚 根据上图可以看

    2024年02月05日
    浏览(41)
  • STM32F4 基于USART串口的蓝牙通信

    目录 一、硬件资源 连接方案 其他配置 二、实验原理 基本定义 USART介绍 USART工作原理 数据发送 数据接收 蓝牙HM-10配置 三、代码部分 usart.c usart.h Serial.c Serial.h main.c 结语 STM32F401,OLED,蓝牙hm10 连接方案 设备1的TX与设备2的RX连接,这样设备1发送的数据可以被设备2接收到。

    2024年01月17日
    浏览(39)
  • 【嵌入式学习-STM32F103-USART串口通信】

    4-1 基本流程 4-2 整体代码 4-2-1 main.c 4-2-2 Serial.c 4-2-3 Serial.h 5-1 查询 5-2 中断 5-3 整体代码 5-3-1 main.c 5-3-2 Serial.c 5-3-3 Serial.h 6-1 使用状态机接收数据包的思路 6-2 串口收发HEX数据包 6-2-1 main.c 6-2-2 Serial.c 6-2-3 Serial.h 6-3串口收发文本数据包 6-3-1 main.c 6-3-2 Serial.c 6-3-3 Serial.h 全双工:打

    2024年02月15日
    浏览(52)
  • STM32串口通信中的USART_RecieveData函数分析

    拿这个中断函数为例         很多人可能注意到了接收数据函数的返回类型为无符号短整型,疑惑这里为什么用了一个无符号字符类型变量rec接收。 先看看这个函数的定义         其实,是因为串口设置的字长为8,所以数据寄存器中第八位为0,第0~7位为数据有效位,

    2024年02月11日
    浏览(29)
  • 江科协STM32教程——STM32 使用串口助手进行LED灯的点亮熄灭灭控制全代码过程(USART串口通信的简单应用)

            使用USART串口通信,通过上位机串口助手发送符串给STM32执行LED灯点亮熄灭操作的流程。         基本的配置如下所示,GPIO口配置的为PA9推挽输出,用于LED灯的操作。其余注意USART_ITConfig和USART_Cmd开启USART接收中断和使能USART运行。         接下来要进行发送字

    2024年03月21日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包