1 / 7
文档名称:

嵌入式linux.doc

格式:doc   大小:520KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

嵌入式linux.doc

上传人:文库旗舰店 2020/10/27 文件大小:520 KB

下载得到文件列表

嵌入式linux.doc

相关文档

文档介绍

文档介绍:嵌入式Linux中USB设备驱动程序摘要:本文主要介绍了Linux平台的USB设备驱动开发的一般步骤方法和技巧,通过详细介绍USB的相关概念和Linux中USB设备驱动程序的数据结构,框架和步骤,并通过设计和实现一个驱动的实例,总结了USB驱动的一般方法和技巧。随着计算机外围硬件的扩展,各种外围设备使用不同的总线接口,导致计算机外部各种总线繁多,管理困难,USB总线可以解决这些问题,因此而诞生。USB总线提供统一的外设的接口方式,并且支持热插拔,方便了厂商开发设备和用户使用设备。USB(通用串行总线)pad,Inter和NEC等推出的外围总线接口,,最多可以支持127个外设。嵌入式Linux是一款源代码完全免费的新兴操作系统,用户可以用户可以通过网络等其他途径免费获得,并可以任意修改其源代码,这是其他的操作系统做不到的。正是由于这一点,Linux得到了广泛的应用。 1Linux中USB设备驱动程序框架及数据结构 USB接口标准支持外部设备和主机之间进行数据传送。在USB结构中主机顶设各种类型外设使用的总线宽度。当外设和主机在运行时,USB总线允许使用,设置,添加和拆除外设。在USB体系结构中一个USB系统可以分成USB设备、USB主机和USB互联3个部分。USB互联是USB设备和USB主机之间进行连接通信的操作,主要包括: 1)总线拓扑结构:UsB主机和USB设备之间的连接方式; 2)数据流模式:描述USB通信系统数据如何从产生方传递到使用方; 3)USB调度:USB总线是一个共享连接,对可以使用的连按进行调度以支持同步数据传输,并避免优先级判断的开销。 USB的物理连接是有层次的星型结构,如图1所示。图1USB体系拓扑结构图从图中可以看出USB集线器在一个节点上连接多个设备,每条线段都是点点连接,每个USB集线器在星形的中心。从主机到设备或者USB集线器,或USB集线器到设备都是点点连接。 USN总线在技术层面上是非常简单的,它是一个单主方式实现的,主机轮询各种不同的外围设备,USB另外一个重要的特性是它只担当设备和主控制器之间通讯通道的角色,对所发送的数据没有任何特殊的内容和结构上的要求。 Linux支持两种类型的USB驱动,宿主系统上的驱动程序和设备上的驱动程序。宿主USB驱动程序控制插入其中的USB设备,而USB设备的驱动程序控制设备如何作为一个USB设备和主机通讯。这里主要讨论设备驱动。 USB的基本通信的形式基本通过端点的东西。USB端点只能往一个方向传输数据,从主机到设备或从设备到主机。USB端点分别具有不同的传输数据的方式,他们有4种类型,分别是:1)控制端点用来控制对USB设备不同部分的访问。他们用于配置设备,获取设备信息,获取设备的状态报告,发送命令到设备。它是一种非周期性的可靠的传输。2)中断端点就是设备传输数据时以一个固定的速率来传输少量的数据。这些端点是鼠标和USB键盘所使用的主要传输方式。它通常用于发送数据到USB设备以控制设备,一般不用来传输大量数据。USB协议保证这些传输有足够的保留带宽来传输数据。3)等时端点同样可以传输大批量的数据,但数据是否到达没有保障,这些端点用于可以应付数据丢失的情况,这类设备更注重于保持一定