您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“Linux怎么調(diào)試USB設(shè)備”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Linux怎么調(diào)試USB設(shè)備”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。
lsusb命令用于顯示本機(jī)的USB設(shè)備列表,以及USB設(shè)備的詳細(xì)信息。lsusb命令是一個(gè)學(xué)習(xí)USB驅(qū)動(dòng)開發(fā),認(rèn)識(shí)USB設(shè)備的助手,推薦大家使用,如果您的開發(fā)板中或者產(chǎn)品中沒有l(wèi)susb命令可以自己移植一個(gè),放到文件系統(tǒng)里面。
Centos7
默認(rèn)Centos7系統(tǒng)中沒有l(wèi)susb命令,我們需要安裝usbutils安裝包,才能使用lsusb:
[root@localhost ~]# yum -y install usbutils
lsusb用于顯示有關(guān)系統(tǒng)中的USB總線及其連接的設(shè)備的信息,下面運(yùn)行l(wèi)susb:
[root@localhost ~]# lsusbBus 001 Device 010: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller Bus 001 Device 055: ID 0951:1665 Kingston Technology Digital DataTraveler SE9 64GB Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
lsusb將顯示系統(tǒng)內(nèi)部連接的驅(qū)動(dòng)程序和設(shè)備。
上面輸出內(nèi)容解釋如下: Bus 001 Device 055: ID 0951:1665 Kingston Technology Digital DataTraveler SE9 64GB
Bus 001
: 表示第一個(gè)usb控制器,可以使用lspci|grep USB查看主機(jī)有幾個(gè)usb控制器Device 055
: 表示系統(tǒng)分配給這個(gè)金士頓存儲(chǔ)設(shè)備的設(shè)備號(hào)ID
: 表示usb設(shè)備的IDKingston Technology Digital DataTraveler SE9 64GB
: 表示其制造商名稱和設(shè)備名稱我們還看到,系統(tǒng)中還附有USB 2.0 root hub 驅(qū)動(dòng)程序和USB 1.1 root hub 驅(qū)動(dòng)程序。
使用-t
選項(xiàng),以樹狀結(jié)構(gòu)顯示usb信息:
[root@localhost ~]# lsusb -t/: Bus 04.Port 1: Dev 1,, Driver=xhci_hcd/4p, 5000M /: Bus 03.Port 1: Dev 1,, Driver=xhci_hcd/4p, 480M |__ Port 1: Dev 2, If 0, Storage, Driver=usb-storage, 480M /: Bus 02.Port 1: Dev 1,, Driver=uhci_hcd/2p, 12M |__ Port 1: Dev 2, If 0, Interface Device, Driver=usbhid, 12M |__ Port 2: Dev 3, If 0,, Driver=hub/7p, 12M /: Bus 01.Port 1: Dev 1,, Driver=ehci-pci/6p, 480M
數(shù)字12M、480M、5000M表示USB的傳輸速度。
Linux從/usr/share/hwdata/usb.ids’識(shí)別USB設(shè)備的詳細(xì)信息。lsusb列出的vendor和device name都是從這個(gè)文件里面識(shí)別出來的。
使用-v
參數(shù)查看usb詳細(xì)信息:
[root@localhost ~]# lsusb -v | lessBus 001 Device 056: ID 0951:1665 Kingston Technology Digital DataTraveler SE9 64GB Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x0951 Kingston Technology idProduct 0x1665 Digital DataTraveler SE9 64GB bcdDevice 1.00 iManufacturer 1 Kingston iProduct 2 DataTraveler 2.0 iSerial 3 08606E6B6612FD50771C2A8B bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 32 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 100mA Interface Descriptor: bLength 9 bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 Bulk-Only iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 255 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 255 Device Qualifier (for other device speed): bLength 10 bDescriptorType 6 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 bNumConfigurations 1 Device Status: 0x0000 (Bus Powered)
查找鏈接的設(shè)備數(shù)量,可以使用下面命令查找:
[root@localhost ~]# find /dev/bus/dev/bus /dev/bus/usb /dev/bus/usb/002 /dev/bus/usb/002/003 /dev/bus/usb/002/002 /dev/bus/usb/002/001 /dev/bus/usb/001 /dev/bus/usb/001/056 /dev/bus/usb/001/010 /dev/bus/usb/001/001
結(jié)合使用lsusb命令和-D
參數(shù),可以輸出特定設(shè)備的詳細(xì)信息。下面實(shí)例查看金士頓存儲(chǔ)設(shè)備的詳細(xì)信息:
[root@localhost ~]# lsusb -D /dev/bus/usb/001/056
lsusb -v
為我們提供了非常詳細(xì)的信息,我們可以配合使用grep命令查找指定的信息,下面過濾出idVendor
和Mass Storage
,來獲取大容量存儲(chǔ)設(shè)備:
[root@localhost ~]# lsusb -v |grep -Ei '(idVendor|Mass\ Storage)' idVendor 0x0bda Realtek Semiconductor Corp. idVendor 0x0951 Kingston Technology bInterfaceClass 8 Mass Storage idVendor 0x1d6b Linux Foundation idVendor 0x0e0f VMware, Inc. idVendor 0x0e0f VMware, Inc. idVendor 0x1d6b Linux Foundation
可以看到只有idVendor是Kingston Technology的設(shè)備才是大容量存儲(chǔ)設(shè)備。
讀到這里,這篇“Linux怎么調(diào)試USB設(shè)備”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。