USB通信基础了解
- 1. USB总线简介
- 2. USB电气特性
- 3. USB Protocol Layer
-
- USB有四种数据传输模式(Transfer),分别为控制(Control)传输、中断(Interrupt)传输、批量(Bulk)传输、同步(Isochronous)传输
- Transaction分为:Setup transaction、In transaction、Out transaction
- Packet分为: Token packet、Data packet、Handshake packet、Special packet,packet 以包标识字段PID来区分
- Setup Packet、Data Packet、Handshake Packet、SOF Packet
- Control Transfer(Get Descriptor)实例
- Interrupt Transfer(In Transaction)实例
1. USB总线简介
USB总线协议是以Intel等公司共同制定的串行接口标准,USB与I2C、SPI、UART类似,都是一种传输数据的协议规范,但USB主要设计是用于计算机与外接设备的数据交互和文件传输,USB协议版本从最开始的1.0、1.1、2.0、3.0、3.1、3.2等到现在最新的4.0版本,通信速率越来越高,设计也变得更复杂。USB 2.0 可能是目前最经典的接口,480Mbps的速度已经可以满足一般人的日常文件传输需求。USB版本是可以向下兼容的,使得即使更新换代,但还是非常好用的通信接口。
USB属于一种轮询式总线,主机控制端口初始化所有的数据传输,所有数据通信都是由主机发起的。
2. USB电气特性
USB2.0接口一般是4或5线,VBUS、D-、D+、GND、Shield。
USB2.0 VBUS上电压为5V,可提供的最大电流为500mA。
D- D+为差分数据线,可减少一定干扰,最高电压为3.3V左右。
下图为USB低速/全速信号电平规格定义
1)首先需了解differential 1/0的定义。
- differential “1”: (D+) - (D-) > 200mV & D+ > VIH(min),正常即 D+ 3.3V(high)& D- 0V(low)
- differential “0”: (D-) - (D+) > 200mV & D- > VIH(min),正常即 D- 3.3V(high) & D+ 0V(low)
2)两种全高或全低的情况
- SE0: D&