2014-08-30 97 views
0

我有一個使用在Linux下運行的Atmel處理器的設備。對於此設備,我想使用AT91SAM7處理器連接遠程設備。這個遠程設備被配置爲通過USB進行僞串行,在Windows下這工作正常,並顯示爲「AT91 USB到串行轉換器(COM3)」。用於SAM7串行的嵌入式Linux USB驅動程序

crw-rw---- 1 root  root  253, 7 Aug 30 10:52 /dev/usbdev2.2_ep00 
crw-rw---- 1 root  root  253, 5 Aug 30 10:52 /dev/usbdev2.2_ep01 
crw-rw---- 1 root  root  253, 6 Aug 30 10:52 /dev/usbdev2.2_ep82 
crw-rw---- 1 root  root  253, 4 Aug 30 10:52 /dev/usbdev2.2_ep83 

我應該做些什麼才能與設備進行通信做:在Linux下的設備出現在/ dev如下

?一些驅動程序綁定到內核?或者是否存在可加載的驅動程序(.ko)?

+1

如果有'/ dev/ttyUSB *'設備? – Gluttton 2014-08-30 09:14:58

+0

您過度使用「設備」一詞。首先你寫了*「到這個設備我想連接一個遠程設備」,但是它是*「我必須做什麼才能與設備通信?」*如果這個(遠程)設備真的通過USB模擬一個串行設備,那麼你顯然需要修改其中一個[USB串口驅動程序](http://lxr.free-electrons.com/source/drivers/usb/serial/)。 – sawdust 2014-08-30 09:19:04

回答

0

根據你寫的內容,帶有AT91SAM7處理器的嵌入式主板已正確配置,因爲它在連接到Windows主機時工作正常。

如果它在linux下不起作用,可能是因爲它無法識別vendorid:productid值。

在Linux主機上檢查lsusb輸出:

[email protected]:~$ lsusb 
Bus 004 Device 006: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port 
[email protected]:~$ 
在這種情況下

,一個USB < - > RS232轉換器,我有我的電腦上。插入時,您應該有一條與您的主板相關的線路。

現在,根據您的系統,您可能需要用戶usbserialftdi_sio。所以首先嚐試加載usbserial

modprobe usbserial vendor=0x067b product=0x2303 

如果這行不通試裝ftdi_sio

modprobe ftdi_sio vendor=0x067b product=0x2303 

收費attatention,如果模塊已裝入你需要rmmod他們。最後,在我的例子中,vendrid是0x067b,產品是0x2303,你需要使用正確的值。

相關問題