zoukankan      html  css  js  c++  java
  • USB Packet Types

    USB has four different packet types. Token packets indicate the type of transaction to follow, data packets contain the payload, handshake packets are used for acknowledging data or reporting errors and start of frame packets indicate the start of a new frame.

    • Token PacketsThere are three types of token packets,
      • In - Informs the USB device that the host wishes to read information.
      • Out - Informs the USB device that the host wishes to send information.
      • Setup - Used to begin control transfers.

        Token Packets must conform to the following format, 

    Sync PID ADDR ENDP CRC5 EOP
    • Data PacketsThere are two types of data packets each capable of transmitting up to 1024 bytes of data.
      • Data0
      • Data1

        High Speed mode defines another two data PIDs, DATA2 and MDATA.

        Data packets have the following format, 

    Sync PID Data CRC16 EOP
      • Maximum data payload size for low-speed devices is 8 bytes.
      • Maximum data payload size for full-speed devices is 1023 bytes.
      • Maximum data payload size for high-speed devices is 1024 bytes.
      • Data must be sent in multiples of bytes.
    • Handshake PacketsThere are three type of handshake packets which consist simply of the PID
      • ACK - Acknowledgment that the packet has been successfully received.
      • NAK - Reports that the device temporary cannot send or received data. Also used during interrupt transactions to inform the host there is no data to send.
      • STALL - The device finds its in a state that it requires intervention from the host.

        Handshake Packets have the following format, 

    Sync PID EOP
    • Start of Frame PacketsThe SOF packet consisting of an 11-bit frame number is sent by the host every 1ms ± 500ns on a full speed bus or every 125 µs ± 0.0625 µs on a high speed bus. 
    Sync PID Frame Number CRC5 EOP
  • 相关阅读:
    random模块
    collections模块
    re模块
    正则表达式
    递归函数,二分查找
    内置函数,匿名函数
    python 中的爬虫· scrapy框架 重要的组件的介绍
    flask 中的常用组件的使用 ,virtualenv组件和 pipreqs组件 和 偏函数
    Django 中自带的 content_type表 , alipay的接口 需要的配置
    restful 和 restframework
  • 原文地址:https://www.cnblogs.com/utank/p/4634627.html
Copyright © 2011-2022 走看看