串口(Serial Port)也叫串行通信接口,通常也叫做 COM 接口,是通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输。
两个 UART 设备的连接示意图如下,UART 与其他模块一般用 2 线(图 1)或 4 线(图 2)相连,它们分别是:
TX: 发送数据端,和对端的 RX 相连
RX:接收数据端,和对端的 TX 相连
RTS: 发送请求信号,用于指示本设备是否准备好,可接受数据,和对端 CTS 相连
CTS: 允许发送信号,用于判断是否可以向对端发送数据,和对端 RTS 相连
串口通信之前,收发双方需要约定好一些参数:波特率,数据格式(起始位,数据位,校验位,停止位)等。通信过程中,串口通过 TX 发送给对端数据,通过 RX 接收对端发送的数据。当串口接收缓存达到预定的门限值时,RTS 变为不可发送数据,对端的 CTS 检测到不可发送数据,则停止发送数据。