硬件开发——USB2.0
小狼@http://blog.csdn.net/xiaolangyangyang
1、电气特性
- 低速设备:USB主机端D+/D-拉低,低速USB设备D+拉低,主机检查到为低速设备,如下图所示:
- 全速设备/高速设备:USB主机端D+/D-拉低,全速USB设备D+拉高,主机检查到为全速或高速设备,如下图所示:
- 高速设备以全速模式开始,再进行协商到高速模式,协商时序如下:
- 全速设备状态转换:
- 高速设备状态转换:
2、速度分类
- 低速L:1.5Mb/s,HID设备,USB2.0
- 全速H:12Mb/s,耳机,USB2.0
- 高速S:480Mb/s,USB存储器/打印机,USB2.0/USB3.0
- 超级速度:4.8Gb/s,USB存储器/显示器,USB3.0
3、枚举过程
4、描述符
USB1.1协议中定义的标准描述符有:
- 设备描述符(Device Descriptor)
- 配置描述符(Configuration Descriptor)
- 接口描述符(Interface Descriptor)
- 端点描述符(Endpoint Descriptor)
- 字符串描述符(String Descriptor)
USB2.0又新增了3个新的标准描述符:
- 设备限定描述符(Device Qualifier Descriptor)
- 其他速率配置描述符(Other Speed Configuration Descriptor)
- 接口电源描述符(Interface Power Descriptor)
5、端点传输类型
- 中断传输(鼠标键盘):周期传输、保证延迟、数据可靠、低吞吐,size:FS64/HS1024
- 等时传输(音频视频):周期传输、保证延迟、不可靠、中高吞吐,size:FS1023/HS1024
- 批量传输(硬盘扫描仪):非周期、不保证延迟、数据可靠、高吞吐,size:FS64/HS512
- 控制传输(配置和控制):非周期、用于usb配置、数据可靠、低吞吐,size:FS64/HS64
6、传输、事务和数据包
1、数据传输被分解成多个事务,事务又被分解成多个包,事务的大小又端点size决定,事务在总线帧上传输,如下图所示:
2、帧开始数据包格式:
3、令牌包格式:
4、数据包格式:
5、握手包格式:
6、事务格式:
7、常用usb接口芯片
- CY7C68013A:Cypress(赛普拉斯)、USB2.0/3.0、GPIF/FIFO、8051
- EZ-USB FX3:Infineon(英飞凌)、USB2.0/3.0、GPIF/GPIFII/FIFO、ARM926EJ-S
Rockchip RK3588 - USB基础 & 调试
USB2.0学习2--描述符
嵌入式工程师必学(8):USB2.0开发过程
深入理解USB2.0通信协议——深度剖析USB事务