Document Reference No.: FT_000180
Simplified Description of USB Device Enumeration Technical Note TN_113
Version 1.0
Clearance No.: FTDI #118
介绍
USB枚举过程包含如下动作:
- 检测USB设备
- 识别USB设备
- 加载USB设备驱动
USB枚举通过硬件技术检测设备是否存在,然后通过软件识别连接的设备是什么。
检测设备是否已经接入
USB接口由四根电缆组成:
- 电源
- 地
- 数据正(USBDP)
- 数据负(USBDM)
USB Host端在自己的USBDP和USBDM信号线上分别接15Kohm电阻下拉到GND。当USB设备(从设备)插入到USB主机端口,那么在USBDP和USBDM信号线上有电平变化。USB主机可以根据这个变化检测是否有从机接入。同时,根据电平变化也可以检测测机的通讯速率。
确定设备速率
低速USB设备(1.5Mbps)在USBDM信号线上接1.5K电阻上拉到VCC,如果该设备接入到主机端口,那么主机端口的USBDM的信号线电平从0上升到91% VCC
。
全速USB设备(12Mbps)在USBDP信号线上接1.5K电阻上拉到VCC,如果该设备接入到主机端口,那么主机端口的USBDP的信号线电平从0上升到91% VCC
。
对于主机而言,高速USB设备(480Mbps)在初始时表现未全速设备。USB主机首先需要做的就是以高速方式与从机进行收发包通信。如果通信应答正常,那么就假定USB设备是一个高速设备。如果通信应答失败了,那么USB主机假定USB从机是一个全速设备。
注: This means a high speed device has a 1k5 pull up resistor on USB DP that can be switched in / out of
circuit.
A J state is defined as a differential signal on USBDP and USB DM >= +300mV.
A K state is defined as a differential signal on USBDP and USB DM >= -300mV.