关于UART的CTS/RTS2008-03-2915:28RTS(requesttosend)请求发送谈这个问题之前我们先介绍另一个概念,DCE(DataCommunicationEquipment数据通讯设备)速度
它是指两个Modem之间即电话线之间的传输速度,我们所说的56K指的就是这个速度
而DTE(DataTerminalEquipment数据终端设备)速度是指从本地计算机到Modem的传输速度,如果电话线传输速率(DCE速度)为56000bps,Modem在接收到数据后按V
42bis协议解压缩56000×4=115200bps,然后以此速率传送给计算机,由此可见56K猫(使用V
42bis)的DTE速度在理想状态下都应达到115200bps
可用CTS/RTS或Xon/Xoff流量控制(Flowcontrol)从上边的介绍我们已经了解到DTE与DCE速度之间存在很大差异,这样在数据的传送与接收过程当中很可能出现收方来不及接收的情况,这时就需要对发方进行控制,以免数据丢失,这个过程就是所谓的流量控制
控制的方式有两种,Xon/Xoff和CTS/RTS
前者由软件产生控制码,并将控制码加入到数据流中,Xoff表示停止发送,Xon表示继续发送,此种方法通常用于2400bps左右的低速猫
CTS(cleartosend)/RTS(requesttosend)则是通过计算机与Modem之间的信号线传送控制信号来实现流量控制的,即硬件方式
请求发送信号(RTS)由计算机产生,通知Modem可以发送数据,清除发送信号(CTS)由Modem产生,通知计算机可以传送数据
由于硬件控制的反应速度要比软件快,所以多用于高速Modem
在使用MNP,V
42以及传真时也应使用硬件方式
CTS(Cleartosend)允许发送,很多文章翻译成清除发送,是不正确的
CTS是对RTS的应答