嵌入式硬件之串口uart

UART硬件

UART引脚定义

  • TXD : 串行数据发送引脚
  • RXD : 串行数据接受引脚

UART是串行异步通信,低位先传输。

UART通信协议

异步通信以一个字符为传输单位,波特率规定的是每个字符间内位传输的间隔时间,而每个字符间传输间隔时间是不固定的。

uart通常有以下几个概念

  1. 空闲位 : 在txd或rxd没有被占用的时候(没有数据发送),txd与txd为高电平(即空闲位)。
  2. 起始位 : 在空闲状态下根据波特率txd发送一个位的低电平(告诉对方开始接受数据了。)
  3. 数据位 : 一般一个字节数据从低位开始发送(LSB在前,MSB在后)
  4. 校验位 : 发完数据位后,接上校验位(奇偶校验或者无,这个双方要约定好,否则会乱码)
  5. 停止位 : 发送完校验位后,接上1.5,2bit的高电平(表示这个字节发送完成)

uart时序图

uart时钟波特率问题

uart时钟是靠起始位和波特率来同步的。每发送一个字符都会重新校准起始位。
众所周知,如果波特率不一样肯定会乱码。
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_33894122/article/details/81110689