Linux USB 设备基础理论

2023-01-18  本文已影响0人  frytea

通过扫描以下目录获取物理节点所有 USB 设备:

/sys/bus/usb/devices/usb*
/sys/bus/usb/devices/usb*/$busnum-*

从该文件系统收集某一个设备的主要信息如下:

{
    "busnum": 1,
    "class": 0,
    "devnum": 2,
    "level": 1,
    "manufacturer": "QEMU",
    "port": 0,
    "prodid": "0001",
    "product": "QEMU USB Tablet",
    "speed": "12",
    "usbpath": "1",
    "vendid": "0627"
}

文件含义

目录下部分文件含义如下:

定位方法

定位某一个 USB 设备的方法有两种:

设备类型bDeviceClass

类代码 用法 描述
00h 设备描述符 Use class information in the interface Descriptors
01h 接口描述符 音频
02h 设备描述符、接口描述符 通讯设备,如电话,moden等等
03h 接口描述符 HID设备
05h 接口描述符 Physical
06h 接口描述符 Image
07h 接口描述符 打印机
08h 接口描述符 大容量存储
09h 设备描述符 Hub USB集线器
0Ah 接口描述符 CDC-Data
0Bh 接口描述符 Smart Card
0Dh 接口描述符 Content Security
0Eh 接口描述符 UVC视频/CAMERA
0Fh 接口描述符 Personal Healthcare
10h 接口描述符 音视频设备
11h 设备描述符 Billboard Device Class
12h 接口描述符 USB Type-C Bridge Class
DCh 设备描述符、接口描述符 Diagnostic Device
E0h 接口描述符 无线控制器
EFh 设备描述符、接口描述符 Miscellaneous
FEh 接口描述符 Application Specific
FFh 设备描述符、接口描述符 厂商用自定义

参考文献

上一篇 下一篇

猜你喜欢

热点阅读