【记录】嵌入式经典通信UART理解

目录

        UART简介

通信基础—USART和UART区别

通信基础—同步通信和异步通信

通信基础—并行通信和串行通信

通信基础—单工通信和双工通信

通信基础—比特率

UART帧格式

UART硬件连接

UART控制器


UART简介

UART(Universal Asynchronous Receiver Transmitter)即通用异步收发器,是一种通用的串行、异步酒信总线该总线有两条数据线(一条数据线用于发送TXD,另一条数据线用于接收 RXD),可以实现全双工的发送和接收在嵌入式系统中常用于主机与辅助设备之间的通信。

通信基础—USART和UART区别

USART:通用同步和异步收发器

UART:通用异步收发器

当进行异步通信时,这两者是没有区别的。区别在于USART比UART多了同步通信功能。

这个同步通信功能可以把USART当做SPI来用,比如用USART来驱动SPI设备。

通信基础—同步通信和异步通信

同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。

异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。

同步是阻塞模式,异步是非阻塞模式。

【记录】嵌入式经典通信UART理解_第1张图片

通信基础—并行通信和串行通信

并行通信:一次性传送一个字长的数据

【记录】嵌入式经典通信UART理解_第2张图片

串行通信:一般来讲数据线只有一根,一位一位的传输数据。

【记录】嵌入式经典通信UART理解_第3张图片

并行:通信速度快,但是使用总线多,浪费资源,同时布线难度大,而且多条总线容易产生信号干扰。

通信基础—单工通信和双工通信

单工通信:只能单向传送信息。

【记录】嵌入式经典通信UART理解_第4张图片

双工通信:能实现双向传送信息。

    1.半双工:单个芯片发送和接收只能实现一个,不能同时。

【记录】嵌入式经典通信UART理解_第5张图片

    2.全双工:单个芯片发送和接收能同时实现。

【记录】嵌入式经典通信UART理解_第6张图片

如果总线数据线只有一根就是半双工,数据线有两根就是全双工。

通信基础—比特率

比特率用于描述UART通信时的通信速度,其单位为bps(bit per second)即每秒钟传送的bit的数量。

UART帧格式

【记录】嵌入式经典通信UART理解_第7张图片

高电平代表1,低电平代表0。

比如要发送0X55,转换为2进制的话就是要发送01010101。在空闲时数据线处于高电平。

起始位,代表发送数据开始,为低电平。

数据位发送时,先发送低位,后发送高位(可以发送5-8位,一般发送8位,因为1字节=8bit)即10101010。

校验位用来校验接收与发送是否一致。串口当中最常使用的是奇偶校验,比如01010101中1的个数是偶数,因此校验位就写个1,接收到的如果发现校验位是0,即奇数,就说明发生了错误。校验位只能去校验有没有错误产生,但不能进行修正。校验位可有可无,使用校验位会使通信速度降低,但是准确性提高。

停止位表示一次通信的结束,为高电平。

如果要发送多个字节,必须接收到上一个发送数据的停止位才可以,即每次最多允许一个字节发送,原因:避免产生累积误差。

UART硬件连接

A的发送器对应B的接收器;A的接收器对应B的发送器。

【记录】嵌入式经典通信UART理解_第8张图片

UART控制器

一般情况下处理器中都会集成UART控制器 我们使用UART进行通信时候只需对其内部的相 关寄存器进行设置即可。

【记录】嵌入式经典通信UART理解_第9张图片

你可能感兴趣的:(stm32,单片机,嵌入式硬件,1024程序员节)