一种实现usb端点复用的方法和设备的制作方法

文档序号:6480242阅读:270来源:国知局

专利名称::一种实现usb端点复用的方法和设备的制作方法
技术领域
:本发明涉及通信领域,特别涉及一种实现USB端点复用的方法和设备。
背景技术
:随着计算机技术的飞速发展,USB(UniversalSerialBus通用串行总线)设备由于具有灵活存取、可移动性等优点得到用户的广泛应用。PC(PersonalComputer,个人计算机)和USB设备进行通信时,通过USB设备中的USB端点实现与PC上的驱动程序通信。目前,USB设备支持两套USB端点一套控制端点用来进行控制通信;另一套数据端点用来进行数据通信,如USB鼠标、USB键盘等功能设备。用户对USB设备的性能要求越来越高,需要一个USB设备能够支持多个功能即可以作为一个多功能设备使用。目前可以采用在一个USB设备增加多套USB端点,每套USB端点都独立支持相应的功能设备,实现一个USB设备支持多个功能。发明人在实现本发明过程中发现USB设备由于受到硬件的限制,所能支持的USB端点的数量都非常有限,此时硬件上的不足就阻碍了USB设备功能的完整性和丰富性。如果通过增加USB设备硬件中的USB端点的数量的方式来实现多功能设备的要求,则USB设备硬件实现的复杂性和成本会大大增加。
发明内容本发明实施例提供了一种实现USB端点复用的方法和设备,以解决USB设备的一套USB端点无法对应多种USB功能设备的问题。所述方案如下本发明实施例提供了一种实现USB端点复用的方法,USB设备支持至少两个USB功能设备,且USB设备所支持的USB功能设备的个数大于USB设备的数据端点个数,方法包括接收切换USB功能设备请求,请求中携带用户选择的USB功能设备的功能标识;根据功能标识,查找功能标识对应的USB功能设备;将USB设备切换为查找到的USB功能设备。本发明实施例提供了一种USB设备,USB设备支持至少两个USB功能设备,且USB设备所支持的USB功能设备的个数大于USB设备的数据端点个数,设备包括接收模块,用于接收切换USB功能设备请求,请求中携带用户选择的USB功能设备的功能标识;查找模块,用于根据接收模块接收的切换请求携带的功能标识,查找功能标识对应的USB功能设备;切换模块,用于将USB设备切换为查找模块查找到的USB功能设备。本发明实施例提供了一种主机,设备包括获取模块,用于获取USB功能设备的信息,根据获取的USB功能设备查找USB功能设备对应的功能标识;发送模块,用于向USB设备发送切换USB功能设备请求,请求中携带用户选择的USB功能设备的功能标识。本发明实施例提供的技术方案带来的有益效果是本发明实施例在USB设备端点有限的情况下,通过对USB端点进行复用,实现了一个USB设备作为多种功能设备的目的,节省了USB设备的硬件成本且提高了USB设备的兼容性,而用户只需要一个USB设备就能实现多个功能,提高了用户的使用体验。图1是本发明实施例1提供的方法流程示意图;图2是本发明实施例2提供的USB设备和主机的连接示意图;图3是本发明实施例2提供的方法具体流程示意图;图4是本发明实施例3提供的USB设备结构示意图;图5是本发明实施例4提供的主机结构示意图。具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。实施例1为了使一个USB设备实现多种功能,节约硬件成本,本发明实施例提供了一种实现USB端点复用的方法,USB设备支持至少两个USB功能设备且USB设备所支持的USB功能设备的个数大于USB设备的数据端点个数,参见图l,该方法包括步骤101:接收切换USB功能设备请求,该请求中携带用户选择的USB功能设备的功能标识;步骤102:根据功能标识,查找功能标识对应的USB功能设备;步骤103:将USB设备切换为查找到的USB功能设备。本发明实施例提供的上述方法步骤,USB设备在接收切换USB功能设备的请求后,在所支持的多个USB功能设备中进行切换,实现了一个USB设备作为多种功能设备的目的。其中,根据功能标识,查找功能标识对应的USB功能设备,具体为对USB设备所支持的USB功能设备进行枚举,根据功能标识以及枚举的USB功能设备,查找到功能标识对应的USB功能设备。其中,通过USB设备的控制端点,接收切换USB功能设备的请求,包括通过USB设备的控制端点接收切换USB功能设备的请求;或,通过USB设备的数据端点接收切换USB功能设备的请求,并将请求发送给USB设备的控制端点。其中,将USB设备切换为查找到的USB功能设备,具体为USB设备的控制端点向USB设备的数据端点发送切换命令;数据端点接收切换命令,将USB设备切换为查找到的USB功能设备,使得主机通过5数据端点与USB功能设备进行数据通信。本发明实施例提供的方法,在USB芯片端点有限的情况下,通过对USB端点进行复用,实现了一个USB设备作为多种功能设备的目的,节省了USB设备的硬件成本且提高了USB设备的兼容性,而用户只需要一个USB设备就能实现多个功能,提高了用户的使用体验。实施例2为了使一个USB设备实现多种功能,节约硬件成本,本发明实施例提供了一种实现USB端点复用的方法,其中,参见图2,本发明实施例是以USB设备有两套端点一套为控制端点,一套为数据端点的情况,数据端点下连接多个功能设备(光盘、网卡、U盘和磁盘)为例进行说明。为了实现对USB设备的端点复用功能的支持,首先需要PC侧和USB设备侧的驱动程序都支持端点切换功能,其中,在PC侧体现为对具体USB设备的选择,在USB设备侧的驱动体现为对不同逻辑的处理。参见图3,其具体实现流程图如下步骤201:对接入PC的USB设备进行初始化;其中,USB设备初次接入PC时,会有默认的功能设备;如USB设备默认的功能设备可以为U盘,当然也可以是光盘,U盘,或者其它设备,可以根据需要灵活选取;但对于某个USB设备而言,其默认的功能设备是固定的,如果以后用户需要修改,则需要重新设置USB设备默认的功能设备。当USB设备初次接入PC时,该USB设备根据默认的功能设备,自动运行并安装默认的功能设备的控制程序、进行初始化设备的过程;例如USB设备默认的功能设备为U盘,则当该USB设备初次接入PC时,该USB设备的控制端点会与PC进行交互,通知PC此时USB设备是U盘,当交互成功后,即PC已经识别该USB设备的U盘功能后,该USB设备的数据端点可以与PC进行U盘功能的数据通信。步骤202:对USB设备初始化完成后,用户在PC主机选择USB功能设备;其中,当USB设备默认的功能设备的控制程序安装完成后,会自动运行,此时,如果用户选择的功能设备恰好是USB设备默认的功能设备,则用户可直接使用该USB设备,利用该USB设备的数据端点与PC主机进行数据通信;如果用户选择的功能设备不是USB设备默认的功能设备,则用户可以根据需要,在PC侧使用控制工具来选择该USB设备现在应该处于何种功能设备,控制工具会使用IOCTL(I即utandOutputControl,输入输出控制)的方法输入用户选择的USB设备的功能设备。而控制工具可以是键盘、语音识别设备等任意形式的输入设备,输入设备一般会连接在PC主机上或者是PC主机的一部分。其中,上述步骤201-202中,首先对USB设备进行初始化,初始化完成后用户在PC侧选择USB功能设备,另外,也可以在USB设备初次接入PC主机时,PC主机侧提供一个可以显示该USB设备所支持的所有功能设备的界面,用户可以直接在该界面上选择需要的USB功能设备。步骤203:PC主机获取用户选择的USB功能设备,向USB设备发送切换请求,该请求中携带该USB功能设备的功能标识;其中,在PC主机和USB设备中,USB设备的每个功能设备都有一个具体的功能标识相对应;参见表l,例如,U盘对应的功能标识为l,光盘对应的功能标识为2。其中,该请求携带的该USB功能设备的功能标识中,还包含将设备枚举成用户选择的USB功能设备的参数,即该功能标识对应的具体的该USB功能设备的参数。表1<table>tableseeoriginaldocumentpage7</column></row><table>PC主机从控制工具上(如键盘)获取用户选择的功能设备,查找用户选择的功能设备对应的功能标识,向USB设备发送设备切换请求;该请求包含将USB设备切换为用户选择的功能设备的指令,且携带用户选择的功能设备的功能标识。如表1中,PC主机从控制工具上获取到用户选择光盘时,则查找到光盘对应的功能标识为2,向USB设备发送切换为光盘的请求,该请求中携带光盘的功能标识2。步骤204:USB设备通过控制端点,接收PC主机发送的切换USB功能设备的请求,获取请求中的USB功能标识;其中,USB设备的控制端点从接收的切换USB功能设备的请求中获取携带的功能标识以及该功能标识对应的功能设备参数。步骤205:USB设备根据获取用户选择的USB功能标识,查找功能标识对应的USB功能设备;其中,USB设备的控制端点获取到用户选择的功能标识后,根据功能标识中的用户选择的USB功能设备的参数,对USB设备所支持的所有USB功能设备进行枚举,根据功能标识查找对应的USB功能设备;如表l中,USB设备的控制端点根据获取到的功能标识为2,则可以通过对该USB设备所支持的所有USB功能设备进行枚举,查找到功能标识为2对应的USB功能设备为光盘。另外,对于用户选择的功能设备该USB设备都不支持的情况,即根据用户选择的USB功能设备的功能标识,查找不到对应的USB功能设备,此时USB设备向PC返回失败响应,用户无法使用该USB设备完成所选择的功能。步骤206:USB设备的控制端点向所述USB设备的数据端点发送切换命令;其中,USB设备的数据端点下连接多个功能设备接口;控制端点查找到功能标识对应的USB功能设备后,向USB设备的数据端点发送切换命令,通知数据端点切换到该USB功能设备上,即用户所选的功能设备。如表1中,USB设备的控制端点查找到功能标识2对应的USB功能设备为光盘,则通知数据端点切换到光盘上。步骤207:USB设备的数据端点接收发送的切换命令,将USB设备切换为查找到的USB功能设备,并通过数据端点与USB功能设备进行数据通信。其中,USB设备的数据端点接收发送的切换命令,根据切换命令,将USB设备切换为查找到的USB功能设备上,USB设备切换完成后,此时该USB设备为用户选择的功能设备,向PC主机返回成功响应,用户获知该响应后,获知可以使用所选择的功能设备和PC主机进行数据通信,其过程与普通USB设备通信过程相同,不再赘述。另外,上述步骤204-207是USB设备的控制端点接收PC主机发送的切换请求再通过USB设备的数据端点完成USB设备的功能切换,另外,USB设备的数据端点也可以直接接收PC主机发送的切换请求,然后再将该切换请求发送给USB设备的控制端点,控制端点再执行上述步骤204-207。其中,当USB设备接收到PC主机发送的新切换请求时,则USB设备会断开当前功能设备,根据新收到的切换请求获取新的功能标识,根据新的新的功能标识,再一次进行重新枚举,将USB设备切换到新的功能设备,过程参见步骤204-207,不再赘述。本发明实施例是以USB设备存在两套端点一套控制端点,一套数据端点为例对本发明实施例提供的方法进行说明,本发明实施例也适用于USB设备存在大于两套端点的情况,此时可以根据实际需要,对其中的某套端点单用而对另外的端点复用,或者对所有的端点都复用,其过程类似,不再赘述。另外,对于本发明实施例中USB设备的USB端点支持多种存储功能时,如U盘、光盘等,此时如果USB设备中有多个存储设备,则可以根据实际需要将每个存储设备作为其中一种存储功能对应的存储设备;例如将U盘的数据存储在USB设备的存储设备1中,将光盘的数据存储在USB设备的存储设备2中。如果USB设备中只有一个存储设备,但该USB设备仍然支持多种存储功能时,此时则将该存储设备划分为多个区,每个区作为一种存储功能对应的存储设备。例如将U盘的数据存储在存储设备的区1中,将光盘的数据存储在存储设备的区2中。本发明实施例提供的方法,通过PC主机和USB设备侧驱动程序的配合,对USB设备的功能设备重新枚举来实现USB端点的复用,使得USB设备可以在不同的功能设备之间进行切换,进而实现USB设备支持多个功能,节省了USB设备的硬件成本且提高了USB设备的兼容性,提高了用户的使用体验。实施例3本发明实施例提供了一种实现USB端点复用的设备,本发明实施例中的USB设备支持至少两个USB功能设备且USB设备所支持的USB功能设备的个数大于USB设备的数据端点个数,参见图4,该设备包括接收模块301,用于接收USB切换功能设备请求,请求中携带用户选择的USB功能设备的功能标识;查找模块302,用于根据接收模块接收的切换请求携带的功能标识,查找功能标识对应的USB功能设备;切换模块303,用于将USB设备切换为查找模块302查找到的USB功能设备。本发明实施例提供的上述设备USB设备在接收切换USB功能设备的请求后,在所支持的多个USB功能设备中进行切换,实现了一个USB设备作为多种功能设备的目的。8其中,查找模块302包括枚举单元,用于对USB设备所支持的USB功能设备进行枚举;查找单元,用于根据接收模块接收301的功能标识以及枚举单元枚举的USB功能设备,查找到该功能标识对应的USB功能设备。其中,切换模块303包括发送单元,用于通过USB设备的控制端点向USB设备的数据端点发送切换命令;切换单元,用于数据端点接收发送单元发送的切换命令,将USB设备切换为查找单元查找到的USB功能设备,使得主机通过数据端点与USB功能设备进行数据通信。其中,接收模块301,包括第一接收单元,用于通过USB设备的控制端点接收切换USB功能设备的请求;或,第二接收单元,用于通过USB设备的数据端点接收切换USB功能设备的请求,并将请求发送给USB设备的控制端点。本发明实施例提供的设备,通过对USB设备重新枚举来实现USB端点的复用,使得USB设备可以在不同的功能设备之间进行切换,进而实现在有限端点上对多功能设备的支持,节省了USB设备的硬件成本且提高了USB设备的兼容性,提高了用户的使用体验。实施例4本发明实施例提供了一种主机,参见图5,该设备包括获取模块401,用于获取USB功能设备的信息,根据获取的USB功能设备查找USB功能设备对应的功能标识;所述USB功能设备的信息可以通过用户输入主机而获得,具体用户可以点击相应USB功能设备的图标,或键入相应USB功能设备的全称或简称等方式,此处不详述。发送模块402,用于向USB设备发送切换USB功能设备请求,请求中携带用户选择的USB功能设备的功能标识。本发明实施例提供的主机,通过与USB设备的驱动程序配合,获取用户选择的USB功能设备,并向USB设备发送切换USB功能设备请求,使得USB设备可以在不同的功能设备之间进行切换,进而实现在有限端点上对多功能设备的支持,节省了USB设备的硬件成本且提高了USB设备的兼容性,提高了用户的使用体验。本发明实施例可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,例如,路由器的硬盘、缓存或光盘中。以上仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。9权利要求一种实现USB端点复用的方法,其特征在于,USB设备支持至少两个USB功能设备,且所述USB设备所支持的USB功能设备的个数大于所述USB设备的数据端点个数,所述方法包括接收切换USB功能设备的请求,所述请求中携带选择的USB功能设备的功能标识;根据所述功能标识,查找所述功能标识对应的USB功能设备;将所述USB设备切换为所述查找到的USB功能设备。2.如权利要求1所述的方法,其特征在于,所述根据所述功能标识,查找所述功能标识对应的USB功能设备为对所述USB设备所支持的USB功能设备进行枚举,根据所述功能标识以及所述枚举的USB功能设备,查找到所述功能标识对应的USB功能设备。3.如权利要求1所述的方法,其特征在于,所述接收切换USB功能设备的请求,包括通过所述USB设备的控制端点接收切换USB功能设备的请求;或,通过所述USB设备的数据端点接收切换USB功能设备的请求,并将所述请求发送给所述USB设备的控制端点。4.如权利要求1所述的方法,其特征在于,所述将所述USB设备切换为所述查找到的USB功能设备为USB设备的控制端点向USB设备的数据端点发送切换命令;所述数据端点接收所述切换命令,将所述USB设备切换为所述查找到的USB功能设备,使得主机通过所述数据端点与所述USB功能设备进行数据通信。5.—种USB设备,其特征在于,所述USB设备支持至少两个USB功能设备,且所述USB设备所支持的USB功能设备的个数大于所述USB设备的数据端点个数,所述设备包括接收模块,用于接收切换USB功能设备的请求,所述请求中携带用户选择的USB功能设备的功能标识;查找模块,用于根据所述接收模块接收的切换请求携带的功能标识,查找所述功能标识对应的USB功能设备;切换模块,用于将所述USB设备切换为所述查找模块查找到的USB功能设备。6.如权利要求5所述的设备,其特征在于,所述查找模块包括枚举单元,用于对所述USB设备所支持的USB功能设备进行枚举;查找单元,用于根据所述接收模块接收的功能标识以及所述枚举单元枚举的USB功能设备,查找到所述功能标识对应的USB功能设备。7.如权利要求5所述的设备,其特征在于,所述切换模块包括发送单元,用于通过所述USB设备的控制端点向所述USB设备的数据端点发送切换命令;切换单元,用于通过所述数据端点接收所述发送单元发送的切换命令,将所述USB设备切换为所述查找单元查找到的USB功能设备,使得主机通过所述数据端点与所述USB功能设备进行数据通信。8.如权利要求5所述的设备,其特征在于,所述接收模块,包括第一接收单元,用于通过所述USB设备的控制端点接收切换USB功能设备的请求;或,第二接收单元,用于通过所述USB设备的数据端点接收切换USB功能设备的请求,并将所述请求发送给所述USB设备的控制端点。9.一种主机,其特征在于,所述设备包括获取模块,用于获取USB功能设备的信息,根据获取的USB功能设备查找所述USB功能设备对应的功能标识;发送模块,用于向USB设备发送切换USB功能设备的请求,所述请求中携带用户选择的USB功能设备的功能标识。全文摘要本发明公开了一种实现USB端点复用的方法和设备,属于通信领域。本发明的USB设备支持至少两个USB功能设备且USB设备所支持的USB功能设备的个数大于USB设备的数据端点个数,方法包括接收切换USB功能设备的请求,请求中携带用户选择的USB功能设备的功能标识;根据功能标识,查找功能标识对应的USB功能设备;将USB设备切换为查找到的USB功能设备。设备包括一种USB设备和一种主机。本发明通过对USB端点进行复用,实现了一个USB设备作为多种功能设备的目的,节省了成本,提高了用户的使用体验。文档编号G06F13/38GK101777032SQ20091000193公开日2010年7月14日申请日期2009年1月14日优先权日2009年1月14日发明者韩宇彬申请人:华为终端有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1