多功能装置的驱动的制作方法

文档序号:6609754阅读:228来源:国知局
专利名称:多功能装置的驱动的制作方法
技术领域
本发明涉及一种用于连接至计算机的多功能电子装置的驱动程序。
背景技术
用于连接至计算机的大多数电子装置,例如电子卡或外围设备,均需要由计算机所执行的驱动程序。
这些驱动程序基本上为计算机程序,当它们被计算机执行时,适于驱动装置的工作。
通常,计算机包含很大的数据库,其分类可用的驱动程序或者连接至外部数据库,例如可在因特网上存取的数据库。
各装置均包含装置识别符,当与计算机连接时,向计算机自我说明,或者更准确地说,向计算机的操作系统自我说明。该说明是在所谓的枚举阶段(enumeration phase)进行的。
在枚举的过程中传送的装置识别符使计算机在内部或外部数据库中查找出与装置对应的驱动程序。
一旦驱动程序被识别并且被加载至存储器中,则其将在计算机上执行,从而可以使用装置的功能。
某些实施例中,装置的驱动程序将控制模块的传输引导至执行它的装置。控制模块也被称为“固件(firmware)”,与计算机所执行的驱动程序进行通信。通常,控制模块以暂存的方式储存在装置中,以便于被更新从而升级装置的功能性。
此外,某些装置还提供若干功能,每一种功能均需要各自的驱动程序并且具有各自的识别符。在某些情况下,这种多功能装置的连接需要两个枚举阶段。在第一个枚举的过程中,装置将其装置识别符传送至计算机,计算机使用识别符加载并执行对应的驱动程序,从而向装置传输控制模块。
然后,控制模块模拟装置的断开,并开始第二个枚举或再枚举,在第二个枚举或再枚举期间,将多个功能识别符传送至计算机,这些功能识别符与装置识别符不同,并且相互间也不同。每个功能识别符对应于装置的一个功能。在对接收功能识别符的响应中,计算机执行驱动程序,每一个驱动程序可通过控制模块驱动对应的功能。
然而此实施例具有一些缺点。具体地说,当某段时间不使用或在其他条件下,某些类型的计算机被设计为进入待机模式。这些待机模式或者休眠通常需要关闭向连接至计算机的外围设备和装置提供的电源。关闭电源的结果是,装置的暂存被消除,所以适用于与对应功能的驱动程序通信的控制模块也被消除。
当计算机结束待机时期后重新启动时,则不再能够驱动提供装置识别符的装置,该装置识别符不同于与加载至存储器的驱动程序相关联的识别符,其中这些驱动程序与再枚举后得到的功能识别符相关联。由此产生的影响是计算机从存储器中破坏了这些功能驱动程序。结果使得使用这些功能驱动程序的、当前执行的软件包停止工作。

发明内容
本发明的目的在于连接并使用多功能装置,而使其状态不会被电源的临时关闭破坏。
因此,本发明提供一种多功能装置与计算机的连接方法,包含以下步骤由装置向计算机传送装置识别符;由计算机执行与装置识别符相关联的装置驱动程序;由计算机得到装置的功能列表;在计算机上由装置驱动程序启动与列出的功能相关联的驱动程序的执行;以及由装置驱动程序管理在装置的各功能与相应的功能驱动程序之间的数据流。
因此,装置与计算机之间的交换是通过装置的驱动程序完成的,使得整个系统在装置的电源供应发生中断时更加稳定并避免再枚举。
根据本发明的其它特征装置驱动程序的执行步骤导致向装置传送适于排列功能列表的控制模块,从而使计算机与装置之间的交换能够升级;装置驱动程序为装置的一个功能的驱动程序,此实施例使简化整体结构成为可能;装置的一个功能为用于接收电视信号的功能,并且装置的另一个功能为用于接收红外信号的功能。
本发明还涉及一种用于驱动连接至计算机的多功能装置的计算机程序,程序包含软件代码指令,当由计算机的处理器执行时,使得对接收装置识别符的响应,由计算机执行与装置识别符相关联的装置驱动程序;对接收装置的功能列表的响应,在计算机上由装置驱动程序启动与列出的功能相关联的驱动程序的执行;以及由装置驱动程序管理在装置的各功能与相应的功能驱动程序之间的数据流。
根据该程序的其它功能性该程序包含软件码指令,当由计算机的处理器执行时,使得在完成装置驱动程序的执行后,向装置传送适于排列功能列表的控制模块;以及该程序包含软件码指令,当由计算机的处理器执行时,使得处理由装置产生的一个数据流。


