最近在调试代码过程中遇到一些流控的问题,关于相关概念做了一些总结。
以9针脚232串口为例子:
DCD:接受信号检出,也叫数据载波检出线(Data Carrier detection,DCD),主要用于表示Modem已经接通通信链路,检测到拨号音,处于在线状态。有效表示Modem已经接通了通信链路,即本地Modem收到了通信链路另一端的远程Modem送来的载波信号,终端可以准备好接收数据。(数据载波监测)
RXD:接受数据(Received data,RXD)。
TXD:发送数据 (Transmitted data,TXD)。
DTR:数据终端准备好(Data Terminal Ready),由远程modem控制,高电平表示远程modem已经准备好,可以进行数据传输。
DSR:数据装置准备好(Data Set ready,DSR),有效时表示本地modem已经准备好,通知远程设备可以进行数据传输。
RTS:请求发送( Request to Send),由远程modem控制,即当远程modem要发送数据时,就使改信号有效,通知本地modem进入发送状态,马上发送数据。
CTS:清除发送(Clear to Send,CTS),此角由本地modem控制,用以通知对方将想要传输的数据传输过来。
RI:振铃提示,当 MODEM收到交换台送来的振铃呼叫信号时,使该信号有效(ON状态),通知终端,已被呼叫
硬件流量控制主要是用到RTS/CTS两个引脚
关于流控如何工作可参考这篇文章,https://blog.csdn.net/wjcqwe/article/details/130067769