1、USB协议和 CH375B简介USB 体系简介 USB 是一种支持热插拔的高速串行传输总线,它使用差分信号来传输数据,最高速度可达 480Mb/S。 USB 支持 “总线供电 ”和 “自供电 ”两种供电模式。在总线供电模式下, 设备最多可以获得 500mA 的电流。 USB2.0 被设计成为向下兼容的模式,当有全速( USB 1.1) 或者低速( USB 1.0)设备连接到高速( USB 2.0)主机时,主机可以通过分离传输来支持它们。一条 USB 总线上,可达到的最高传输速度等级由该总线上最慢的 “设备 ”决定,该设备包括主机、 HUB 以及 USB 功能设备。 USB 体系包括 “主机 ”
2、、 “设备 ”以及 “物理连接 ”三个部分。其中主机是一个提供 USB 接口及接口管理能力的硬件、软件及固件的复合体,可以是 PC,也可以是 OTG 设备,一个 USB 系统中仅有一个 USB 主机;设备包括 USB 功能设备和 USB HUB,最多支持 127 个设备;物理连接即指的是USB 的传输线。在 USB 2.0 系统中,要求使用屏蔽的双绞线。 OTG 简介OTG全称是一键拷贝( USB On-The-Go)LOOK的商标,它采用 USB2.O的传输接口, OTG( USB On-The-Go)是 2001年公布传输协议,让两个 USB设备可以不需要用电脑作为 HOST,也可以点对点
3、的进行数据的传输。USB OTG: USB 的 OTG 规格 ( USB On-The-Go)是指 : USB 的 OTG 规格是 USB2.0 规格的补充。 USB 使用客服结构。 USB OTG 产品能够相互进行通讯,而无需连接到 PC 机上。因此可把一个 USB 设备可作为一个主机,而其他的则可作为终端。只有 USB 主机可以包含设备驱动器和数据传输的一些必要的操控。例如,一个数码摄像机可以连接一个 PDA,或是手机可以连接到打印机或扫描仪中,其只要这些所有的设备可与 USB OTG 兼容。当作为家庭网路中的 PC 为中心的时代已远离,通过使用便携式设备进行相互交流的需求日益增加, US
4、B OTG 产品便应运而生。 HUB 简介 HUB是一个多端口的转发器,当以 HUB为中心设备时,网络中某条线路产生了故障,并不影响其它线路的工作。 USB HUB 提供了一种低成本、低复杂度的USB 接口扩展方法。 HUB 的上行 PORT 面向 HOST,下行 PORT 面向设备( HUB 或功能设备)。在下行 PORT 上, HUB 提供了设备连接检测和设备移除检测的能力,并给各下行 PORT 供电。 HUB 可以单独使能各下行 PORT,不同 PORT 可以工作在不同的速度等级(高速 /全速 /低速)。 USB数据传输方式 USB 采用轮询的广播机制传输数据,所有的传输都由主机发起,任
5、何时刻整个 USB体系内仅允许一个数据包的传输,即不同物理传输线上看到的数据包都是同一被广播的数据包。 USB 采用 “令牌包 ”-“数据包 ”-“握手包 ”的传输机制,在令牌包中指定数据包去向或者来源的设备地址和端点( Endpoint),从而保证了只有一个设备对被广播的数据包 /令牌包作出响应, “握手包 ”表示了传输的成功与否。 管道( Pipe)是主机和设备端点之间数据传输的模型,共有两种类型的管道:无格式的流管道(Stream Pipe)和有格式的信息管道( Message Pipe)。任何 USB 设备一旦上电就存在一个信息管道,即默认的控制管道, USB 主机通过该管道来获取设备
6、的描述、配置、状态,并对设备进行配置。 USB 设备连接到 HOST 时, HOST 必须通过默认的控制管道对其进行枚举,完成获得其设备描述、进行地址分配、获得其配置描述、进行配置等操作方可正常使用。 USB 设备的即插即用特性即依赖于此。 枚举是 USB 体系中一个很重要的活动,由一系列标准请求组成(若设备属于某个子类,还包含该子类定义的特殊请求)。通过枚举 HOST 可以获得设备的基本描述信息,如支持的 USB 版本、 PID、 VID、设备分类( Class)、供电方式、最大消耗电流、配置数量、各种类型端点的数量及传输能力(最大包长度)。 HOST 根据 PID 和 VID 加载设备驱动
7、程序,并对设备进行合适的配置。只有经过枚举的设备才能正常使用。对于总线供电设备,在枚举完成前最多可从总线获取 100mA 的电流。 PID和 VID简介 vendor ID 厂家 ID和 product ID。 VID是要申请的(当然你也可以随便写), PID是厂家自己定义的 USB体系的传输类型 USB 体系定义了四种类型的传输: 1、控制传输,主要用于在设备连接时对设备进行枚举以及其他因设备而已的特定操作。 2、中断传输,用于对延迟要求严格、小量数据的可靠传输,如键盘、游戏手柄等。 3、批量传输,用于对延迟要求宽松,大量数据的可靠传输,如 U 盘等。 4、同步传输,用于对可靠性要求不高的实时数据传输,如摄像头、 USB 音响等。USB 数据流模型