- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
05-USB驱动程序开发
USB驱动程序开发 日程 Linux内核对USB规范的支持 USB主机驱动结构 USB数据传输时序 USB设备连接/断开时序 主要数据结构及接口函数 数据传输管道 统一的USB数据传输块 USB总线简介 一、 USB的定义 USB是Universal Serial Bus的缩写,中文意思就是“通用串行总线”, 是连接有USB接口的计算机外围设备到计算机的一种计算机外部总线结构 二、 USB的开发背景 制定了USB的规范: 1.连接PC 与电话。 2.Plug-and-Play (即插即用)。 3.端口扩展。USB提供双向低成本低速到中速(USB 2.0 可达480Mb/s)的通用外设总线适用于连接各种各样的外设并且易于扩展。 三、 USB的变革 至目前为止,USB共经历以下几次重大变革:0.7版本 于1994年11月11日发布。是USB的最早版本。1.0版本 于1995年11月13日制定发布了,规定USB具有2种传输速度 Low-speed 1.5Mb/s, Full-speed 12Mb/s。1.1版本 于1998年9月23日制定了1.1规格版本,速度不变。2.0 (草案)版本 于1999年10月5日发布。制定了High-speed的概念,规格 。2.0版本 于2000年4月27日发布。 四.USB系统拓扑结构 五. USB的特点 1.USB为所有的USB外设提供了单一的、易于操作的标准的连接类型。 2.USB整个的系统只有一个端口; 3.USB支持热插拔(hot plug); 4.USB支持PNP; 5.USB在设备供电方面提供了灵活性; 6.USB提供全速12Mbps的速率和低速1.5Mbps的速率来适应各种不同类型的外设;USB2.0 还支持480Mbps 的高速传输速率; 7.USB2.0的High-speed模式支持音频和视频设备,可以保证其固定带宽; 8.为了适应各种不同类型外围设备的要求USB 提供了四种不同的数据传输类型:控制传输,Bulk数据传输,中断数据传输,同步数据传输。同步数据传输可为音频和视频等实时设备的实时数据传输提供固定带宽。 9.USB 的端口具有很灵活的扩展性。一个USB 端口串接上一个USB Hub 就可以扩展为多个USB端口。规范中说,USB可以扩展到127个外设端口。 六、 USB工作原理 1、NRZI编码 2、分组传送 USB技术和IP技术一样,都是基于分组传送方式的。对USB总线来讲,当要传送一个文件时,程序按照USB协议,首先把数据分成若干块,然后在每块数据前面添上同步信号、包标识,后面添上CRC校验,就形成了USB封包。一个文件可能可能有多个封包。全速USB总线把1毫秒作为一个时间帧,总线在一个帧内依次传送不同文件的封包。因此从宏观上,就仿佛总线同时对不同的USB外设进行数据传送。 3、USB封包根据信息包所实现的功能可分为3种类型:令牌包、数据包和握手包。令牌包定义了数据传送的类型。比如图所示。 七、USB传输方式 1、USB的四种传输方式 (1)同步(isochronous)方式传输 同步传输提供了确定的带宽和间隔时间,以固定的传输速率,连续不断地在主机与USB 设备之间传输数据,在传送数据发生错误时,USB并不处理这些错误,而是继续传送新的数据,它被用于时间严格并具有较强容错性的流数据传输或者用于要求恒定的数据传输率的即时应用中。 (2)中断传输方式(Interrupt) 该方式传送的数据量很小,但这些数据需要及时处理,以达到实时效果。此方式主要用于定时查询设备是否有中断数据要传输。 (3)控制传输方式(Control) 控制传输是双向传输,数据量通常较小,用来处理主机到USB设备的数据传输。包括设备控制指令、设备状态查询及确认命令。 (4)批(Bulk)传输方式 主要应用在数据大量传输和接受数据上,同时又没有带宽和间隔时间要求的情况下,要求保证传输正确无误的数据。 2、USB设备类型 八、USB设备列举 在USB规范中有一个非常重要的“动作”或“过程”。这个动作将会让PC机知道何种USB设备刚接上以及其所含的各种信息。这样,PC机就可以与这个USB设备开始进行数据传输的工作了。这个动作称之为设备列举(enumeration)。 1、USB描述符 在设备列举过程中,USB设备向主机传送了一个重要的信息,使主机知道了这个设备是“谁”,并启动了该设备的驱动程序。这个信息就是USB描述符 2、设备列举 设备列举包含两方面的功能,一是主机搜集USB设备的信息,也就是USB描述符。另一个是主机根据USB描述符对设备进行配置,比如USB设备地址设置,USB设备各端点数据传
文档评论(0)