标准 版本 |
发布 日期 |
官方代号 |
最大传输 速率 |
电压电流 支持 |
USB 1.0 | 1996.01 | Low-Speed | 1.5 Mbps | 5V/500mA |
USB 1.1 | 1998.09 | Full-Speed | 12 Mbps | 5V/500mA |
USB 2.0 | 2000.04 | High-Speed | 480 Mbps | 5V/500mA |
USB 3.2 Gen1 |
2008.11 | SuperSpeed | 5 Gbps | 15V/900mA |
USB 3.2 Gen*1 |
2013.07 | SuperSpeed+ | 10 Gbps | 20V/5A |
USB 3.2 Gen*2 |
2017.09 | SuperSpeed+ | 20 Gbps | 20V/5A |
USB 4 | 2019.09 | - | 40 Gbps | 20V/5A |
标准 版本 |
发布 日期 |
官方代号 |
最大传输 速率 |
电压电流 支持 |
USB 1.0 | 1996.01 | Low-Speed | 1.5 Mbps | 5V/500mA |
USB 1.1 | 1998.09 | Full-Speed | 12 Mbps | 5V/500mA |
USB 2.0 | 2000.04 | High-Speed | 480 Mbps | 5V/500mA |
USB 3.2 Gen1 |
2008.11 | SuperSpeed | 5 Gbps | 15V/900mA |
USB 3.2 Gen*1 |
2013.07 | SuperSpeed+ | 10 Gbps | 20V/5A |
USB 3.2 Gen*2 |
2017.09 | SuperSpeed+ | 20 Gbps | 20V/5A |
USB 4 | 2019.09 | - | 40 Gbps | 20V/5A |
描述符 | 用途 |
设备描述符 | 表明协议版本、厂商信息、使用的类信息等 |
配置描述符 | 表明配置用到的接口数、电源信息、集合总长度等 |
接口描述符 | 表明接口使用的类、接口用到的端点数等 |
端点描述符 | 表明该端点的类型、端点最大包长等端点属性 |
字符串描述符 | 包含字符串数据 |
字节序号 | 域 | 描述 |
0 | bmRequestType |
字节中每个位的意义: D7: 表明数据阶段的传输方向 0=主机至设备 1=设备至主机 D6~D5: 表明请求的类型 0=标准请求 1=类请求 2=厂商请求 3=保留 D4~D0: 表明请求的接收方 0=设备 1=接口 2=端点 3=其他 4..31=保留 |
1 | bRequest | 表明具体请求 |
2、3 | wValue | 根据不同请求,其含义不同 |
4、5 | wIndex | 根据不同请求,其含义不同 |
6、7 | wLength | 数据阶段的数据长度,以字节为单位,无数据则为0 |
bmRequestType | bRequest | wValue | wIndex | wLength |
0000 0000B 0000 0001B 0000 0010B |
CLEAR_FEATURE (1) | 特性选择 |
0 接口号 端点号 |
0 |
1000 0000B | GET_CONFIGURATION (8) | 0 | 0 | 1 |
1000 0000B | GET_DESCRIPTOR (6) | 描述符类型、索引 | 0或语言ID | 描述符长度 |
1000 0000B | GET_INTERFACE (10) | 0 | 接口号 | 1 |
1000 0000B 1000 0001B 1000 0010B |
GET_STATUS (0) | 0 |
0 接口号 端点号 |
2 |
0000 0000B | SET_ADDRESS (5) | 设备地址 | 0 | 0 |
0000 0000B | SET_ CONFIGURATION(9) | 配置值 | 0 | 0 |
0000 0000B | SET_DESCRIPTOR (7) | 描述符类型、索引 | 0或语言ID | 描述符长度 |
0000 0000B 0000 0001B 0000 0010B |
SET_FEATURE (3) | 特性选择 |
0 接口号 端点号 |
0 |
0000 0001B | SET_ INTERFACE (11) | 备用接口号 | 接口号 | 0 |
1000 0010B | SYNCH_FRAME (12) | 0 | 端点号 | 2 |
USB批量传输 | USB中断传输 | USB同步传输 |
没有请求过程,只有数据收发。 特点:传输数据量大,实时性不高。 常用于U盘等大容量传输设备。 |
没有请求过程,只有数据收发。 特点:数据传输量不大,实时性高 常用于鼠标、键盘等设备。 *中断传输只是一个概念,不是中断异常,它在固定的实际间隔,主机间歇性地安排一次传输,使得及时收到设备更新数据。 |
没有请求过程,只有数据收发。 特点:传输量大且实时性高,但对数据准确性要求不高。 *同步传输的事务和其他传输不一样,它没有应答包。通常事务的结尾会以应答包汇报此事务的传输状态,当没有应答包时,可以通过数据包的CRC来判断数据的准确性。 |