一种usb设备自动初始化的方法及装置的制作方法

文档序号:6558827阅读:328来源:国知局
专利名称:一种usb设备自动初始化的方法及装置的制作方法
技术领域
本发明涉及一种对USB设备进行初始化的方法及装置,具体地说是一种对USB设备进行自动初始化的方法和装置。
背景技术
USB是英文Universal Serial Bus的缩写,中文含义是“通用串行总线”,它是一种应用在计算机领域的接口技术。近几年,随着大量支持USB接口的计算机的普及,USB技术已经走入实用阶段,使用USB接口的设备也与日俱增,例如数码相机、扫描仪、游戏杆、键盘、鼠标、打印机、存储设备、图像设备等,另外还有USB技术和智能卡技术相结合的产物——USB令牌。
这些USB设备在出厂或销售前都要经过一定的初始化,写入一定的数据和信息,操作系统才能够识别,其配套软件才能够操作它们。初始化操作包括创建软件所需的数据结构、文件存储结构,构建硬件信息,如型号、序列号、出厂信息,以及下载自身硬件内部的管理软件等。
现有的初始化方法一般都是编写一个特定的初始化软件,在计算机USB口插入USB设备的情况下接收鼠标点击或键盘敲击,有一定的外部事件发生,然后软件开始执行初始化流程,然后拔除USB设备,重复以上操作。这样的初始化方法在初始化流程花费时间不长、初始化USB设备的数量不是太大、任务不是太紧迫的时候是可以满足需要的,但是当要初始化的USB设备很多的时候就难以达到令人满意的效果,其工作效率低下,时间、人力、物力、财力都是一种浪费,没有充分利用计算机的资源。

发明内容
为了解决现有技术中对USB设备初始化时操作繁琐、花费时间长、工作效率低的问题,本发明提供一种USB设备自动初始化的方法和装置,它可以代替人工方法自动对USB设备进行初始化处理,操作简单、工作效率高。
本发明的USB设备自动初始化的方法,其实现方式为自动判断USB设备在初始化设备的USB口的插入和拔除,在插入时自动进行初始化,在拔除后等待下一个USB设备的插入。
所述方法通过以下步骤实现步骤A启动;步骤B监控USB设备在USB口的插入;步骤C监控到USB设备插入时,执行初始化流程;步骤D监控USB设备的拔除,USB设备拔除后,进行步骤B。
所述方法通过以下步骤实现步骤A启动;步骤A1检测USB口上是否连接有USB设备;步骤A2如果USB口上连接有USB设备,执行初始化流程;如果USB口上没有连接USB设备,进行步骤B;步骤A3监控USB设备的拔除,USB设备拔除后,进行步骤B;步骤B监控USB设备在USB口的插入;步骤C监控到USB设备插入时,执行初始化流程;步骤D监控USB设备的拔除,USB设备拔除后,进行步骤B。
所述监控USB设备插入和拔出通过PC/SC接口来实现。
所述监控USB设备插入和拔出通过Windows操作系统提供的设备管理(Device Management)接口和消息机制来实现。
所述监控USB设备插入和拔出通过调用驱动提供的私有接口来实现。
本发明的USB设备自动初始化的装置,包括监控装置和初始化装置,所述监控装置用于监控USB口上是否有USB设备插入和拔除;所述初始化装置用于将USB设备初始化。
本发明的USB设备自动初始化的装置还包括检测装置,用于检测USB口上当前是否连接有USB设备。
本发明产生的有益效果是1、节省了时间由软件自动判断并进行初始化操作,不由需要人工来控制,减少了出错的可能性。由于省去了人工干预时间,因此时间上比现有技术的方法节省了很多。
2、节省了资源由于大部分计算机支持多个USB口,所以可以设置多线程执行初始化工作,监控尽可能多的USB口的拔插事件,可以并行初始化多个USB设备,相对来说减少了初始化人员和初始化设备的数量,并充分利用了计算机资源。
3、降低了成本由于不需要人工干预,因此可以不配备人工干预所需要的工具,如鼠标,键盘等,降低了成本。另外,初始化用的设备既可以是普通PC机,也可以是专门制作的只具有初始化功能的设备,这样就进一步降低了成本。


