果壳中的USB理解.doc

上传人:汽*** 文档编号:549123890 上传时间:2023-04-02 格式:DOC 页数:23 大小:390.51KB
返回 下载 相关 举报
果壳中的USB理解.doc_第1页
第1页 / 共23页
果壳中的USB理解.doc_第2页
第2页 / 共23页
果壳中的USB理解.doc_第3页
第3页 / 共23页
果壳中的USB理解.doc_第4页
第4页 / 共23页
果壳中的USB理解.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《果壳中的USB理解.doc》由会员分享,可在线阅读,更多相关《果壳中的USB理解.doc(23页珍藏版)》请在金锄头文库上搜索。

1、果壳中的USBUSB协议的理解刚开始做USB可是非常困难,650页的规模庞大的协议理解起来要相当长的时间。这只是一长串的USB相关协议标准的开始。只有97页的HID接口规范却有详细的设备(键盘,鼠标等)使用介绍。这有像HID接口规范一样的USB协议介绍。如果你正在开发一个USB主机设备,你有三个USB主机控制接口协议供选择,没有一种在USB协议中有详细的介绍。好消息是你不用阅读整个USB协议。一些章节不用仔细去看,USB控制IC也使你更容易的使用USB。让我们建议的来看一下USB协议的各个章节和他们的主要内容。章节章节名概要页码1Introduction包括USB产生的动机和条件。最重要的部分

2、就是列出了各种USB接口的规格。这一章不用看。22Terms and abbreviations这一章对USB协议中用到的一些术语做了解释。83Background指出USB对用户来说是一种简单的即插即用设备(不是对开发者),介绍了USB低速、全速、和高速设备的应用。这一章也不用看。44ArchitecturalOverview这就是你要开始看的地方。这一章就USB系统的拓补、数据传输率、数据流格式、基本电器规格等做了概述。105USB Data Flow Model这一章开始介绍USB数据怎样传输。它包括了端点、管道。然后他用了大部分的章节介绍了各种数据传输格式(控制、中断、同步和流格式)。

3、606Mechanical这一章详细说了两种规格的USB接口。这儿的重要信息就是A型USB接口是用来连接下位机的,而B型USB接口是用来连接上位机的。因此是不可能用电缆将两个上位机连起来的。所有的连接线都应该是高速或全速的,低速的USB线应该被固定在设备上。做USB电缆的话可以浏览一下这一章。7Electrical这一章写了包括了导线阻抗、上升/下降沿时间、接收器/驱动器的规格和位编码、位填充。这一章更重要的部分是数据线上的上拉电阻和传输速度的关系,主机供电电压和设备驱动电压。除非你想设计硅刻工艺的USB设备,要不然你可以快速翻阅这一章。8Protocol Layer现在我们开始进入协议层。这

4、一章描述了USB数据包的控制、PID、地址、端点和CRC包。这些掌握后就可以进入下一个协议层USB数据包了。大多数开发者由于使用了USB芯片而不必关心这一层。然而理解这些状态报告和握手包是有价值的。9USB Device Frame Work这一章是整个USB协议中最常用到的,也使我唯一打印下来的一章。它详细介绍了构成设计者USB协议层最常见的总线枚举和要求法则(设定地址,得到设备描述等)。这一章必需仔细看。10USB Host Hardware and Software这一章写了与主机有关的问题。包括框架和微型构造,主机控制要求,软件机制和通用串行总线驱动程序模型。设计主机,可以看这一章。1

5、1Hub Specification详细写了集线器配置,分裂等集线器规范。想设计集线器可以看这一章。现在我们可以开始看我们需要的部分了。设计USB外设(软件)只需阅读如下章节:* 4 - Architectural Overview* 5 - USB Data Flow Model* 9 - USB Device Frame Work, and* 10 - USB Host Hardware and Software.另外USB外设(硬件)只需看:* 4 - Architectural Overview* 5 - USB Data Flow Model* 6 - Mechanical, and

6、* 7 - Electrical.USB外设设计现在让我们来面对它,大多数人在看了USB协议后仍不知道怎样设计USB设备。所以在下面的7章中,我们把重点放在设计USB设备需要的方面。它将帮助你更好的掌握USB和根据你的应用进一步研究问题。在USB2.0采用高速方式之前,USB1.1已经够复杂的了。为了更好的理解USB的基本原则,我们省略了USB2.0高速设备部分。一旦掌握了USB1.1的使用,USB2.0也会变得十分简单。Universal Serial Bus 介绍 USB1.1支持两种速度模式,全速12Mbits/s和低速1.5Mbits/s。1.5M模式比较慢且不易受到电磁干扰。从而减少

7、了导线和磁环的成本。比如说可以用便宜的谐振方式取代晶体振荡器。USB高速接口已经被装在主流的台式机上。它的480Mbits/s是为了与Firewire Serial Bus(火线)竞争。USB 速度* 高度 - 480Mbits/s* 全速- 12Mbits/s* 低速 - 1.5Mbits/sUSB总线由主机控制。所以总线上只能由一个主机。它不支持多主机方式。USB直连(USB On-The-Go)允许两个USB设备不经USB主机端直接相互通讯。这只限于单一的点对点的连接,如移动电话和个人组织,而不是多个中心或多个桌面配置。USB主机负责所有数据传输的带宽。数据可通过协议规定格式传输。我认为

