USB2.0 Setup事务
2021-11-30
5757
2
Setup事务是由SETUP令牌,数据包和握手包组成的。
一个成功的Setup事务保证了Setup令牌和数据包传输的可靠传输。Setup事务是由主机到设备的,并且如果Setup事务含有数据包,必须使用DATA0包。
有数据包的SETUP事务可见下图。
- 此SETUP事务使用SETUP令牌包(0xB4),其目标设备地址为0,目标设备端点地址也为0。
- 数据包使用DATA0(SETUP事务必须使用DATA0包)来传输主机发给设备的USB请求命令。这里为获取USB设备的设备描述符请求,更多的可见USB标准请求一节。
- USB设备收到主机的数据包后,回握手包ACK,表示其正确无误地收到标准请求命令。
以上是一个带有数据包的并且正确传输的SETUP事务。
Setup事务的处理机制
Setup事务的处理机制如下图所示:
- 无论是Setup令牌或者是DATA0数据包在发向主机的传输过程中,如果出现发送错误或者超时,USB设备均不向主机返回任保握手包。
- 当USB主机发送SETUP令牌和DATA0数据包后,在规定的超时时间内并没有收到设备返回的握手ACK时,则重传该事务。
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936