嵌入式计算机系统中USB主机驱动探究

时间:2022-09-01 08:23:37

嵌入式计算机系统中USB主机驱动探究

摘 要 目前,95%以上的处理器都不应用在传统的桌面计算机设备上,而是应用在军事设备、消防设备、通讯设备、制造工业等方面。我国的嵌入式USB主机驱动系统的研究还处于起步阶段,只有少量的USB嵌入式USN主机驱动产品问世。因此,进行嵌入式计算机系统中USB主机系统驱动探究具有很大的意义。

关键词 嵌入式 计算机系统 USB主机驱动

中图分类号:TP368 文献标识码:A

嵌入式计算机系统中的USB主机驱动在国内外都具有相当广泛的应用,并且为许多的半导体公司提供了USB主机接口芯片,例如ScanLogic、Philips等公司,市场上也逐渐的出现了具有部分功能的嵌入式USB主机驱动产品。

1 BSP与VxWorks操作系统结构组成

在BPS中的外部设备包括:USB设备与USB主机,通常在VxWork操作系统中的作用是进行设备文件的管理。BSP是所有硬件平台的软件接口,其中包含了内存分配、局域与总线内存地址映射、硬件始终与计时器管理、中断的产生与处理、硬件的初始化等,并且采用了VxWorks的分层设计方法,将系统当中与硬件设备相连的平立分出形成板级支持包。

VxWorks操作系统的主要结构包括:设备管理、文件管理、运行接口、对人物调度内核、网络扩等几个部分,其主要通过管道、计数器信号量、二进制信号量等方便各个任务间进行灵活的通信,致使其具有支持众多的硬性平台心、商用性、互操作性以及可裁减性等方面的优点。

2 USB主机驱动结构

USB通常由主机控制器(Host)、功能设备以及集线器(Hub)三部分组成。主机控制器主要通过状态处理、串行化与反串行化、帧产生、数据处理、协议引擎、传输差错控制、远程唤醒、根集线器、主机系统接口等几方面进行功能的实现,并且通过向USB设备发出相应的数据与控制指令实现USB设备之间的数据交流;功能部件是通过总线进行接收、发送、控制信息的USB设备,是由一根电缆连接咋接线器上某个端口上的独立部件,并且每个功能部件都能够清楚的表述该设备的所有资源与性能的设置信息;集线器是一种简化了的USB互连的设备,由集线控制器与集线再生器两个部分组成,集线再生气是恢复畸变信号、放大衰减信号的器件,再通过集线控制器的所有接口寄存器,主机对集线器的控制命令与状态参数进行设置,并控制与监视其他端口,实现唤醒、挂起、复位等功能。

3 USB主机驱动在嵌入式计算机系统中的应用

在Inteplc计算机系统中的Vxworks主板系统中,USB主机趋同具有包括:USB核心驱动层、硬件层、应用层、控制器驱动程序层以及设备驱动层这五大模块。从控制驱动系统方面,一般包含两部分:HCE核心功能模块与HCD接口模块,OpenHCI规范与UHCI规范的编写,是建立在HCD核心功能模块实施Contrller驱动的基础上的。从硬件方面,断控制器、时钟定时器以及USB主机控制器等特定的USB功能统统组成嵌入式计算机的主要硬件。利用输入参数的针对性识别,USB主机控制器与HCD核心功能模块的相互协作,通过不同功能的代码,将特定的入口函数提供给上级模块,以此实现USB主机寄存器与控制器的初始化、主机驱动程序与参数设置的初始化,并实现HCD的相应功能。

在USB核心的驱动下运行USB核心功能模块,由于在USB核心驱动层中,所有的操作都是由SBD接口模块与USBD核心功能模块共同执行实现的,因此USB驱动代码是不能够影响系统硬件平台的运行的。同时为了保证USB总线枚举、总线带宽分配、传输控制等功能,以及USBD核心功能模块的HCD接口模块能够进行彼此之间的通信,应该将HCD接口模块进行向下调用。虽然HCD核心功能每款只受到HCD接口模块的调用,但是其功能却是通过上层模块中调用所有的功能函数在USBD平台上实现的,也就是说,HCD接口模块利用上层模块封装的HCD驱动智能受到USBD核心功能模块的调用。

从USB主机驱动的设备驱动方面,在设备驱动平台,通过对USB细节进行评比处理,再利用相应的API函数,通过USBD驱动城区的调动以及应用程序的转化需求,实现USB设备定目标的初始化。在USB驱动程序中,实现USB主机驱动议栈应用层中的测试程序、设备驱动程序、USB主机驱动程序以及相应的功能程序等,应该对USB设备的总线枚举予以一定的关注,USB设备总线的枚举过程有:(1)将下游端口与USB设备集线器进行连接后,如果主机能够收到USB设备集线器发出的信号,就说明USB设备已经连接成功;(2)当新设备与主机连接完成后,就能接受有端口传达的复位命令,通过相应的指令将USB设备连接的端口打开;(3)主机通过接受集线器发出的指令,对系统状态的改变进行询问,如果USB设备处于默认的状态,将此地址确定为0,并将USB设备中的寄存器与全部状态复位;(4)主机通过对相应的USB设备进行地址的分配,并且USB设备能够影响与操作默认的地址,由主机读取全部的符合USB设备描述的设备;(5)主机通过对USB设备中的信息使用情况进行分析,对USB设备中的地址信息进行调控,然后配备给USB设备相应的数值,向USB设备发送由计算机发送的相应的Set-Configuration控制指令,当USB成功的接收指令后,设备就处于准备就绪的状态。

4 结束语

嵌入式计算机中的USB主机驱动程序实现了通用串行总线具有热插拔、数据传输速度快、成本低、即插即用等方面的优点,致使嵌入式设备在计算机系统中的应用数量已经远远的超过了各种通用计算机。

参考文献

[1] 韩雪梅,宋智辉.嵌入式计算机系统中USB主机驱动分析[J].硅谷,2013(21).

[2] 林宝如,张帆,陈怡.嵌入式计算机系统的USB主机驱动分析[J].重庆大学学报(自然科学版),2008(3).

上一篇:探讨变电运行中事故诊断分析与处理措施 下一篇:工作―家庭冲突研究的新视角:溢出―交叉传递模...