USB2.0 数据包
2020-09-13
5183
1
USB主机发出的包在USB总线上广播,所有在USB总线上的设备需要根据自己的设备地址对由USB主机广播的令牌包进行过滤。如果该令牌包的地址与其自身地址不匹配,USB设备默认不处理即忽略该令牌包。
USB包的目标地址只有7位,所以一条US总线上最多可以挂接127个USB设备(地址0用于设备在枚举过程中),包中的目标端点地址占4位,故USB最大可以支持16个双向端即点其32个端点。
PID | 含义 | 说明 |
---|---|---|
0011 | 数据DATA0 | 数据包偶数包 |
1011 | 数据DATA1 | 数据为奇数据包 |
0111 | 数据DATA2 | 此为作为一个高速同步事务的专用数据包 |
1111 | 数据MDATA | 此时作为一个SPLIT事务的专用数据包。 |
数据包中并没有其传输的目的地址和端点信息,所以数据包必须紧跟在令牌包之后。
数据包是用于传输数据的,由8位的包标识PID,数据字段和16位的循环冗余校验字段CRC组成。
- PID字段:用于指明不同的数据包类型。支持 4 种数据包,分别为: DATA0 、 DATAI 、DATA2 和MDATA。 在介绍的数据触发机制中,使用 DATA0 和 DATA1。
- 数据字段:其中包含了传输的数据。其数据的大小根据数据传输类吧和用户需要而定。
- CRC 字段:这里使用 16 位的循环冗余校验来对数据字段进行保护。
数据MDATA数据抓包
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936