基于嵌入式操作系统的USB设备驱动程序的开发研究
2020-08-04陈潇芮敏华
陈潇 芮敏华
摘要:在嵌入式操作系统中,开发一种支持智能设备与主机之间通过USB设备驱动控制程序,可以满足嵌入式操作系统的控制和通信需求。基于嵌入式操作系统的USB设备驱动程序,能够快速便捷的建立操作系统主机和智能设备之间的连接,保证数据传输的安全稳定。因此,本文主要基于嵌入式操作系统的USB设备驱动程序的开发进行研究,旨在通过对USB设备驱动程序的开发细节和注意点进行详细阐述,为嵌入式操作系统的USB设备驱动程序的开发和验证提供技术保障。
关键词:嵌入式操作系统 USB 设备驱动 程序开发
引言
随着科学技术的不断发展,嵌入式操作系统在航空、电子消费、通信等领域的运用也越来越广泛。借助于嵌入式操作系统具备功能成熟,技术完善等特点,在程序的开发中往往 可以有效的缩短开发周期,从而有效降低成本,也能够保证程序的开发品质。
1 嵌入式操作系统USB设备工作原理
嵌入式操作系统下的USB设备主机的工作原理为利用通用串线来实现电脑与外部智能设备的连接。嵌入式操作系统USB设备能够管理数据流从设备传输到USB设备之间的切换,实现数据的运行、唤醒、复位以及挂断等工作状态。USB设备连接到电脑设备主机,通过USB设备驱动程序的识别,进行相应的工作状态改变,并保证设备的连接。嵌入式操作系统下的USB 设备驱动能够通过机的驱动程序向设备发送中心复位信号,保证设备处于默认状态;同样驱动程序让主机为连接设备分配一个地址,确保主机通过USB了解连接设备的能力,通过设备驱动程序获取相应的描述符,确保主机的驱动能否支持当前的设备数据连接。
2 嵌入式操作系统的实用意义
在USB设备驱动程序的开采中,运用嵌入式操作系统,往往能够实现设备的功能性和可靠性提高以及成本功耗降低的应用价值。嵌入式操作系统主要运用以程序应用为核心,通过计算机技术为设计基础,让计算机软件和硬件能够进行更新换代的专用计算机操作系统。由于嵌入式操作系统往往具备较小的体型,容易携带,在运用上具备一定的专用性,可靠性较高等特点,在工业和信息管理上具备较高的应用价值。同样嵌入式操作系统往往能够实现网络与人机管理交叉的能力,能够实现微控制的便捷性。在USB设备驱动程序的开发中,运用嵌入式操作系统能够确保USB设备具备实用性和低成本生产性,同样也能够克服传统的控制系统能力不足和更新较慢以及控制系统的非实时性的多种缺点。因此在USB驱动程序的开发中运用嵌入式操作系统显得尤为重要。
3 USB设备驱动程序开发
3.1程序构建框架
在嵌入式操作系统的USB设备驱动程序的开发中,需要构建程序框架。程序构建框架需要有主机堆栈、驱动程序和设备驱动程序以及应用软件构成。主机堆栈包括总线驱动程序和主机控制驱动程序以及客户软件构成,客户软件是应用代码,总线驱动程序是保证设备与主机之间的数据传输,控制驱动程序是辅助数据控制状态的转换。
3.2驱动程序的开发设计
在嵌入式操作系统的USB 设备驱动程序开发中,为了实现嵌入式系统的需求多样化和工作稳定安全,可以利用VI5系列芯片来实现数据的采集处理和通信功能确保数据在设备与主机之间高速和实时传输。
在驱动程序的构建框架下,嵌入式操作系统可以利用C语言实现程序编程语言,进而实现设备书籍的初始化和数据传输功能。同样在驱动控制程序的调用中需要不同模块之间的使用。
在驱动程序的各个模块实现中,需要实现设备查找阶段和详细信息获取阶段。设备查找阶段主要完成USB库的打开和设备数量和基本简单信息的获取。详细信息获取阶段根据调用者在设备查找阶段后,选择的设备获取设备的详细信息。其中设备查找阶段提供接口函dev_ num_ get()。在初始化的过程中,首先调用QT的监听函数对USB设备进行检测,调用cyusb_ open()函数获取当前设备数量,初始化库并且构建设备的专用信息结构体。根据所检测到的USB设备数量,依次调用相应的函数获取设备的句柄将所需信息通过接口参数返回给调用程序。详细信息获取阶段主要设置接口函数select_ dev_ info()。分别调用和 获取设备信息和设备配置信息,函数内对设备信息的获取直接调用信息函数和配置函数,将获取的信息存入对应的结构体内,整体的设备初始化过程时序图中。
基于嵌入式操作系统的USB设备驱动程序的读写模块。实现下读写模块分为固件写操作和数据写操作,对固件程序文件和数据文件采用文件操作的方式打开,对打开的过程要进行检查.。用多线程进行数据读写,分别设计发送和接收线程,每进行一次写操作将写入的数据在界面上实时显示,并接收一次返回的数据,根据返回的消息值确认数据是否写入成功。对设备驱动程序返回的错误信息值存入对应控件的字符串,最终在界面上显示,从而确保去对程序得以实现。
3.3 USB设备驱动程序功能实现
在基于嵌入式操作系統的USB设备驱动程序的功能实现中,需要完成USB设备系统的内存分配,确保驱动程序的操作系统能够对USB进行具体的类型注册,通过调用函数进行USB类的结构注册,确保USB 设备注册的结构覆盖名称、状态和接口、配置、函数等相关信息。同样在USB设备的初始化中,需要运用驱动程序来确保USB 设备在嵌入式操作系统下能够进行相应的操作,完成内存的分配和模式的选择以及配置的操作等相关情况。在数据传输中,USB 设备的驱动程序能够实现数据的传输和接受,需求端点能够实现数据的输入输出处理。通过对USB设备驱动程序的详细功能定义,确保USB设备的功能能够在类协议下实现USB设备的所有属性和功能的实现,因此在嵌入式操作系统下的USB 设备驱动呈现能够配置相应的描述符,进而实现USB设备驱动呈现的功能实现。
3.4 USB设备驱动系统测试
在嵌入式操作系统的USB设备驱动程序的系统测试中,需要对USB设备驱动程序靖边县防护测试与修改,确保USB设备的驱动程序能够实现其功能的稳定性。同样在USB设备驱动程序系统的测试中,需要运用CDC-ACM类来实现,确保在嵌入式操作系统下的USB设备驱动程序能够实现与主机的数据传输,确保反复测试下的驱动程序具备稳定性高和安全性强的特点。同样借助于嵌入式操作系统具备功能成熟,技术完善等特点,在USB设备驱动程序的开发中往往可以有效的缩短开发周期,从而有效降低成本,也能够保证驱动程序的开发品质。
4 结束语
由此可见,在嵌入式操作系统的USB 设备驱动程序中,需要对驱动程序的工业控制和访问控制进行创新,确保开发实现下的USB设备驱动程序能够适用于通信网关、和协议转换器等多种类型的应用。确保开发下的USB设备能更快更便捷的反应相关的数据连接和传输,让嵌入式操作系统的USB 设备驱动程序的开发能够具备更高的传输安全性和兼容性,保证驱动程序能够在嵌入式操作系统领域得到广泛应用。
参考文献
[1]段沛沛,赵明.基于嵌入式操作系统的USB设备主机驱动程序的设计[J].福建电脑,2008(11):170-171.
[2]刘科.嵌入式Linux操作系统下EZ-USB设备驱动程序的设计与实现[D].重庆大学,2007.
[3]杨飞,安锦文,李中健.嵌入式操作系统Vx Works下CPCI设备驱动程序开发[J].计算机测量与控制,2007(05):677-679.