Skip to content

UART子系统

UART协议

UART是通用异步收发器,通信双方只要采用相同的帧格式和波特率,就可以在无需时钟信号的情况下,仅使用两根信号线(RX和TX),就能实现全双工的发送和接收。

UART使用标准的TTL/CMOS逻辑电平来表示数据,1表示高电平,0表示低电平。数据传输速率用波特率来表示,双方的波特率必须要保持一致。

UART帧格式

  • 空闲位:高电平,表示没有数据传输
  • 起始位:低电平,开始传送数据
  • 数据位:5~8位,先发数据的低位,再发高位
  • 校验位:奇偶校验(非必须),将数据位加上校验位,1的位数为偶数(偶校验),1的位数为奇数(奇校验)
  • 停止位:高电平,表示数据传输结束

UART的缺点:

1.电气接口不统一

UART只对信号时序进行了定义,而未定义接口的电气特性;

UART通信时一般直接使用处理器使用的电平,即TTL电平,不同处理器不能直接通信;

UART没有规定不同器件连接时连接器的标准,所以不同器件之间通过UART通信时连接很不方便。

2.抗干扰能力差

UART使用TTL信号来表示0和1,但TTL信号的抗干扰能力很差,数据在传输过程中很容易出错。

3.通信距离极短

因为TTL信号抗干扰能力差, 所以其通信距离也很短,一般只能用于一个电路板上的两个不同芯片之间的通信。