Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中使用RXTX通过RTS和CTS进行串行通信握手_Java_Rxtx - Fatal编程技术网

如何在java中使用RXTX通过RTS和CTS进行串行通信握手

如何在java中使用RXTX通过RTS和CTS进行串行通信握手,java,rxtx,Java,Rxtx,我假设串行接口标准本身在每次发送和接收数据之前使用RTS/CTS握手来维护硬件流控制 我的问题陈述是,在每次发送实际数据之前,必须向接收器发送RTS信号,接收器用CTS信号进行确认 流量控制有三种模式: 硬件流控制-这是使用CONCONTOR(rs-232)的2个引脚(RTS/CT)管理握手的关键。这是最好的选择 软件流控制-这是当您想要初始化传输或想要结束传输时,使用2个字符(XON/XOFF)管理您发送的握手 无流量控制-这种模式很简单,但可能会丢失数据。没有对数据流的控制。 有关更多信息

我假设串行接口标准本身在每次发送和接收数据之前使用RTS/CTS握手来维护硬件流控制


我的问题陈述是,在每次发送实际数据之前,必须向接收器发送RTS信号,接收器用CTS信号进行确认

流量控制有三种模式:

  • 硬件流控制-这是使用CONCONTOR(rs-232)的2个引脚(RTS/CT)管理握手的关键。这是最好的选择
  • 软件流控制-这是当您想要初始化传输或想要结束传输时,使用2个字符(XON/XOFF)管理您发送的握手
  • 无流量控制-这种模式很简单,但可能会丢失数据。没有对数据流的控制。
    有关更多信息,请访问以下网站:
如果要使用RTS/CTS方法管理rs-232上的流量控制,必须为此模式配置串行端口:
serialPort.setFlowControlMode(serialPort.FLOWCONTROL\u RTSCTS\u IN|124;
串行端口。流量控制(RTSCTS输出);
serialPort.setDTR(true)

需要配置通知后:
serialPort.addEventListener(此);
serialPort.notifyOnCTS(true);
serialPort.notifyOnDSR(true);
serialPort.notifyOnOutputEmpty(true)

之后,硬件流控制将像魅力一样工作

有关完整代码,请访问此处:

流量控制有三种模式:

  • 硬件流控制-这是使用CONCONTOR(rs-232)的2个引脚(RTS/CT)管理握手的关键。这是最好的选择
  • 软件流控制-这是当您想要初始化传输或想要结束传输时,使用2个字符(XON/XOFF)管理您发送的握手
  • 无流量控制-这种模式很简单,但可能会丢失数据。没有对数据流的控制。
    有关更多信息,请访问以下网站:
如果要使用RTS/CTS方法管理rs-232上的流量控制,必须为此模式配置串行端口:
serialPort.setFlowControlMode(serialPort.FLOWCONTROL\u RTSCTS\u IN|124;
串行端口。流量控制(RTSCTS输出);
serialPort.setDTR(true)

需要配置通知后:
serialPort.addEventListener(此);
serialPort.notifyOnCTS(true);
serialPort.notifyOnDSR(true);
serialPort.notifyOnOutputEmpty(true)

之后,硬件流控制将像魅力一样工作

有关完整代码,请访问此处:

我使用来自的RXTX,当我使用java而不是javaw运行我的应用程序时,会发出CTS更改的信号。该操作系统是Windows 10,尚未使用其他操作系统进行测试。原因可能是什么。。。我如何解决这个问题呢?我使用的是来自的RXTX,当我用java而不是javaw运行我的应用程序时,CTS的变化是有信号的。该操作系统是Windows 10,尚未使用其他操作系统进行测试。原因可能是什么。。。我怎样才能解决这个问题?
// my configuration using RXTX library in java
SerialPortObj.setFlowControlMode(SerialPort.FLOWCONTROL_RTSCTS_IN | SerialPort.FLOWCONTROL_RTSCTS_OUT);// Hardware flow control settings
            SerialPortObj.setRTS(true);   
            SerialPortObj.notifyOnCTS(true);