图1示意性地示出了连接至多功能装置的计算机;图2示出了本发明方法的流程图。
在附图中,各标号所代表的部件列表如下计算机2通用串行总线连接线 4装置 6永久内存8
数据库10装置识别符ID功能列表 FCTLIST功能 FN1、FN2驱动程序 DRVID、DRVFN1、DRVFN具体实施方式
下面结合附图对本发明作更加详细的说明,其中图1示意性地示出了连接至多功能装置的计算机。
图2示出了本发明方法的流程图。
图1示出了一个计算机,例如个人计算机2,其以传统方式运行操作系统(operating system,即OS)。
计算机2通过通用串行总线(universal serial bus,即USB)型连接线4连接至被红外线控制的电视接收装置6。
在本实施例中,装置采用电子卡的形式,通过通用串行总线连接线4提供的电源而工作。
卡6适用于实施若干功能。第一功能FN1允许接收电视数据流,尤其是接收数字或者模拟的电视节目。第二功能FN2允许接收红外数据流,该数据流对应于红外遥控器所传送的电视频道选择信号。
用于处理数据流的、在电子卡上对处理链(processing chain)的集成为现有技术,所以此处不再进一步详细描述。
此外,卡6还包含永久内存8,例如电可擦除只读存储器(EEPROM),在其中储存有装置识别符以及卡6实施的功能列表,分别标记为ID以及FCTLIST。
最后,计算机2具有连接至包含驱动程序的数据库10的通路。数据库特别包含驱动程序,标记为DRVFN1、DRVFN2以及DRVID,分别关联于功能FN1及FN2以及装置识别符ID。
以下结合图2描述本发明的多功能装置的连接方法。
当卡6第一次连接至计算机2时,在操作系统与卡6之间将随之出现枚举阶段。该枚举阶段包含传送步骤20,在传送步骤20中卡6发送装置识别符ID至计算机2。该步骤以传统方式被执行,特别是通过使用由通用串行总线接口实现的总线枚举装置功能而执行。
完成传送步骤20后,操作系统从数据库10中检索装置6的驱动程序DRVID,并且在步骤22中执行该驱动程序。
在步骤24中,驱动程序DRVID的执行使计算机获得卡6的功能列表FCTLIST。这是通过交换操作系统与卡6之间的请求和响应而完成的。
装置的驱动程序DRVID包含特殊的结构,当它被执行时,适于启动其它驱动程序的执行,尤其是功能FN1和FN2驱动程序的执行。此外,驱动程序DRVID适于管理各驱动程序与装置之间的数据流,下面将详细描述。
该方法包括在步骤26中的功能列表FCTLIST的分析,通过装置驱动程序DRVID,该分析使得在计算机2上开始执行与列出的功能相关联的驱动程序,相关联的驱动程序是指在步骤28中的驱动程序DRVFN1以及DRVFN2。
最后,本发明的方法包括管理步骤30,该管理是通过装置驱动程序DRVID管理卡6与功能驱动程序DRVFN1和DRVFN2之间的数据流。因此,功能FN1和FN2通过装置驱动程序DRVID与对应的驱动程序DRVFN1和DRVFN2相关联。
在本实施例中,更准确地说,利用相同的装置识别符,通过功能FN1和FN2对应的处理链传送的数据流被传送到通用串行总线连接线4上,其中相同的装置识别符是指识别符ID,额外还有标识各功能的指示符或标识符。
因此,在通用串行总线连接线上传输的数据流被相同的识别符ID标注,并且被编址于对应的驱动程序,即驱动程序DRVID。当为了管理数据流而处理驱动程序DRVID时,其标识出对应各功能的指示符,从而将数据流引导至各功能驱动程序。
接下来,计算机2处于待机状态,并且在本实施例中,这将使通用串行总线连接器4的电源关闭。
当计算机脱离待机状态时,装置的驱动程序DRVID将确认通用串行总线连接线上是否出现对应的驱动程序。因为识别符ID以永久的方式储存在卡6中,所以该确认是肯定的。因此,将直接恢复通信,并且卡6与装置的驱动程序DRVID之间不会发生中断。然后,如前所述,驱动程序DRVID将管理在对应功能FN1和FN2的各处理链和相应的驱动程序DRVFN1和DRVFN2之间的数据流。
因此,本发明的驱动程序的优点解决了先前所描述的问题,并且关闭电源不会影响卡和计算机的工作。
当然,其它实施例也是可能的。
在一个变化中,装置驱动程序DRVID与其中一个功能的驱动程序一致。
在另一个变化中,卡6的功能列表可能动态地排列,而不是如实施例中所描述的静态。
在这样的实施例中,当卡6连接至计算机时,该卡的驱动程序被执行并且将控制模块的传送引导至该卡。一旦被传送至该卡,控制模块确认该卡上的可用功能,并列出功能列表以传送至计算机中的装置驱动程序DRVID。然后继续前面描述的方法。
如果电源中断并随后恢复,则出现以下情况,再次执行控制模块的传输以及动态列表,但是装置的识别符决不会与加载在存储器内的驱动程序的相关识别符有所不同。
因此,功能驱动程序不会从计算机的存储器中删除,并使软件包继续正常工作。
特别地,当工作恢复时,计算机与卡仍然能够通过装置驱动程序的功效相互通话。如果控制模块是通信所必需的,一旦功能列表被接收,则控制模块再次被传送以指导相应的驱动程序的执行。
如果此模块不是必需的,功能驱动程序则直接地通过装置驱动程序通信,而无需任何列表。
此外,可以考虑不同于通用串行总线类型连接的实施例,例如PCI型的连接,以及使用任意类型的模拟或者数字电视流。
在使用PCI型接口的实施例中,当计算机关闭时将装置连接,并且在启动时由BIOS检测到该装置。随后,由操作系统管理的驱动程序负责装置的交换。
此外,本发明并非限制于在同样的装置上使用两种功能,其当然还可应用于更多的功能。
以上具体阐述了本发明的实施例,但其并非用以限定本发明。在不脱离本发明的精神和范围内所做的改动和修饰,均属本发明的专利保护范围。
权利要求
1.一种多功能装置与计算机的连接方法,其特征在于所述方法包含以下步骤由所述装置向所述计算机传送装置识别符;由所述计算机执行与所述装置识别符相关联的装置驱动程序;由所述计算机得到所述装置的功能列表;在所述计算机上由所述装置驱动程序启动与列出的功能相关联的驱动程序的执行;以及由所述装置驱动程序管理在所述装置的各功能与相应的功能驱动程序之间的数据流。
2.如权利要求1所述的多功能装置与计算机的连接方法,其中所述装置驱动程序的执行步骤使得向所述装置传送适于排列所述功能列表的控制模块。
3.如权利要求1和2中的任一项所述的多功能装置与计算机的连接方法,其中所述装置驱动程序为所述装置的功能中的一个的驱动程序。
4.如权利要求1至3中的任一项所述的多功能装置与计算机的连接方法,其中所述装置的功能中的一个为用于接收电视信号的功能,并且所述装置的另一个功能为用于接收红外信号的功能。
5.一种用于驱动连接至计算机的多功能装置的计算机程序,所述程序包含软件代码指令,当由所述计算机的处理器执行时,使得响应于接收装置识别符,由所述计算机执行与所述装置识别符相关联的装置驱动程序;响应于接收所述装置的功能列表,在所述计算机上由所述装置驱动程序启动与列出的功能相关联的驱动程序的执行;以及由所述装置驱动程序管理在所述装置的各功能与相应的功能驱动程序之间的数据流。
6.如权利要求5所述的计算机程序,其中包含软件码指令,当由所述计算机的处理器执行时,使得在完成所述装置驱动程序的执行后,向所述装置传送适于排列所述功能列表的控制模块。
7.如权利要求5和6中的任一项所述的计算机程序,其中包含软件码指令,当由所述计算机的处理器执行时,使得处理由所述装置产生的数据流中的一个。
全文摘要
一种多功能装置(6)与计算机(2)的连接方法,包含以下步骤由所述装置向所述计算机传送装置识别符(ID);由所述计算机执行与所述装置识别符相关联的装置驱动程序(DRVID);由所述计算机得到所述装置的功能列表(FCTLIST);在所述计算机上由所述装置驱动程序启动与列出的功能相关联的驱动程序(DRVFN1,DRVFN2)的执行;以及由所述装置驱动程序管理在所述装置的各功能与相应的功能驱动程序之间的数据流。
文档编号G06F13/10GK101086719SQ20071011111
公开日2007年12月12日 申请日期2007年6月11日 优先权日2006年6月9日
发明者伊莎贝尔·贝朗热-巴塞, 佛朗索瓦·卡努尼科夫 申请人:迪康公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1