嵌入式计算机系统中usb主机驱动研究

嵌入式计算机系统中usb主机驱动研究

ID:6079484

大小:27.50 KB

页数:5页

时间:2018-01-02

嵌入式计算机系统中usb主机驱动研究_第1页
嵌入式计算机系统中usb主机驱动研究_第2页
嵌入式计算机系统中usb主机驱动研究_第3页
嵌入式计算机系统中usb主机驱动研究_第4页
嵌入式计算机系统中usb主机驱动研究_第5页
资源描述:

《嵌入式计算机系统中usb主机驱动研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、嵌入式计算机系统中USB主机驱动研究  摘要通过对VxWorks操作系统的体系、嵌入式2.0标准的通用串行总线、USB主机协议栈等进行分析,说明VxWorks操作系统中USB主机协议栈各层间的关系及USB驱动程序结构的特点,从而阐明基于嵌入式计算机中USB主机驱动程序的可行性。关键词VxWorks操作系统;嵌入式系统;驱动程序;USB中图分类号:TP368文献标识码:A文章编号:1671-7597(2013)21-0039-01目前,2.0标准的通用串行总线作为一种集即插即用、具有热插拔、数据传输、速度快、

2、低成本等优点为一体的计算机外围串行通信接口被广泛地应用于嵌入式系统设计中。一般而言,PC计算机里的USB接口包括:主设备、USB集线器。由于在PC计算机中USB需要经过PCI总线,但一般嵌入式计算机没有PCI总线。本文通过对Intel主板的板级支持包下嵌入式VxWorks操作系统的USB主机驱动协议栈进行分析,揭示USB在嵌入式计算机系统的应用可行性。1VxWorks操作系统体系结构5VxWorks操作系统具可裁减性、商用性、互操作性等特性,还能支持众多的硬件平台心。它主要通过二进制信号量、计数器信号量、管

3、道等使任务间灵活通信。VxWorks操作系统的结构:多任务调度内核(优先级中断驱动)、文件管理、网络扩、设备管理、运行接口(能兼容POSIX协议)。2USB主机结构介绍USB系统使用的是级联星型拓扑模型,这一模型主要涉及下述几个部分,即功能设备、集线器和主机。USB系统主机通常也可叫做根,通常属于一种计算机上锁安装的适配卡。根集线器和主控制器是主机的两个主要构成部分,主机能够对USB总线上的信息流动和数据进行有效控制。同时,所有的USB系统均与其独立的根集线器相互配合,且与主控制器相互连接。但是,集线器可以

4、利用端口的点实现USB总线与设备之间的相互连通。在对总线上设备连接情况进行检测的同时,还能够作为设备的主要电源来源,并排除和检测总线中存在的故障现象。如果需要在嵌入式系统中使用USB总线,则还应通过USB类别驱动程序、USB主机协议栈、USBHost控制器等设备。其主要原因在于,USB总线一方面属于通信协议的一种,另一方面,也作为主机与设备相互连接的主要外部总线结构。3USB主机驱动在嵌入式计算机系统中的应用5在以Intelpc计算机为基础的Vxworks主板系统中,通常利用USB主机驱动协议栈5大模块作为

5、运行的基础。上述的5大模块包括:应用层、设备驱动层、USB核心驱动层、控制器驱动程序层和硬件层。由硬件层面来看,USB主机控制器、时钟定时器、断控制器等是特定的USB功能得以实现的主要硬件构成。由控制器驱动程序层面来看,通常涉及HCD接口模块和HCD核心功能模块两部分。利用HCD核心功能模块实施Controller驱动,在此基础上根据UHCI规范和OpenHCI规范编写。HCD核心功能模块能够实现与USB主机控制器的交互操作,并实现参数设置、主机驱动程序初始化以及USB主机寄存器和控制器初始化等功能。利用输

6、入参数的针对性识别,能够通过功能不同的代码,为上级模块提供相应的入口函数,利用这一方法,能够实现HCD的相应功能。虽然HCD核心功能模块只能够接受HCD接口模块的调用,但HCD接口模块的功能主要是通过USBD层接口得到实现的,并且能够从上层模块中调用所有的功能函数。HCD接口模块仅仅能够受到USBD核心功能模块的凋用,利用上层模块封装的HCD驱动进行工作。5在USB核心驱动层中,其相关操作都是通过USBD核心功能模块与SBD接口模块实现的。USBD核心功能模块在USB核心的驱动下运行,但USB驱动代码并不能

7、影响到系统硬件平台。为了保证实现传输控制、总线带宽分配、USB总线枚举等功能的良好实现,USBD核心功能模块能够进行HCD接口模块的向下调用,并进行与HCD层之间的通信。USBD功能能够利用充分调用各类输入参数以及为向上层模块提供入口函数,进而实现相应的功能代码。由USB主机驱动协议栈的设备驱动层来看,实现USB设备中特定初始化目标是前提,然后将上层永华的应用程序需求转化,实现USBD驱动程序的调用。在设备驱动层中,利用相应的API函数,对USB细节进行屏蔽处理。然后,实现USB主机驱动协议栈应用层的USB

8、主机驱动程序、设备驱动程序、测试程序以及应用程序等功能。在USB驱动程序中,应对USB设备的总线枚举加以关注。USB设备总线的枚举过程通常包括下述几个基本步骤。1)在下游端口接入与USB设备集线器相互连接后,如果主机收到USB设备集线器的信息(此信息通过“状态改变管道”传递),则表明USB设备已完成连接。2)主机利用集线器发生命令,并对状态改变的确切含义进行询问。3)新设备与主机实现相互连接后,能够获得相关信息,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。