我正在尝试使用 Java 中的串行端口通过 Wavecom 的 FXT-009 访问和发送短信。我尝试从 SerialPort 对象检索输入和输出,但是当我向输出流线程写入“AT”命令时,我在输入流线程上没有得到任何响应。
调制解调器和命令在基于 Eclipse 的 Wavecom IDE 中工作得非常好。
最佳答案
使用 SerialPortEventListener 实现线程对我有用
@Override
public void serialEvent(SerialPortEvent event) {
switch(event.getEventType()) {
case SerialPortEvent.BI:
case SerialPortEvent.OE:
case SerialPortEvent.FE:
case SerialPortEvent.PE:
case SerialPortEvent.CD:
case SerialPortEvent.CTS:
case SerialPortEvent.DSR:
case SerialPortEvent.RI:
case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
break;
case SerialPortEvent.DATA_AVAILABLE:
StringBuffer readBuffer = new StringBuffer();
int c;
try{
while ((c=inputStream.read()) != 10){
if(c!=13 && c != 1){
readBuffer.append((char) c);
}
}
String scannedInput = readBuffer.toString();
/*
DO YOUR THING HERE
*/
} catch (IOException e) {}
break;
}
}
关于java - FXT-009 使用 Java 通过串行端口访问 Wavecom GSM 调制解调器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8295062/