毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

USB通信程序开发+程序实现与调试 第3页

更新时间:2012-2-26:  来源:毕业论文
USB设备包括HUB和功能设备,而功能设备又可以细分为定位设备、字符设备等等。为了进一步叙述,这里给出端点(endpoint)和管道(pipe)的概念。
端点:每一个USB设备在主机看来就是一个端点的集合,主机只能通过端点与设备进行通讯,以使用设备的功能。每一个端点实际上就是一个一定大小的数据缓冲区,这些端点在设备出厂时就已经定义好了。在USB系统中,每一个端点都有唯一的地址,这是由设备地址和端点号给出的。每个端点都有一定的特性。其中包括:传输方式、总线访问频率、带宽、端点号、数据包的最大容量等等。除端点0外,其它端点必须在设备配置后才能生效。
  端点0通常为控制端点,用于设备初始化参数等,端点1、2等一般用作数据端点,存放主机与设备间往来的数据。
  管道:一个USB管道是驱动程序的一个数据缓冲区与一个外设端点的连接,它代表了一种在两者之间移动数据的能力。一旦设备被配置,管道就存在了。管道由两种类型,数据流管道(其中的数据没有USB定义的结构)与消息管道(其中的数据必须由USB定义的结构)。管道只是一个逻辑上的概念。
  所有的设备必须支持端点0以作为设备的控制管道。通过控制管道可以获取完全描述USB设备的信息,包括:设备类型、电源管理、配置、端点描述等等。只要设备连接到USB上并上电,端点0就可以被访问,与之对应的控制管道就存在了。
一个USB设备可以分为三个层。最底层是总线接口,用来发送与接收包。中间层处理总线接口与不同的端点之间的数据流通。一个端点是数据最终的使用者或提供者,它可以看作是数据源或是数据接收端。最上层就是USB设备所提供的功能,比如鼠标或键盘等。
 
图2.2 USB设备层次结构本文来自辣.文~论^文·网原文请找腾讯324,9114
2.2.1 USB HUB
HUB在USB结构中是一个关键,它提供了附加的USB节点,这些节点被称为端口。HUB可以检测出每一个下行端口的状态,并且可以给下端的设备提供电源。从下图描述了一个典型的HUB结构。
2.2.2 即插即用
  USB设备可以即插即用,但在可以使用之前,必须对设备进行配置。一旦设备连接到某个USB的节点上,USB就会产生一系列的操作,来完成对设备的配置,这种操作被称为总线枚举过程:
1. 设备所连接的HUB检测出端口上由设备连接,通过状态变化管道向主机报告;
2. 主机通过询问HUB以获得确切的信息;
3. 主机这时知道设备连接到那个端口上,于是向这个端口发出复位命令;
4. HUB发出的复位信号结束后,端口被打开,HUB向设备提供100mA的电源,这时设备上电,所有的寄存器复位,并且以缺省地址0以及端点0响应命令;
5. 主机通过缺省地址与端点0进行通讯,赋予设备一个唯一的地址,并且读取设备的配置信息;
6. 最后主机对设备进行配置,该设备就可以使用了。
当该设备被移走时,HUB依然要报告主机,并且关闭端口。一旦主机接收到设备移走的报告,就会改写当前结构信息。
2.2.3 设备电源
  USB设备的电源可以由USB总线供给,也可以自备电源。一个USB设备可以具有这两种供电方式,但同一时刻只能由一种方式供电。这两种供电方式是可以切换的。
2.2.4 设备的挂起
为了节电,当设备在指定的时间内没有总线传输,USB设备自动进入挂起状态。如果设备所接的HUB的端口被禁止了,设备也将进入挂起状态(称之为选择挂起)。当然主机也可以进入挂起状态。
  USB设备当总线活动时,就会离开挂起状态。一个设备也可以通过电信号来远程唤醒进入挂起状态的主机。这个能力是可选的,如果一个设备具有这个能力,主机有能力禁止或允许使用这种能力。

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页

USB通信程序开发+程序实现与调试 第3页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。