下面结合附图和实施例对本发明进一步说明。
图1为本发明的USB设备自动初始化的装置的结构示意图;图2为本发明的USB设备自动初始化的方法的流程图。
具体实施例方式
下面结合附图和具体实施例对本发明作进一步说明,但不作为对本发明限定。
本发明适用所有使用USB接口的设备,例如鼠标、键盘、数码相机、USBKey等,将USB设备插入USB口,初始化设备检测到USB设备的插入,对USB设备自动进行初始化操作,完成初始化后等待USB设备的拔除,拔除USB后初始化设备继续监控下一个USB设备的插入。
下面以对USB Key的初始化为例具体说明USB Key(USB锁),也叫USB Token(USB令牌),是将密钥或密码硬件(如IC卡和各种密码芯片)封装成USB接头的形式,通过插入计算机的USB接口,使用USB通讯协议和计算机进行通讯,达到数据交互和计算的目的。USB Key必须经过初始化,并通过安装在计算机上的软件,达到数据和软件保护以及个人身份认证的目的。
实施例一建立图1所示的由检测装置101、监控装置102、和初始化装置103组成的初始化设备,初始化设备上设有USB口,其对USB设备进行自动初始化的方法如图2所示
步骤201启动初始化设备;步骤202检测装置101来检测当前USB口上是否插有USB Key,如果有,执行步骤204;如果没有,执行步骤203;步骤203监控装置102通过PC/SC接口对USB口进行监控,可以利用SCardListReaders,SCardLocateCard,SCardGetStatusChange等接口或Windows操作系统下的智能卡COM接口进行监控,当监控到USB口上有USB Key插入时,执行步骤204;步骤204初始化装置103对USB Key进行初始化;步骤205监控装置102监控USB Key的拔除,监控到USB Key的拔除后进行步骤203。
实施例二建立图1所示的由检测装置101、监控装置102、和初始化装置103组成的初始化设备,初始化设备上设有USB口,其对USB设备进行自动初始化的方法如图2所示步骤201启动初始化设备;步骤202检测装置101来检测当前USB口上是否插有USB Key,如果有,执行步骤204;如果没有,执行步骤203;步骤203监控装置102通过Windows操作系统提供的设备管理接口对USB设备进行监控并获取USB设备属性来对指定的USB Key进行检测,可以使用RegisterDeviceNotification函数来注册从操作系统接收拔插通知的设备类型,使用SetupDiGetClassDevsEx函数来获取已经在初始化设备的USB口上插入的USB Key信息,使用Windows消息处理机制处理WM_DEVICECHANGE消息来监控USB Key的拔插。当监控到USB口上有USB Key插入时,执行步骤204;步骤204初始化装置103对USB Key进行初始化;步骤205监控装置102监控USB Key的拔除,监控到USB Key的拔除后进行步骤203。
实施例三建立图1所示的由检测装置101、监控装置102、和初始化装置103组成的初始化设备,初始化设备上设有USB口,其对USB设备进行自动初始化的方法如图2所示步骤201启动初始化设备;步骤202检测装置101来检测当前USB口上是否插有USB Key,如果有,执行步骤204;如果没有,执行步骤203;步骤203监控装置102通过使用读卡器厂商提供的驱动的私有接口进行监控。当监控到USB口上有USB Key插入时,执行步骤204;步骤204初始化装置103对USB Key进行初始化;步骤205监控装置102监控USB Key的拔除,监控到USB Key的拔除后进行步骤203。
在上述三个实施例中,初始化设备的启动方法可以是手工启动初始化程序,也可以是在计算机启动时自动运行该程序,但不局限这两种方法。上述三个实施例所使用的监控方法可以通过多线程技术同时使用或使用其中的一种或两种,还可以使用其它方法,只要可以监控到USB设备在USB口上的插入和拔除即可。另外,在实际应用中可以不执行步骤202而直接对USB口进行监控,而且在拔除刚初始化完的USB设备后如果有必要则可以进行一系列清理操作,如释放使用的资源等。本发明不限制错误处理方法,出错时可以直接退出该程序或者提示使用者是否继续监控或退出该流程,也可以使用其他错误处理方法。在整个流程中可以加入更人性化的界面,如错误、失败次数,初始化完成后提示拔除、拔除后提示插入等,也可以使用特殊的USB扩展器(如一种扩展多个USB口的硬件,通过控制扩展USB口的通电、断电达到模拟插拔的效果,可以一次性地插入多个USB设备)和多线程技术同时初始化多个USB设备,以提高工作效率。
权利要求
1.一种USB设备自动初始化的方法,其特征在于自动判断USB设备在初始化设备的USB口的插入和拔除,在插入时自动进行初始化,在拔除后等待下一个USB设备的插入。
2.根据权利要求1所述的USB设备自动初始化的方法,其特征在于所述方法通过以下步骤实现步骤A启动;步骤B监控USB设备在USB口的插入;步骤C监控到USB设备插入时,执行初始化流程;步骤D监控USB设备的拔除,USB设备拔除后,进行步骤B。
3.根据权利要求1或2所述的USB设备自动初始化的方法,其特征在于所述方法通过以下步骤实现步骤A启动;步骤A1检测USB口上是否连接有USB设备;步骤A2如果USB口上连接有USB设备,执行初始化流程;如果USB口上没有连接USB设备,进行步骤B;步骤A3监控USB设备的拔除,USB设备拔除后,进行步骤B;步骤B监控USB设备在USB口的插入;步骤C监控到USB设备插入时,执行初始化流程;步骤D监控USB设备的拔除,USB设备拔除后,进行步骤B。
4.根据权利要求1所述的USB设备自动初始化的方法,其特征在于所述监控USB设备插入和拔出通过PC/SC接口来实现。
5.根据权利要求1所述的USB设备自动初始化的方法,其特征在于所述监控USB设备插入和拔出通过Windows操作系统提供的设备管理接口和消息机制来实现。
6.根据权利要求1所述的USB设备自动初始化的方法,其特征在于所述监控USB设备插入和拔出通过调用驱动提供的私有接口来实现。
7.一种USB设备自动初始化的装置,其特征在于所述装置包括监控装置用于监控USB口上是否有USB设备插入和拔除;初始化装置用于将USB设备初始化。
8.根据权利要求7所述的USB设备自动初始化的装置,其特征在于所述装置还包括检测装置,所述检测装置用于检测USB口上当前是否连接有USB设备。
全文摘要
本发明公开了一种USB设备自动初始化的方法及装置,是一种将USB设备初始化的方法及装置。由初始化设备中的监控装置自动判断USB设备在初始化设备USB口的插入和拔除,在插入时由初始化装置对USB设备自动进行初始化,在拔除时如果有需要则自动进行清理操作,并等待下一个USB设备的插入,否则直接等待下一个USB设备的插入。本发明由于不需要人工干预,也不需要配备人工干预所需要的硬件,因而节省了时间,降低了成本,减少了出错的可能性。另外,还可以利用多线程技术来同时对多个USB设备进行初始化操作,大大提高了工作效率。
文档编号G06F21/00GK1851679SQ200610083209
公开日2006年10月25日 申请日期2006年5月30日 优先权日2006年5月30日
发明者陆舟, 于华章 申请人:北京飞天诚信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1