总线协议系列——USART协议初探

前言

概述

USART全名Universal Synchronous/Asynchronous Receiver/Transmitter,也即通用同步/异步串行接收/发送器。是一种异步全双工点对点总线架构,其总共需要TX传输线、RX接收线和GND共地线。如果两个USART硬件没有自主供电VCC,还需要VCC线

电路特性

USART总线采用推挽输出模式,因为其为异步传输模式,也即不存在时钟线,对传输的控制主要由波特率来实现。对于USART来说,数据线的接法就是TX与RX相连,因为双方都存在TX与RX总线,所以可以实现全双工的通信方式

USART总线的电平采用TTL电平,其0和1的确定由数据线上电平与共地线电压差的值所确定。

通信过程

USART通信帧格式

USART在传输数据时以帧为单位,一帧通常为10bit或11bit,如下图所示:

这张图直观展示了一个帧的基础结构,由起始位+数据位+校验位(可选项)+终止位组成。由于USART为低电平有效,所以一帧的开始是数据线上的电平由高电平转向低电平产生一个下降沿作为标志,之后便是8位或9位的数据传输,须知USART的数据传输采用低位有限的方式,先传输数据低位再传输高位。在传输的末尾可以添加校验位,诸如奇偶校验、CRC循环冗余校验等。最后便是停止位,数据线拉高至高电平,表示一次传输完成。同时终止位的拉高至高电平也是为了下一次的传输做准备,这样当下一次传输时在开头可以产生一个下降沿。

数据传输

USART的整个数据传输过程就以上述介绍的帧格式为基础,在每一帧内放入需要传输的数据,TX向数据线上传输数据,RX从数据线上读取数据。这个过程的时序确定由USART双方协商的波特率确定。

posted @   Johnson-Hugo  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
点击右上角即可分享
微信分享提示