禁用串行到 USB 适配器上的恒定 RTS 和 DTR

禁用串行到 USB 适配器上的恒定 RTS 和 DTR

我正在使用 Prolific PL 2303 串行转 USB 适配器,并使用 Ubuntu 14.04。我遇到的问题是,当 USB 转串行适配器连接时,RTS 和 DTR 会一直打开。这对我来说是个问题,因为我正在使用 RTS 和 DTR 来控制 West Mountain Radio Rigblaster Plus,这会让它一直处于打开状态。我如何才能禁用 RTS 和 DTR 以使其一直打开?

答案1

stty -F /dev/ttySX crtscts(修改 /dev/ttySX 以匹配您的设备)。这将在 Linux 设备驱动程序中启用 RTS/CTS 硬件流控制。然后,当 DTE(例如 PC)想要停止流入其中时,它会否定 RTS。否定的“请求发送”(-12 伏)表示“请求不发送给我”(停止发送)。当 PC 准备好接收更多字节时,它会断言 RTS(+12 伏),然后恢复流向它的字节流。流控制信号总是以与正在控制的字节流相反的方向发送。DCE 设备(调制解调器)的工作方式相同,但会从 CTS 引脚发出停止信号。因此,它是使用 2 条线的 RTS/CTS 流控制。

请注意,crtscts 命令不符合 POSIX 标准。根据您的实施情况,使用下面提到的 clocal 开关可能会获得更好的结果。

以下是一些其他有用的控制开关请参阅手册页。

   Control settings:
   [-]clocal
          disable modem control signals

   [-]cread
          allow input to be received

资料来源:man stty

相关内容