找不到串口

Unable to find serial ports

使用 Rxtx API。

我 100% 确定有可用的串口。在 Debian 上,当设备连接时,我可以看到 /dev/ttyUSB3 存在。

尝试了 运行 getPortIdentifiers() 但在我尝试遍历哈希集时什么也没得到

CommPortIdentifier portIdentifier = CommPortIdentifier.getPortIdentifier("/dev/ttyUSB3");

也没用。我得到了:

Exception Caused by: gnu.io.NoSuchPortException

我做错了什么?我相当确定 rxtx 设置正确。

这里的问题在于 RXTX 如何定义端口。默认情况下,它只会查找某些串行端口(在 Linux、/dev/ttySX 上)。有几个选项可以解决这个问题:

  1. 启动时设置 gnu.io.rxtx.SerialPorts 属性 Java(在命令行上,或通过代码。有关详细信息,请参阅 Rxtx documentation
  2. 使用不同的串行端口库,让您可以手动 select 串行端口。

对于#2,以下是我所知道的图书馆: