Java 找不到COM端口,端口列表为空
嘿,我想用Arduino连接我用Java编写的eclipse程序。以前我使用处理,但现在我正在做一些更困难的事情:我将连接Leap到Arduino,但是当我尝试连接到我的端口时,我收到以下消息 我使用的是Mac,处理过程中使用的端口是tty.usbserial-AM01VBFC 但是,这不适用于以下给定示例: 我更改了此项以匹配我的端口:Java 找不到COM端口,端口列表为空,java,macos,arduino,port,rxtx,Java,Macos,Arduino,Port,Rxtx,嘿,我想用Arduino连接我用Java编写的eclipse程序。以前我使用处理,但现在我正在做一些更困难的事情:我将连接Leap到Arduino,但是当我尝试连接到我的端口时,我收到以下消息 我使用的是Mac,处理过程中使用的端口是tty.usbserial-AM01VBFC 但是,这不适用于以下给定示例: 我更改了此项以匹配我的端口: private static final String PORT_NAMES[] = { "/dev/tty.usbserial-AM01V
private static final String PORT_NAMES[] = {
"/dev/tty.usbserial-AM01VBFC", // Mac OS X
"/dev/ttyACM0", // Raspberry Pi
"/dev/ttyUSB0", // Linux
"COM3", // Windows
};
结果是:
Stable Library
=========================================
Native lib Version = RXTX-2.1-7
Java lib Version = RXTX-2.1-7
Could not find COM port.
Started
我认为端口列表为空,因为:
portEnum.hasMoreElements()
这是错误的
完整的代码可以在上面的链接中找到,我唯一更改的是MacOSX的端口名
我发现只有一个人有同样的问题,他为ubuntu找到了一个解决方案,我不明白:
希望得到一些帮助,
Georgi按照Tim的建议打印端口,运行:
ls /dev/tty.*
在候机楼。这应该允许您仔细检查/dev/tty.usbserial-AM01VBFC是否是正确的名称
如果设备连接时没有以tty.usbserial作为前缀,请尝试以下操作:
安装
只有当1不起作用并且您使用的是Mavericks时,才尝试卸载Apple的FTDI驱动程序:sudo kextunload-b com.Apple.driver.AppleUSBFTDI请注意,这需要在每次OSX引导时完成一次
按照Tim的建议打印端口,运行:
ls /dev/tty.*
在候机楼。这应该允许您仔细检查/dev/tty.usbserial-AM01VBFC是否是正确的名称
如果设备连接时没有以tty.usbserial作为前缀,请尝试以下操作:
安装
只有当1不起作用并且您使用的是Mavericks时,才尝试卸载Apple的FTDI驱动程序:sudo kextunload-b com.Apple.driver.AppleUSBFTDI请注意,这需要在每次OSX引导时完成一次
我找到了解决问题的方法:
System.setProperty("gnu.io.rxtx.SerialPorts", "/dev/tty.usbArduino");
上面的一行必须被注释掉,并且你必须删除你的锁文件以获得一个新的USB连接
感谢所有的答案,让我走上了正确的道路
编辑:它是/dev/tty.usbArduino,因为我创建了我的端口的符号链接!之后我删除了符号链接我找到了问题的解决方案:
System.setProperty("gnu.io.rxtx.SerialPorts", "/dev/tty.usbArduino");
上面的一行必须被注释掉,并且你必须删除你的锁文件以获得一个新的USB连接
感谢所有的答案,让我走上了正确的道路
编辑:它是/dev/tty.usbArduino,因为我创建了我的端口的符号链接!我后来删除了符号链接有两种类型的电缆: 充电电缆 数据传输电缆 所以,如果您尝试了每个usb驱动程序和端口,请尝试更换电缆 否则,请使用此链接安装驱动程序 安装后,如果不起作用,则更换电缆
更换电缆后,它对我有效。有两种类型的电缆: 充电电缆 数据传输电缆 所以,如果您尝试了每个usb驱动程序和端口,请尝试更换电缆 否则,请使用此链接安装驱动程序 安装后,如果不起作用,则更换电缆
更换电缆后,它对我起了作用。您能列出在连接Arduino的终端上运行ls/dev/tty.*时看到的内容吗?您能列出在连接Arduino的终端上运行ls/dev/tty.*时看到的内容吗?这解决了我在rxtx中无法打开/dev/ttyam0时的问题,while能够在pi4j中完成它。这修复了当我无法在rxtx中打开/dev/ttyAMA0时的问题,while能够在pi4j中完成它。