0

私はプログラミングの初心者で、Java と rxtx を使用したシリアル ポート コーディングについてアドバイスを求めたいと思っています。このエラー「..\rxtx\src\termios.c(2350) のエラー 0x3e3: スレッドの終了またはアプリケーションの要求により、I/O 操作が中止されました。」出てきますが、シリアルポート接続を開いているときに出てくることに気づきました

try
            {
                System.out.println("opening port...");
                commPort = portIdentifier.open(this.getClass().getName(),2000);
                }
            catch(PortInUseException ex)
            {
                System.err.println(ex.getMessage());
                }

接続すると、パラメーターを設定すると、「無効なパラメーター」エラーが表示されます。これは、パラメータを設定するための私のコードです:

try
                {
                    System.out.println("setting params...");
                    this.serialPort.setSerialPortParams(
                        baudRate,
                        SerialPort.DATABITS_8,
                        SerialPort.STOPBITS_1,
                        SerialPort.PARITY_NONE);
                    this.serialPort.setFlowControlMode(SerialPort.FLOWCONTROL_NONE);
                    }
                catch(UnsupportedCommOperationException ex)
                {
                    System.err.println(ex.getMessage());
                    }

私はこれについてネットでほぼ3日間調査してきました。私は本当に必死なので、どんな助けも大歓迎です。

ありがとうリーン

4

1 に答える 1

0

あなたのbaudRateセットは何ですか???

ここで、serialPort は commPort に設定されています。

 if ( commPort instanceof SerialPort )
            {
                SerialPort serialPort = (SerialPort) commPort;

termios.c

if ( !SetCommState( index->hComm, &dcb ) )
    {
        report( "SetCommState error\n" );
        YACK();
        return -1;
    }
于 2012-04-21T14:37:25.890 に答える