电气专业+适宜人群(学习USB硬软件开发)+计算机USB系统原理及其主从机设计
书名:计算机USB系统原理及其主从机设计作者:马伟
出版社:北京:北京航空航天大学出版社
出版日期:2004
推荐理由:对于学习USB技术由浅入深用较为通俗易懂的语言进行了阐述,是学习USB硬软件开发的一本首选书,本人正在逐渐学习,也从中学习了不少USB开发的知识,前面也看过一些其他的书,都感觉看不懂,但是这本书却能让人一章一节的进行细读,个人感觉不错,推荐给学习USB硬软件开发的朋友们。
以下是我的学习笔记,献给需要的朋友:
USB学习一
接口层涉及的是具体的物理层,其主要实现物理信号和数据包的交互,也就是在主机端的USB主控制器和设备端的USB总线接口之问传输实际的数据流。
设备层主要提供USB基本的协议栈;执行通用的USB的各种操作和请求命令,从逻辑巳讲,就是USB系统软件与USB逻辑设备之问的数据交换。
功能层提供每个USB设备所需的特定的功能;主机端的这个功能由用户软件和设备类驱动程序提供,而设备端就由功能单元来实现,它们之间的这种联系看作是逻辑上的数据流。
USB硬件
USB主控制器/根Hub
USB Hub
USB设备(包括USB协议栈固件)
USB软件(基于PC)
USB核心驱动程序
用户软件和USB设备类驱动程序
USB控制器驱动程序
上行方向:
而从设备到主机、从HUb到主机或从设备到HUb则是从下而上的方向,这里定义为上行方向。
下行方向:
比如从主机到设备、从主机到HUL或从HUb到设备就是从上而下的方向,并且定义为下行方向。
插座类型:
A型插头位于USB电缆的一端。从方向上来说,它上行指向并连接到主机系统.来自于USB设备。A型插座位于USB主机或者是USB Hub上,用于为下层的役备提供连接点。由此,可以得出这样一个简单的结论:如果一个USB的硬件系统只带有A型USB插座那么它肯定是USB主机;而USB主机和USB Hub则也肯定带有A型插座。A型插座是USB主机或USB Hub提供给下层设备的接口。
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image001.gif file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image004.gif
A型插头 A型插座
B型插头位子USB电缆的另一端。与A型插头相反,从方向上来说,B型插头指向并连接到下层设备,来自于主机或USB Hub。B型插座位于USB设备或HUb上。由此,可以得出这样一个结论:如果一个USB的硬件系统只带有B型插座,那么它肯定是USB设备;而USB设备和Hub则一定带有B型插座。
此外.在USB协议2.0的补充版本On-The-Go协议申.又定义了一种Mini型接插件,
用在~些特殊的场合。
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image002.gif file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image005.gif
B型插头 B型插座
插座的PCB封装尺寸
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image003.gif
A型插座尺寸 B型插座尺寸
详情可参见USb协议白皮书
USB电缆
VBus:红色,编号1
D-:白色,编号2
D+:绿色,编号3
GND:黑色,编号4
全速时,D+和D-需采用带屏蔽和双绞的电缆线
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image006.gif
全速电缆
USB供电模式
(1)自供电(Self-Powered)
是指该USB设备或Hub能够自己提供电源,而无需从VBus上提取电流,这样做的好处是该设备在工作时功率不必受USB协议的限制,可以根据自身电源的能力任意提取电流;但局限性也是显而易见的,该设备必须带有额外的电源设备,增加了体积和成本。
(2)总线供电(Bus-Powered)
总线供电模式则为耗电量小的设备提供了一种方便的连接方式,能够完全从USB总线的VBus上获得
所需的电流,但是这样的设备运行时所耗的功率受到USB协议的限制,不能无限制地从总线上取得电流。
可提供最小100mA,最大500mA电流
特别注意:USB硬件开发人员在设计USB硬件电咯的电源线路时孟要十分小心,无论是总线供电还是自供电的USB设备或HUb,都只能从VBus上获得电流,而不能向VBus提供电流,尤其是自供电的设备,更不能把自供电的电源线路连接到VBus上。
USB Hub
集线器(Hub)是USB即插即用技求中关键的一环。它提供了USB的连接端口(Port)。顾名思义,Hub就是能将多个连接线集中在一起的设备。一个Hub能将一个USB的连接点转化为多个连接点,使得多个设备能同时连接到惟一的USB总线上进行通信。当然,USB的体系也允许多个Hub之间进行互连。
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image007.gif
根据端口在USB总线拓扑体系中的位量和功能的不同,可以将其分为上行端口(Upstream Port)和下行端口(Downstream Port)。上行端口用于连接上一级的Hub或是根HUb,而下行端口则用于连接下级HUb或者USB设备。利用USB电缆上的电平变化,USB Hub可以检测下行端口上USB设备的接人或者移出,同时可以确定设备的速度类型,如低速或者是全速没备。
低功耗的实现
USB的供电分为2种模式。同样,USB供电的工作状态也被分为2种:即正常工作(Normal)状态和挂起(Suspend)状态。
如果总线供电设备在3ms内没有总线操作,即USB总线处于空闲状态的活,该设备就需要自动进入挂起状态。这时从总线上提取的电流必须小于500uA。实际上500uA的电流中包括Hub和主机端15kΩ的终端匹配电阻的电流,这个值通常为220uA。因此,对于总线供电的设备而言,在进入挂起状态后,总的电流功耗不超过280uA。由此可见,这个设备的功耗是非常低的。这便是USB低功耗的一个非常重要的特点。
在设备进人挂起状态后,可以通过唤醒(Resume)操作来恢复到正常工作状态。唤醒操作既可以由主机发送唤醒或复位信号来触发,也可以由设备自行通过远程唤醒来实现。处于挂起状态的设备通过发送信号给主机,使得主机恢复处理其USB事务。这种远程唤醒方式是所有USB事务中,惟一能够由设备发起的事务.
即插即用技术
即插即用技术包含2个技术层面,即热插拔和自动识别配量。
热插拔的关键技术在于电路接插件杨、拔期间强电流的处理。USB在电缆以及接插件的设计上充分考虑了这一点,使得这个瞬时的强电流被安全地吸收,从而使USB设备实现了热插拔。
即插即用另一个关键技术层面就是系统设备的自动识别。也就是说,主机系统在役有人工干预的情况下,能够自动检测到设备的接入并能自动配置该设备,也能够自动检测到设备的拔出,从而释放系统资源。USB主要是通过在信号线上的一些特殊处理来实现这一技术。掌握这部分内容,对于正确地设计USB硬件系统是非常重要的。
在USB的4线电缆中传输信号的是D十和D一这一对差模信号线,该线上使用的是十3.3V的电平,而VBus是+5V。下图演示了USB设备与主机(或Hub)的电气连接图。
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image008.gif
从图中可见,由于D+和D-接有下拉电R1,所以当端口未连接任何USB设备时,D+和D-均恒为0
此外,对于低速设备D-上连接有一个上拉电阻R2,对于全速设备,D+上接有一个上接电阻R2,这是USB主机识别设备速度的一个重要指标。
全速设备和低速设备的接入与断开检测
全速与低速的主要区别在于D+和D-的电平不同
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image009.gif 发完才发现,图都看不到了,下面是word版的文档
为防止外部搜索,加密1威
**** Hidden Message ***** 最好是能把图再上传一遍,这样就更完美了。 有电子档的书就好了! xie xie,xue xie 谢谢!
正在做USB项目,参考一下。 威望不夠, 怎么弄?? 威望不夠
it's a pity 看不到图,也没有附件。
页:
[1]