UART是一个异步串口通信协议,使用UART传输数据时,除了传输数据位之外,还需要传输一些控制位、校验位(一般为奇偶校验)。其实UART是RS232通信标准的一个具体应用。
现在的UART常用的信号有:RX、TX、RTS、CTS
RX | 接收 |
---|---|
TX | 发送 |
RTS | 准备发送 |
CTS | 清除了准备接收 |
RTS与CTS相当于是握手信号,握手之后进行数据的传输。
UART有两种连接方式,分别是Null Modem Connection和Modem Connection。
Null Modem Connection是交叉连接,也即是RX与TX相连,RTS与CTS相连,所以其传输也是全双工的,而且传输的波特率也可以不一样。
对于UART的软件处理方式也有两种,即查询和中断。采用查询方式时,CPU会一直查询是否有数据传输,不能做其他事情。所以更常见的方式是采用中断处理方式。采用中断的方式,可以合理利用CPU资源。等到数据传输完成后产生一个中断请求,然后CPU来进行处理,处理完成以后CPU返回之前的工作。