基于OHCI的USB主机 —— USB标准请求

简介:
USB 标准设备请求是用来完成 USB 设备枚举的命令。 USB 设备必须对标准设备请求做出响应,不管该设备是否已经被分配了一个默认的地址或该设备目前正在配置。所有的标准请求都是使用默认端点( 0 )来传输的。
 
USB  设备请求格式:
偏移值
字段名
字段长度
字段取值
说明
0
1
位图
请求特性:
D7 :数据传输方向
0 :主机到设备
1 :设备到主机
D6 D5 :类型
0 :标准
1 :类型
2 :厂商
3 :保留
D4D3D2D1D0
0 :设备
1 :接口
2 :端点
3 :其它
4…31 :保留
1
设备请求
1
数值
USB  设备请求
2
2
根据不同请求,以字节为单位来定义
4
索引
2
字段编号索引
根据不同请求,以字节为单位来定义
6
长度
2
计数
如果传输一组数据,指出要传输数据的字节数
 
USB  标准设备请求:
请求类型
设备请求
(2B)
      (2B)
长度
数据
1000 0000B
1000 0001B
1000 0010B
GetStatus(00H)
0
设备
接口
端点
2
设备、接
口或端点 状态
0000 0000B
0000 0001B
0000 0010B
Clear Feature(01H)
特殊选择符
设备
接口
端点
0
1000 0000B
1000 0001B
1000 0010B
Set Featrue(03H)
特殊选择符
设备
接口
端点
0
0000 0000B
Set Address(05H)
设备地址
0
0
1000 0000B
Get Descriptor(06H)
描述符的类
型和索引
0      语言  ID
    符长度
描述符
0000 0000B
Set Descriptor(07H)
描述符的类
型和索引
0      语言  ID
    符长度
描述符
1000 0000B
Get Configuratipon(08H)
0
0
1
配置值
0000 0000B
Set Configuratipon(09H)
配置值
0
0
1000 0000B
Get Interface(0AH)
0
接口
1
可选的接口
0000 0000B
Set Interface(0BH)
可选配置
接口
0
1000 0010B
Synch Frame(0CH)
0
端点
2
帧标号
 
描述符类型
描述符类型
数值
设备
1
配置
2
字符串
3
接口
4
端点
5
 
特殊选择符
特殊选择符名称
接收方
数值
设备远程唤醒
设备
1
禁止端点
端点
0





本文转自 tywali 51CTO博客,原文链接:http://blog.51cto.com/lancelot/269441,如需转载请自行联系原作者
目录
相关文章
|
网络架构
OpenWRT使用wifidog实现强制认证的WIFI热点
首先安装wifidog到OpenWRT的路由器:   opkg update   opkg install wifidog    wifidog依赖下面这些模块: iptables-mod-extra iptables-mod-ipopt kmod-ipt-nat iptables-...
2806 0
|
JavaScript Windows
Cocos Creator3.8 项目实战(十)使用 protobuf详细教程
Cocos Creator3.8 项目实战(十)使用 protobuf详细教程
1505 0
|
6月前
|
弹性计算 运维 监控
基于进程热点分析与系统资源优化的智能运维实践
智能服务器管理平台提供直观的可视化界面,助力高效操作系统管理。核心功能包括运维监控、智能助手和扩展插件管理,支持系统健康监控、故障诊断等,确保集群稳定运行。首次使用需激活服务并安装管控组件。平台还提供进程热点追踪、性能观测与优化建议,帮助开发人员快速识别和解决性能瓶颈。定期分析和多维度监控可提前预警潜在问题,保障系统长期稳定运行。
225 17
|
11月前
|
存储 边缘计算 人工智能
深入理解云计算:架构、类型与未来趋势
【10月更文挑战第6天】深入理解云计算:架构、类型与未来趋势
433 0
|
内存技术 存储 Android开发
MCU最小系统电路设计(以STM32F103C8T6为例)-3
MCU最小系统电路设计(以STM32F103C8T6为例)
MCU最小系统电路设计(以STM32F103C8T6为例)-3
|
12月前
UE5使用Dash插件实现程序化地形场景制作
本文介绍了如何在Unreal Engine 5中使用Dash插件来实现程序化地形场景制作,包括插件激活、基本使用、资产导入路径和练习成果展示。
350 0
UE5使用Dash插件实现程序化地形场景制作
|
算法 Oracle Java
Java字符串拼接技术演进及阿里巴巴的贡献
本文主要讲述了Java字符串拼接技术的演进历程,以及阿里巴巴贡献的最新实现 PR 20273。
320 12
|
存储 运维 安全
在Linux中,如何使用tcpdump和tshark进行实时数据包捕获?
在Linux中,如何使用tcpdump和tshark进行实时数据包捕获?
|
存储 索引 Python
生信教程:使用全基因组SNP数据进行ABBA-BABA分析
生信教程:使用全基因组SNP数据进行ABBA-BABA分析
|
缓存 UED 开发者
CDN的优缺点是什么呢
【4月更文挑战第21天】CDN提升网站访问速度和可用性,通过全球缓存服务器减轻源服务器负载,优化用户体验。然而,其成本较高,技术复杂,存在内容同步问题和对第三方服务的依赖。在使用CDN时需权衡利弊。
948 4