USB 设置特性请求SetFeature
2020-09-15
5199
26
ID | 请求码 | 说明 |
---|---|---|
3 | SET_FEATURE | 用来启用或激活命令接收者的某些特性 |
SetFeature请求用于设置或使能USB设备、接口或端点的特性值,和CLEAR_FEATURE请求相对应。
SetFeature请求同样没有数据阶段。
bmRequestType(1) | bRequest(1) | wValue(2) | wIndex(2) | wLength(2) |
---|---|---|---|---|
00 | 03 | 特性选择符 | 0 | 0 |
01 | 03 | 特性选择符 | 接口ID | 0 |
02 | 03 | 特性选择符 | 端点地址 | 0 |
当wValue字段为TEST_MODE时,wIndex字段的的高字节指明设备测试选择符,低字节必须为0.
- bmRequestType为00,表示从主机到设备,请求命准命令,接收者为设备
- bmRequestType为01,表示从主机到设备,请求命准命令,接收者为接口
- bmRequestType为02,表示从主机到设备,请求命准命令,接收者为端点
USB协议支持的测试选择符如下:
Test_J:值为01H
Test_K:值为02H
Test_SE0_NAK:值为03H
Test_Packet:值为04H
Test_Forece_Enable:值为05H
高速设备在默认的USB状态,地址状态和配置状态下,都必须支持SetFeature。
SetFeature 和 ClearFeature 可用于设置 boolean 型的功能。指定设备作为接收者,支持的选项只有DEVICE_REMOTE_WAKEUP 和 TEST_MODE,Test 模式允许设备多种条件。
选择特性字 | 接收者 | 值 |
---|---|---|
ENDPOINT_HALT | 端点 | 0 |
DEVICE_REMOVE_WAKEUP | USB设备 | 1 |
TEST_MODE | USB设备 | 2 |
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936