USB2.0规范
+ -

USB 设置接口SetInterface

2020-09-15 3733 1
ID 请求码 说明
11 SET_INTERFACE 用于主机要求设备用某个描述符来描述接口

SetInterface请求用于USB主机为设备指定的接口选择一个合适的替换值,该请求没有数据阶段。。

bmRequestType(1) bRequest(1) wValue(2) wIndex(2) wLength(2)
01 0B 可替换接口值 接口 0
  • bmRequestType:x01表示从主机到设备,请求标准命令,接收者为接口。
  • bRequest:0x0B,表示设置接口。
  • wValue:可替换设置值
  • wIndex:接口ID

SetInterface请求只在USB处于配置状态时有效。
当USB设备的一个接口存在1个或多个可替换设置时,SetInterface请求使得主机可以为其选择所需要的可替换值。

SetInterface抓包实例

打开摄像头时,选择接口的内容如下:
选择接口ID=1,转换接口为6的接口

 CTL    01 0b 06 00  01 00 00 00                      SET INTERFACE
HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936   

0 篇笔记 写笔记

USB 设置接口SetInterface
ID请求码说明11SET_INTERFACE用于主机要求设备用某个描述符来描述接口SetInterface请求用于USB主机为设备指定的接口选择一个合适的替换值,该请求没有数据阶段。。bmRequestType(1)bRequest(1)wValue(2)......
Windows下USB驱动SET_INTERFAC失败 bad pipe flags
最近在调试一个UVC摄像头,由于项目的原因,需要在驱动下对UVC协议进行模拟,以实现在驱支层打下固件,从而读取数据的要求。本以为这是一个很简单的事,没想到还是耽搁了一点时间,花了一点小功夫。打开USB摄像头,对UVC协议的模拟主要是是USB特定类请求的模拟,通过我们的基础知识可知道,上层应用或驱动......
USB 设置配置(SetConfiguration)和设置接口(SetInterface)的区别与联系
在USB设备枚举的最后,主机都会对设备发送设置配置置(SetConfiguration)请求和对接口发送设置接口(SetInterface)请求,这两个控制请求在USB设备的工作中,具有重要的作用。 CTL 00 09 01 00 00 00 00 00 ......
USBIP 选择接口URB_FUNCTION_SELECT_INTERFACE
URB_FUNCTION_SELECT_INTERFACE命令发起static NTSTATUSstore_urbr_submit(PIRP irp, struct urb_req *urbr){... case URB_FUNCTION_SELECT_INTERFACE: ......
URB URB_FUNCTION_SELECT_INTERFACE分析详解
URB_FUNCTION_SELECT_INTERFACE对应的USB标准请求是SetInterface。很奇怪,一个是Select,一个是Set.是微软故意的么。在SetInterface中,其wIndex对应的是InterfaceId,wValue对应的是AlterInterfaeId,......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!