8、USB的总线拓补是有些限制的。USB接口的本意之一是减少电脑的接口。苹果人(原文为“Apple people”应该是指苹果公司的设计者)说他们的想法来自于Apple Desktop Bus,它把键盘、鼠标和一些其他外设都集成到了一个接口上。USB总线采用分层星型拓补,与10BaseT以太网相似。这使你的桌子上多了很多的导线和集线器。但这对我来说并不坏。很多设备有内置的集线器。比如有的键盘就带了一个集线器,你的鼠标或相机之类的数码设备就可以简单的连到键盘上。显示器也有可能集成了一个集线器。这种星型的连接与菊花式的连接相比有他的好处。首先各个设备的电源可以控制而且可以切断某个电流过大的设备而不影响

9、其他正常工作的设备。集线器可以筛选出高速和全速设备,速度较慢的设备就不会收到,这样高速、全速、低速设备就都可以支持了。USB设备在任何时间都可以连接127个设备。需要连接更多设备?只要增加一个主机端口就可以了。任何USB主机都有两个端点,大多数制造商看到了这个限制开始引进第4第5个来连接硬盘等。早期的主机有只一个USB接口,所有的端点共享一个带宽。随着对带宽要求的增长,我们开始看到有集成两个或更多端口来连接专用设备的控制卡了。USB主机控制器有它自己的规格。再USB1.1中有两种接口控制规格。Intel开发的UHCI(Universal Host Controller Interface)把更

10、多负担压在软件上(Microsoft)从而减轻硬件成本。 Compaq、Microsoft和National Semiconductor开发的OCHI()则把更多负担压在硬上(Intel)而使软件更简单。典型的硬件/软件工程师关系从introduction of USB 2.0我们可以看到USB2.0产生的经过。EHCI (Enhanced Host Controller Interface)的产生,从它的制造者Intel, Compaq, NEC, Lucent 和 Microsoft联合推出一种接口规范我们可以看出将有且只有一种新的接口出现在操作系统上。这只是时间问题。从USB的名字上可以

11、看出这是一种串行总线。他用到了4根屏蔽导线,两根是电源(+5 & GND)。其余两根是差分数据信号双绞线。使用NRZI编码(曼彻斯特编码)发送同步字段来同步主机和接收器时钟。USB支持热插拔,使用者只需简单的把设备连在USB口上。USB设备会检测器件被拔出和添加新增器件并自动加载驱动,在这期间屏幕上会出现一个沙漏来提醒你驱动正在安装。最后使用者不必担心IRQ或端口地址之类的端口信息,也不用重启电脑。当用户不需要时可以直接拔下设备,主机会检测到器件被拔出并自动关闭驱动程序。加载适当的驱动是由PID/VID(Product ID/Vendor ID)实现的。VID是由USB设计者提供的,这被看作是

12、USB的另一个关键点。最新的信息可以在USB官方网站(www.usb.org)上找到。其它组织也为一些非商业活动如教学、科研或个人爱好者提供了另外的VID。一些USB论坛也提供了这项服务。在这种情况下,你可能希望你自己开发的设备也有一个分配好的VID。例如大多数芯片制造商都有一个自己的VID/PID组合。你可以用一个和已知商业产品不同的VID。其它的芯片制造商甚至可能出售给你一个与他们VID相适用的PID,你可以把它用到自己的产品上。USB另一个值得注意的特点是它的传输模式。USB支持Control(控制)、Interrupt(中断)、Bulk(批量)和Isochronous(同步)传输。先来

13、看同步模式,同步模式允许设备收到一个与允许延时的带宽有关的定义。这对于音频或视频中因总线拥挤而可能导致的数据损失或帧下降是理想的应用。这些传输模式使设计者可权衡错误检测和恢复,速率和带宽来做出选择。连接器 所有的设备都有一个向上的接口连接到主机,每一个都有一个向下的接口连接设备。这两种接口不可以互换。从而避免在HUB上接错,譬如把两个向下的接口接在一起。下面是A型与B型两种接口。A型是上位机接口。可以在主机或集线器上看到。比如在电脑主板上。B型是下位机接口,可以在USB设备上看到。有趣的是可以在一些电脑店可以看到A对A的数据线和USB接口充电器转接器。这与USB协议相左。唯一用到A对A接口的是

14、一种连接两台电脑的设备(译者:是设备而不是数据线,光用数据线是不能把两台电脑连起来的数据线是连接移动硬盘的,原作者可能没见到过)。其它不规范的数据线是一头有USB口(A或B),另一头却是其它接口。这些电缆的长度也与USB规范不同。USB 2.0另外有迷你USB口。详见Mini-B Connector Engineering Change Notice。迷你USB接口大概是位像手机这样的微型电子设备设计的。B型USB接口对他们来说太大了,不方便。最经刚刚发布的直连(On-The-Go)协议增加了USB的点对点功能。它包括了在手机和电子设备中集成USB主机,从而规范了迷你A型头、迷你A型口和迷你A

15、B型口。我猜测我们很快就会被迷你USB电缆和转接线淹没。编号颜色作用1红VBUS(5V)2白D-3绿D+4黑Ground表一:USB每个脚作用USB导线的颜色是固定的,方便人们分辨每根导线的作用。该标准规了各种电缆的电气参数。当你仔细看原始的USB1.0协议时会发现一件有趣的是。你会发现它也规定了电气属性。不过在6.3.1.2节中建议导线颜色为灰色(对应2.0的白色)。USB 1.1和USB 2.0放宽了对黑、灰两种颜色的分辨要求。PCB设计者需要参考第六章来确定引脚位置。电气 不设计USB芯片的话可以不用太了解第七章。我们简略的来看一下这部分的基本点。我们已经知道,USB使用的是差分信号。它采用曼彻斯特编码,通过位填充来保证数据的充分过渡。在低速和全速设备中,差分的1

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号