无法从Java中的COM端口获取任何数据
我用GUI处理数据无法从Java中的COM端口获取任何数据,java,serial-port,port,Java,Serial Port,Port,我用GUI处理数据 @Override public void actionPerformed(ActionEvent event){ //Button reaction try { serialPort.openPort(); serialPort.setParams( SerialPort.BAUDRATE_9600,
@Override
public void actionPerformed(ActionEvent event){ //Button reaction
try {
serialPort.openPort();
serialPort.setParams(
SerialPort.BAUDRATE_9600,
SerialPort.DATABITS_8,
SerialPort.STOPBITS_1,
SerialPort.PARITY_NONE);
下面是从端口获取信息的侦听器
private class EventListener implements SerialPortEventListener {
public String receivedData;
public String noDataFromPort;
public void serialEvent(SerialPortEvent event) {
if(event.isRXCHAR() && event.getEventValue() > 0){
try {
receivedData = serialPort.readString(event.getEventValue());
textField.setText(receivedData);
textArea.setText(receivedData + "\n");
serialPort.closePort();
}
catch (SerialPortException ex) {
noDataFromPort = "No data received";
textField.setText(noDataFromPort + " " + ex);
textArea.setText(noDataFromPort + " " + ex + "\n");
}
}
}
}
serialPort.setFlowControlMode(
SerialPort.FLOWCONTROL_RTSCTS_IN |
SerialPort.FLOWCONTROL_RTSCTS_OUT);
try {
textField.setText(fromPort = serialPort.readString());
textField.setText(fromPort + s);
textField.setText(fromPort);
textArea.append(fromPort + s + "\n");
} catch (SerialPortException e) {
textField.setText("No Data from " + serialPort.getPortName());
textArea.setText("No Data from " + serialPort.getPortName() + "\n");
}
}
}
端口掩码
serialPort.addEventListener(new EventListener(), serialPort.MASK_RXCHAR);
//serialPort.addEventListener(new EventListener());
serialPort.writeString("R"); // Data for scale(R- get data from device)
} catch (SerialPortException ex) {
portOpenFail = "Port"+ " " + serialPort.getPortName()+ " " + "not found" + " " + ex;
}
这里我试图从端口输入信息
private class EventListener implements SerialPortEventListener {
public String receivedData;
public String noDataFromPort;
public void serialEvent(SerialPortEvent event) {
if(event.isRXCHAR() && event.getEventValue() > 0){
try {
receivedData = serialPort.readString(event.getEventValue());
textField.setText(receivedData);
textArea.setText(receivedData + "\n");
serialPort.closePort();
}
catch (SerialPortException ex) {
noDataFromPort = "No data received";
textField.setText(noDataFromPort + " " + ex);
textArea.setText(noDataFromPort + " " + ex + "\n");
}
}
}
}
serialPort.setFlowControlMode(
SerialPort.FLOWCONTROL_RTSCTS_IN |
SerialPort.FLOWCONTROL_RTSCTS_OUT);
try {
textField.setText(fromPort = serialPort.readString());
textField.setText(fromPort + s);
textField.setText(fromPort);
textArea.append(fromPort + s + "\n");
} catch (SerialPortException e) {
textField.setText("No Data from " + serialPort.getPortName());
textArea.setText("No Data from " + serialPort.getPortName() + "\n");
}
}
}
请编辑您的问题,以正确格式化和缩进代码。看起来有些代码出现了问题,注释似乎打断了代码流