Linux usbmon获取的U盘数据(3)

__le16 wTotalLength;      0x2000配置所返回的所有数据的大小
 __u8  bNumInterfaces;     0x01  配置所支持的接口数
 __u8  bConfigurationValue;0x01  set_configuration 命令需要的参数值
 __u8  iConfiguration;     0x00  描述该配置的字符串的索引值
 __u8  bmAttributes;       0x80  供电模式的选择
 __u8  bMaxPower;          0x32  设备从总线提取的最大电流
} __attribute__ ((packed));
c3ad3e00 531933399 C Ci:1:003:0 0 9 = 09022000 01010080 32
//获取配置描述符+接口描述符+2个端点描述符
c3ad3e00 531933694 S Ci:1:003:0 s 80 06 0200 0000 0020 32 <
获取配置描述符  09022000 01010080 32
接口描述符      090400 00020806 5000
端点描述符1     0705 01024000 00
端点描述符2     070582 02400000
struct usb_interface_descriptor {
 __u8  bLength;            0x09 描述符长度
 __u8  bDescriptorType;    0x04 描述符类型
 
 __u8  bInterfaceNumber;   0x00 接口编号
 __u8  bAlternateSetting;  0x00 备用的接口描述符编号
 __u8  bNumEndpoints;      0x02 该接口使用的断点数
 __u8  bInterfaceClass;    0x08 接口类型
 __u8  bInterfaceSubClass; 0x06 接口子类型
 __u8  bInterfaceProtocol; 0x50 接口协议
 __u8  iInterface;         0x00 描述该接口的字符串索引值
} __attribute__ ((packed));
端点1   07 05 01 02 4000 00
struct usb_endpoint_descriptor {
 __u8  bLength;            0x07  描述符长度
 __u8  bDescriptorType;    0x05  描述符类型
 
 __u8  bEndpointAddress;   0x01  端点地址:0~3 为时端点号1,第七位是方向0输出
 __u8  bmAttributes;       0x02  端点属性 bit[0:1]的值00控制,01同步,02批量 ,03中断
 __le16 wMaxPacketSize;    0x4000本端点接受或发送最大信息包的大小
  __u8  bInterval;          0x00  
 
 
 
 __u8  bRefresh;          
 __u8  bSynchAddress;     
} __attribute__ ((packed));
端点2   07 05 82 02 4000 00
struct usb_endpoint_descriptor {
 __u8  bLength;            0x07  描述符长度
 __u8  bDescriptorType;    0x05  描述符类型
 
 __u8  bEndpointAddress;   0x82  端点地址:0~3 为时端点号2,第七位是方向1输入
 __u8  bmAttributes;       0x02  端点属性 bit[0:1]的值00控制,01同步,02批量 ,03中断
 __le16 wMaxPacketSize;    0x4000本端点接受或发送最大信息包的大小
  __u8  bInterval;          0x00  
 
 
 
 __u8  bRefresh;          
 __u8  bSynchAddress;     
} __attribute__ ((packed));
c3ad3e00 531935401 C Ci:1:003:0 0 32 = 09022000 01010080 32090400 00020806 50000705 01024000 00070582 02400000
//获取字符串描述符
c3ad3e00 531935816 S Ci:1:003:0 s 80 06 0300 0000 00ff 255 <
接口字符串索引
04030904 不知道什么意思
c3ad3e00 531937399 C Ci:1:003:0 0 4 = 04030904
c3ad3e00 531937687 S Ci:1:003:0 s 80 06 0302 0409 00ff 255 <
产品字符串
c3ad3e00 531939398 C Ci:1:003:0 0 26 = 1a034400 61007400 61005400 72006100 76006500 6c006500 7200
c3ad3e00 531939727 S Ci:1:003:0 s 80 06 0301 0409 00ff 255 <
厂商字符串 6b k 69 i 6e n 67 g 73 s 74 t 6f o 6e n
合起来就是kingston
c3ad3e00 531941400 C Ci:1:003:0 0 18 = 12036b00 69006e00 67007300 74006f00 6e00
c3ad3e00 531941756 S Ci:1:003:0 s 80 06 0303 0409 00ff 255 <
设备序列号
c3ad3e00 531943399 C Ci:1:003:0 0 18 = 12034300 33004400 46003800 46003900 4600

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwyxgg.html