0

TelnetSerialPort と jSSC ライブラリを使用して仮想シリアル ポートを作成しようとしましたが、機能しません。仮想シリアル ポートを作成せず、既存のシリアル ポートを通信に使用します。

これはjSScライブラリを使用した私のプログラムです

public class VirtualSerialPort 
{
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) 
    {
        SerialPort serialPort = new SerialPort("COM12");
        try 
        {
            System.out.println("Port opened: " + serialPort.openPort());
            System.out.println("Params setted: " + serialPort.setParams(9600, 8, 1, 0));
            System.out.println("\"Hello World!!!\" successfully writen to port: " + serialPort.writeBytes("Hello World!!!".getBytes()));
            System.out.println("Port closed: " + serialPort.closePort());
        }
        catch (SerialPortException ex)
        {
            System.out.println(ex);
        }
    }
}

次の出力が得られます

Port opened: false
jssc.SerialPortException: Port name - EMPTY; Method name - setParams(); Exception type - Port not opened.
4

2 に答える 2

0

COMポート識別子に基づいてWindowsを使用していると思います。\\.\COMnWindows では、表記法 (n は COM ポート番号) で10 以上の COM ポートにアクセスする必要があります。\コードを次のように変更してみてください (エスケープ シーケンスをトリガーする代わりに、表示する文字数が 2 倍になることに注意してください)。

SerialPort serialPort = new SerialPort("\\\\.\\COM12");
于 2014-12-16T18:55:41.007 に答える