我有一個基於 SiLabs CP2101 晶片組的 USB 轉串口適配器。我正在嘗試將它與 Debian 5.0 Lenny(armel 架構)一起使用。
我似乎能夠獲得正確的內核模組來識別適配器,但它不會創建/dev/ttyUSB0
.
我運行modprobe usbserial
並modprobe cp2101
連接設備,得到以下輸出dmesg
:
usb 2-1: new full speed USB device using mv5182_ehci and address 8
usb 2-1: configuration #1 chosen from 1 choice
cp2101 2-1:1.0: cp2101 converter detected
usb 2-1: reset full speed USB device using mv5182_ehci and address 8
usb 2-1: cp2101 converter now attached to ttyUSB0
然而,/dev/ttyUSB0
不存在。中沒有新文件/dev
。
find / -type f -name ttyUSB0
沒有給出任何結果。
我確實找到了一堆目錄ttyUSB0
插入設備後顯示的名稱為:
/sys/class/tty/ttyUSB0
/sys/bus/usb-serial/drivers/cp2101/ttyUSB0
/sys/bus/usb-serial/devices/ttyUSB0
/sys/devices/platform/mv5182_ehci.1/usb2/2-1/2-1:1.0/ttyUSB0
...
我在以下位置找到了一個文件,/sys/bus/usb-serial/devices/ttyUSB0/ttyUSB0/dev
但它似乎不是串行端口;我無法使用screen
Python的串行模組打開它。
為了進行比較,我嘗試了我的 Debian 6.0 開發機器(它有一個較新版本的 cp2101 模組,現在稱為cp210x
),在看到 中的「轉換器現在連接到 ttyUSB0」行後dmesg
,/dev/ttyUSB0
出現了。
如何cp2101
創建模組/dev/ttyUSB0
?如果不能,我應該打開什麼文件來存取串行端口?
答案1
您可以嘗試手動製作設備節點。在我的系統上/dev/ttyUSB0
是major 188
和minor 0
。希望我的假設是正確的,它是一種c
表示字元設備的類型(如果不起作用,也許可以嘗試u
使用無緩衝的字元設備)。c
mknod /dev/ttyUSB0 c 188 0
如果這有效,且裝置檔案之前自動出現,則表示您的某些內容udev
出現了混亂。 USB 子系統設定或驅動程式也可能有問題。