1

Javaのシリアルポートを使用して、WavecomのFXT-009を介してSMSにアクセスして送信しようとしています。SerialPortオブジェクトから入力とアウトストリームを取得しようとしましたが、出力ストリームスレッドに「AT」コマンドを書き込んでも、入力ストリームスレッドで応答がありません。

モデムとコマンドは、EclipseベースのWavecomIDEで完全に正常に機能します。

4

1 に答える 1

0

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;
        }
}
于 2012-02-06T15:51:34.957 に答える