USB从端口

USB从端口包括USB集线器和功能设备(Function)两大类。它们都必须有标准的USB接口,理解USB协议,支持标准的USB操作(如配置、复位等)。它们的描述信息也必须具有USB协议定义的标准格式。集线器为USB总线提供扩展和连接;功能设备是具有一定特殊应用功能的设备,它能发送数据到主机,也可以接收来自主机的数据和控制信息。

USB主端口

USB主机是USB系统的核心,在一个USB系统中只有一个主端口主端口的USB接口称为USB控制器,通过它主机和外围USB设备进行通信。在主机中还集成了一个根集线器(Root Hub),用于直接与外设相连或与一般USB Hub级连。

主机所具有的功能包括:

1、检测USB设备的插入和拔出。

2、管理主机与设备之间的数据流。

3、对设备进行必要的控制。

4、收集各种状态信息。

5、对插入的设备供电。

6、ARM内部集成了USB控制器,可以接出USB Host端口,用于系统调试。

USB工作过程

启动主机后,它会查询所有与总线相连的设备,并为每个设备分配一个地址。这个过程称为列举(enumeration)——在将设备连接到总线时,主机也会列举它们。此外,主机还会查出每台设备要执行的数据传输类型。

中断——鼠标或键盘等设备发送的数据非常少,它们会选择中断模式。

批量——打印机等设备接收的数据包含在一个大的数据包中,它们会使用批量传输模式。这种模式会将大块数据发送到打印机(块的大小为64个字节),并对这些数据进行验证,以确保它们的正确性。

同步——流式设备(如扬声器)都使用同步模式。在这种模式下,设备与主机之间的数据是实时传输的,其间没有数据纠正过程。

此外,主机还可以通过控制数据包发送命令或查询参数。

列举设备时,主机会一直跟踪所有同步和中断设备所请求的总带宽情况。如果总带宽为480Mbps,这些设备最多可占用90%的带宽。在用完这部分带宽后,主机就会拒绝访问任何其他同步或中断设备,控制数据包和用于批量传输的数据包将使用剩下的带宽(至少有10%)。

通用串行总线会将可用带宽分成多个帧,而主机则控制着这些帧。每个帧包含1,500个字节的数据,每隔一毫秒就会启动一个新帧。在形成帧的过程中,将为同步和中断设备分配一个槽,以便保证它们得到所需要的带宽。批量和控制传输将使用剩下的空间来传输数据。

几种典型的USB接口结构

A型USB插头(plug)和A型USB插座(receptacle)

引脚顺序(左侧为Plug,右侧为Receptacle):

引脚定义:

封装尺寸(单PIN Receptacle):

B型USB插头(plug)和B型USB插座(receptacle)

引脚顺序(左侧为Plug,右侧为Receptacle,注意箭头所指斜口向上,USB端口朝向自己):

引脚定义、封装尺寸均与A型USB引脚说明相同。

装尺寸(单PIN Receptacle):

Mini B型USB插头(plug)和Mini B型USB插座(receptacle)

引脚顺序(左侧为Plug,右侧为Receptacle,注意宽边在上,USB端口朝向自己):

引脚定义:

封装尺寸(Receptacle):

USB接口技术的不同版本