首页 > 代码库 > USB枚举过程

USB枚举过程

 

总的过程

 

host检测到devicereset

  1. 获取设备描述符
    1. host发获取设备描述符请求  
      1. ->setup  
      2. ->data0   
      3. <-ack
    2. Divice 返回设备描述符  
      1. ->in  
      2. <-data1  
      3. ->ack
    3. host说明已获取设备描述符  
      1. ->out  
      2. ->data0空数据  
      3. <-ack

lsb先发

对设备reset,开始设置新地址

  1. 新地址
    1. ->out
    2. ->data0 new address
    3. <-ack
  2. -
    1. ->in
    2. <-data1
    3. ->ack

ack之后,设备启用新地址

  1. 用新地址请求设备描述符
    1. ->setup
    2. ->data0
    3. <-ack
  1. device返回设备描述符
    1. ->in
    2. <-data1
    3. ->ack
  2. host确认
    1. ->out
    2. ->data0
    3. <-ack

获取配置描述符

  1. 发获取配置描述符请求
    1. ->setup
    2. ->data0
    3. <-ack
  2. 发送配置描述符
    1. ->in
    2. <-data1
    3. ->ack
  3. 确认收到
    1. ->out
    2. ->data0
    3. <-ack

 

USB枚举过程