Java简单串行连接器(jssc)未检测到端口

时间:2013-08-15 21:15:33

标签: java

我在跨平台应用程序中使用jSSC-2.6.0。 Windows计算机(32/64位)上返回的端口列表是正确的,但MacOSX(v10.6和10.7)应用程序不返回任何串行设备。如果我在终端ls /dev/tty.*中手动查看串行设备,我可以查看三个设备。从jssc示例文件运行以下行不会在同一MAC机器上返回任何内容:

String[] portNames = SerialPortList.getPortNames();

我使用后只能看到一大堆设备,包括终端设备:

String[] portNames = SerialPortList.getPortNames("/dev/", Pattern.compile("tty."));

缺点是它会使机器挂起10秒钟而另一台机器(10.7)会在30秒后没有响应。

有没有办法使用jssc可靠地连接到MAC上的串行设备?

1 个答案:

答案 0 :(得分:3)

jSSC使用此regexp列出Mac上的串行端口:tty.(serial|usbserial|usbmodem).*如果使用此正则表达式找不到您的设备,则应更改它以获取设备名称。

下一个重要的事情是jSSC尝试打开端口并获取termios结构以识别真正的串行设备。在描述的情况下,我建议只使用官方和最晚的司机。端口列表功能非常简单,尝试使用某些串口终端在另一个软件上检查此问题。