[应用相关] usb协议相关学习分享——接口描述符

[复制链接]
 楼主| Jacquetry 发表于 2023-11-24 20:00 | 显示全部楼层 |阅读模式
  1. struct _INTERFACE_DESCRIPTOR_STRUCT
  2. {
  3.     BYTE bLength;         
  4.     BYTE bDescriptorType;  
  5.     BYTE bInterfaceNumber;
  6.     BYTE bAlternateSetting;
  7.     BYTE bNumEndpoints;   
  8.     BYTE bInterfaceClass;  
  9.     BYTE bInterfaceSubClass;
  10.     BYTE bInterfaceProtocol;
  11.     BYTE iInterface;      
  12. }INTERFACE_DESCRIPTOR_STRUCT
bLength : 描述符大小.固定为0x09.
bDescriptorType : 接口描述符类型.固定为0x04.
bInterfaceNumber: 接口的编号
bAlternateSetting : 备用的接口描述符标号.用于在同一个接口中的多个描述符中进行切换。同一个接口可以有多个接口描述符,用bAlternateSetting来识别
bNumEndpoint : 使用的端点数目.端点0除外.
bInterfaceClass : 类型代码.
bInterfaceSubClass : 子类型代码.
bInterfaceProtocol : 协议代码.
iInterface : 字符串描述符的索引,如果没有字符串描述符的话,这个必须设置为0.

tfqi 发表于 2023-12-28 16:53 | 显示全部楼层
请问接口描述符的作用是什么呢
kxsi 发表于 2023-12-28 18:11 | 显示全部楼层
这些描述符即便不使用也不能删除是吗
coshi 发表于 2023-12-28 19:23 | 显示全部楼层
接口描述符不能单独返回给USB主机,主机会请求获得配置描述符集合
qcliu 发表于 2023-12-28 20:41 | 显示全部楼层
USB描述符有设备描述符、标准配置描述符、接口描述符、端点描述符、字符串描述符,HID设备有HID描述符、报告描述符和物理描述符
zljiu 发表于 2023-12-28 21:51 | 显示全部楼层
如果一个配置有多个接口的话,那么每个接口的编号都有一个独立的编号,编号从0开始递增
您需要登录后才可以回帖 登录 | 注册

本版积分规则

109

主题

1764

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部