USB系列(3) Windows USB枚举过程

枚举是决定何种设备连接到总线的过程,同时也决定了何种参数需要配置给这种设备,这些参数包括:功率,端点数量,产品分类等等。在写USB firmware的时候要对枚举过程中Host的response了然于胸,而不仅限于USB spec中的通用描述。
不同的OS在USB枚举过程的具体操作会有一些差异,下面主要介绍的是Windows操作系统在USB设备枚举过程中Host的具作操作步骤:

  1. Host/Hub通过数据线上拉电阻的阻值变化检测到新设备接入。Host等待100ms以保证设备电源稳定。
  2. Host向device发Bus Reset使得设备进入default状态,从此之后,设备可以响应默认地址0.
  3. Host请求Device发送Device Descriptor的前64个字节。
  4. Host在收到Device Descritptor的前8个字节后,再次向Device发出Bus Reset。
  5. Host发送一个Set Address命令给Deivce, 从此Device有个通信地址,不再使用默认地址0进行通信。
  6. Host请求获取完整的Device Descritpor, 总计18字节。
  7. Host请求获取9个字节的Configuration Descriptor以了解 Configuration descriptor的总大小。
  8. Host请求255字节的Configuration Descritpor。
  9. 如果String Descriptor有实现,Host将请求获取String Descriptor。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值