2010-07-15 132 views
0

我正在嘗試讀取串口上的數據。無法通過串口讀取數據

我的設置

  • 操作系統:Ubuntu Linux操作系統
  • 設備1:BeagleBoard
  • 設備2:我的筆記本電腦

我使用的是串行USB轉換器。在BeagleBoard上,串口設備是ttyS2。在筆記本電腦上,它是ttyUSB0

我做了一件簡單的事情來測試連接,我在兩臺機器上都運行了Minicom。當我在BeagleBoard上鍵入內容時,我會收到筆記本電腦上的數據,但它不能以相反的方式工作。可能是什麼原因?

用於在兩個設備是

  • 波特率串行端口設置:115200
  • 數據大小:8
  • 奇偶:N
  • 停止位:1
  • 硬件流控制:否
+0

這個問題是超級用戶比stackoverflow更多。 – 2010-07-15 20:32:33

+0

誠然,我說,給一些代碼或您正在使用的程序。 – siranen 2011-01-31 18:00:35

+0

兩端'cat/proc/tty/driver/serial'的輸出會很有幫助。 – ninjalj 2011-01-31 18:39:22

回答

1

難道是你的文件權限太限制了在你的筆記本上?我在Ubuntu上有類似的問題,並通過更改文件權限來解決它。您可以通過這樣做來測試:

sudo chmod 666 /dev/ttyUSB0 

請注意,這些權限將在您重置連接時恢復。對於長期解決方案,您必須通過編輯/etc/group將自己添加到dialout組。

+0

對於長期的解決方案,您應該讓udev爲您的用戶設置一個ACL條目。基於組的權限過於陳舊(並且通常是不受歡迎的,因爲它們會讓您訪問比您想象的更多內容)。 – user562374 2011-01-31 19:59:15