如何找到正确的 SerialPort 名称?

How do I find the right SerialPort name?

我想通过串口从Arduino读出一些信息。

我使用 jSerialComm 库。

这是我的代码:

SerialPort serialPort = SerialPort.getCommPort("COM3");
serialPort.setComPortParameters(9600, 8, 1, 0);

if(serialPort.isOpen())
{
  System.out.println("SerialPort is open");
}
else
{
  System.out.println("SerialPort is not open");
}

遗憾的是,程序说端口已关闭,但我知道它没有。我想我在这里命名错误:SerialPort.getCommPort("COM3"); 那么我必须如何命名它才能正常工作?


更新

工作


不确定这是否有效(无法测试 atm),但我希望它有效:

  • 您可以在设备管理器 -> 端口中查找名称;

  • 您可以尝试 运行 这个看看它说了什么:

SerialPort[] list= SerialPort.getCommPorts();
if (list.length == 0) {
  System.out.println("No ports found");
} else {
  for (int i = 0; i < list.length; i++) {
    System.out.println("Port " + i + ": " + list[i].getDescriptivePortName());
  }
}
  • 或者您可以试试这个,看看会发生什么:
SerialPort serialPort = SerialPort.getCommPorts()[3];

此外,请查看您的波特率,关闭串行监视器并尝试使用其他 USB 电缆。