一、概述
UART(Universal Asynchronous Receiver/Transmitter),即通用异步接收器/发送器,是最常用的设备间通信协议之一。它是一种串行、异步、全双工的通信协议,在嵌入式领域应用的非常广泛。
二、通信协议
UART是一种硬件通信协议,以可配置的速度使用异步串行通信,其工作原理是将传输数据的每个字符一位接一位地传输。异步意味着没有时钟信号来同步从发送设备进入接收端的输出位。
在UART中,传输模式为数据包形式。每个数据包由起始位、数据帧、奇偶校验位和停止位组成。
UART数据包格式
其中各个字段的意义如下:
字段名称 |
含义 |
起始位 |
数据线空闲时为高电平,若要发起数据传输,发送器先发出一个低电平的信号并保持一个时钟周期,表示传输字符的开始。 |
数据帧 |
数据帧包含所传输的实际数据。如果使用奇偶校验位,数据帧长度可以是5位到8位。如果不使用奇偶校验位,数据帧长度可以是9位。在大多数情况下,数据以最低有效位优先方式发送。 |
奇偶校验位 |
资料位加上这一位后,使得 |