USB之学习2--USB枚举过程

当USB主机检查到USB设备插入后,就要对设备进行枚举了

       1.确认是否是正常的可使用的USB

        2.设置地址

        3.获取设备描述符

        4.配置描述符

USB枚举主要运用了控制传输   

        1.建立过程   

         2.可选数据过程

         3状态过程

         建立过程  都是由USB主机发起的。它起始于一个SETUP令牌包

       SETUP+DATA0

       SYNC  SETUP   ADDR  ENDP CRC5   EOP

       1            0XB4       0              0       0X08   01

      SYNC    PID        DATA  .........    CRC16  EOP

      1                           0X80  0X06 0X00 0X01 0X00 0X40 0X00

     如果是控制传输 那么数据过程就是输入数据;如果是控制写  那么数据是输出数据

    状态过程传输防线与数据方向正好相反 

   控制 写        SETUP    OUT1 OUT0   ...... IN

   控制读         SETUP    IN   IN   IN    IN   OUT

   无数据          SETUP   IN 

     枚举过程详解

           

       1.确认是否是正常的可使用的USB

             USB插入后首先对设备进行复位,设备总线复位后其地址为 0 主机和设备便通过地址0进行通信

             USB主机往地址0的设备端点0发送一个设备描述符请求命令(如上的数据),设备接收到数据后,按照主机请求返回数据(改数据的长度最小为8字节,)

             USB主机接收到数据后,对数据进行解析判断 然后返回一个0长度的确认数据包

       2 设置地址

           主机给设备发送一个设备地址数据包,设备地址在建立过程的数据包 所以其没有数据过程,

          设备给主机返回一个0长度的状态数据包

           主机返回一个ACK

           设备启用新的地址

       3 获得设备描述符

             主机用新的地址获得设备的描述符,设备描述符大小为18字节,如果端点0最大包长度小于18字节,那么就需要请求多次数据输入(发送多个IN令牌)

       4获得设备配置描述符

           同上。          

          

          

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值