2014-09-03 80 views
1

嘿,我想用Arduino連接我用Java編寫的eclipse程序。以前我使用過處理,但現在我正在處理更困難的事情:我將連接到Arduino,但當我嘗試連接到端口時收到以下消息。找不到COM端口和端口列表爲空

我使用的是Mac和我在處理中使用的端口是tty.usbserial-AM01VBFC

然而,這並不與給出的示例工作:http://playground.arduino.cc/interfacing/java

我改變了這種符合我的端口:

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() 

是錯誤的。

完整的代碼可以在上面我改變了唯一的鏈接找到是Mac OS X的端口名稱

我發現只有一個人有同樣的問題,他找到了一個解決方案,我的ubuntu不明白:http://forum.arduino.cc/index.php?topic=73350.0;wap2

盼望一些幫助, 格奧爾基

+1

您能列出您在連接Arduino的終端中運行「ls /dev/tty.*」時看到的內容嗎? – 2014-09-03 15:55:45

回答

5

我找到了解決問題的辦法:

System.setProperty("gnu.io.rxtx.SerialPorts", "/dev/tty.usbArduino"); 

上面的行必須註釋掉,您必須刪除您的鎖定文件以獲得「新鮮」的USB連接!

感謝所有的答案,讓我以正確的方式!

編輯:這是「/dev/tty.usbArduino」,因爲我做了我的端口的符號鏈接!我之後刪除了符號鏈接

+0

這解決了我無法在rxtx中打開/ dev/ttyAMA0時遇到的問題,同時能夠在pi4j中執行此操作。 – barbazoo 2016-06-19 02:37:35

0

關注Tim的建議和打印端口,運行:

ls /dev/tty.* 

在終端。這應該允許您仔細檢查「/dev/tty.usbserial-AM01VBFC」是否實際上是正確的名稱。

如果沒有通過tty.usbserial前綴,而你的設備連接試試這個:

  1. 安裝FTDI VCP driver
  2. 只有1不起作用,你用小牛嘗試卸載蘋果FTDI驅動程序:sudo kextunload -b com.apple.driver.AppleUSBFTDI(注意,這需要爲每OSX啓動一次)