CTS 是 Clear To Send 的缩写意思是发送允许。在通信过程中它是一个输入信号用于判断是否可以向对方发送数据。低电平有效低电平说明本设备可以向对方发送数据。
RTS 是 Require To Send 的缩写意思是发送请求。它是一个输出信号用于指示本设备准备好可接收数据低电平有效低电平说明本设备可以接收数据。
在半双工通信情况下由于处理速度不同可能导致数据丢失此时就需要 CTS/RTS 来进行流控。
当串口准备好发送数据时RTS 信号置高电平接收端若能接收数据则发送高电平的 CTS 信号若缓冲区满则 CTS 置低电平发送端停止发送。发送端收到 CTS 后 RTS 拉高开始发送发送完 RTS 置低CTS 也置低。
在硬件连接方面设备 1 的 RTS 连接设备 2 的 CTS设备 1 的 CTS 连接设备 2 的 RTS即交叉连接。若使用流控CTS 不应悬空否则可能因内部上拉导致持续高电平而无法发送数据。
在 PC 机中常用的流控制有硬件流控制如 RTS/CTS、DTR/CTS 等和软件流控制如 XON/XOFF。
如果串口只接了 RX、TX 两个信号要流控只能用软流控接了 RX、TX、CTS、RTS 四个信号则可以用硬流控或软件流控。
在汽车开发中CTS 是 Component Technical Specification 的缩写即零部件技术规范关于零件性能、设计要求以及达到规范要求的认证方法的工程文件。在整车开发中通过 VTS 定义整车性能指标SSTS 描述抽象逻辑关系CTS 说明实现方案。