使用java串口库将'A'以字节数组的形式发送到com口
Send 'A' in the form of byte array to comm port using javaSerial port library
我正在尝试向连接到 'COM1' 的 boom barrier 发送命令,它有波特率 -> 9600,奇偶校验 -> none,数据位 ->8,停止位 - > 1. 我正在尝试以下代码但无法发送命令。请帮助我。
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.charset.StandardCharsets;
import com.fazecast.jSerialComm.SerialPort;
public class BoomBarrierUsingJavaSCLib {
public static void main(String[] args) {
SerialPort comPort = SerialPort.getCommPorts()[0];
//System.out.println(SerialPort.getCommPorts().length);
comPort.openPort();
comPort.setComPortTimeouts(SerialPort.TIMEOUT_READ_SEMI_BLOCKING, 100, 0);
comPort.setComPortTimeouts(1000, 1000, 1000);
System.out.println("Written to Comport: "+comPort.writeBytes("A".getBytes(),"A".getBytes().length));
comPort.closePort();
}
}
但我得到以下输出:写入 Comport:-1
理想情况下,它应该 return 写入通信端口的字节数。 -1 表示没有写入任何内容。
提前致谢。
我唯一想念的是,我没有关闭不允许打开 comm 端口的 bray++ 终端。写入端口时,有必要检查端口是否可用。
我正在尝试向连接到 'COM1' 的 boom barrier 发送命令,它有波特率 -> 9600,奇偶校验 -> none,数据位 ->8,停止位 - > 1. 我正在尝试以下代码但无法发送命令。请帮助我。
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.charset.StandardCharsets;
import com.fazecast.jSerialComm.SerialPort;
public class BoomBarrierUsingJavaSCLib {
public static void main(String[] args) {
SerialPort comPort = SerialPort.getCommPorts()[0];
//System.out.println(SerialPort.getCommPorts().length);
comPort.openPort();
comPort.setComPortTimeouts(SerialPort.TIMEOUT_READ_SEMI_BLOCKING, 100, 0);
comPort.setComPortTimeouts(1000, 1000, 1000);
System.out.println("Written to Comport: "+comPort.writeBytes("A".getBytes(),"A".getBytes().length));
comPort.closePort();
}
}
但我得到以下输出:写入 Comport:-1 理想情况下,它应该 return 写入通信端口的字节数。 -1 表示没有写入任何内容。
提前致谢。
我唯一想念的是,我没有关闭不允许打开 comm 端口的 bray++ 终端。写入端口时,有必要检查端口是否可用。