011---UART协议的基本知识(一)

发布于:2025-03-11 ⋅ 阅读:(13) ⋅ 点赞:(0)

1. 摘要

文章为学习记录。主要介绍 UART 协议的概述、物理层、协议层、关键参数。

2. UART概述

通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UART(串口),是一种异步****串行数据通信协议。它在发送数据时将并行数据转换成串行数据来传输,在接收数据时将接收到的串行数据转换成并行数据。
UART包括了 RS232、RS499、RS423、RS422 和 RS485 等接口标准规范和总线标准规范。这些标准规定了通信口的电气特性、传输速率、连接特性和接口的机械特性等内容。

3. UART物理层

UART通讯设备之间的常用连接方式如下图所示。
在这里插入图片描述
物理层特点:
(a)只有两根信号线, tx和rx。
(b)对于 PC 来说,它的 tx 要和对于 FPGA 的 rx 连接,同样 PC 的 rx 要和 FPGA 的 tx 连接。

4. UART 协议层

串口数据的发送与接收是基于帧结构的,即一帧一帧的发送与接收数据。最基本的帧结构如下图所示。

在这里插入图片描述

(1) “空闲状态”。不发送或者不接收数据。
(2) “起始位”。固定为0。
(3) “数据位”。默认是8bit。从最低位到最高位依次接收或者发送。
(4) “停止位”。固定为1。

5. UART 关键参数

(1)波特率(Baud):在信息传输通道中,携带数据信息的信号单元叫码元(因为串口是 1bit 进行传输的,所以其码元就是代表一个二进制数),每秒钟传输的码元数称为码元的传输速率,简称波特率,常用符号“Baud”表示,其单位为“波特每秒(Bps)”。典型的波特率有 300, 1200, 2400, 9600, 19200, 115200 等。
(2)数据位(Data bits):单帧 UART 数据传输在开始到停止期间发送的数据位数。可选择为:5、6、7 或者 8(默认)。
(3)奇偶校验类型(Parity Type):是用来验证数据的正确性。奇偶校验一般不使用,如果使用,则既可以做奇校验(Odd)也可以做偶校验(Even)。奇校验(odd parity):数据位中“1”的数目是偶数,则校验位为“1”,如果“1”的数目是奇数,校验位为“0”。偶校验(even parity):如果数据为中“1”的数目是偶数,则校验位为“0”,如果为奇数,校验位为“1”。奇偶校验发生了错误,那么这个字节在传输中一定有错误发生。如果奇偶校验是正确的,那么要么没有发生错误,要么发生了偶数个的错误。
(4)停止位(Stop bit):标志着一帧数据传输完成。可选择为:1(默认)、1.5 或者 2 位。