Usbotg装置、电子设备及实现otg功能的方法

文档序号:6510147阅读:365来源:国知局
Usb otg装置、电子设备及实现otg功能的方法
【专利摘要】本发明提供一种USB?OTG装置、电子设备及实现OTG功能的方法,该USB?OTG装置,包括:USB主机模块、OTG模块、USB外设模块和相对于USB主机模块、OTG模块和USB外设模块独立设置的USB控制器驱动模块;USB主机模块,用于为OTG功能提供USB主机端的功能支持;USB外设模块,用于为OTG功能提供USB外设端的功能支持;OTG模块,用于基于USB主机模块和USB外设模块的功能支持,实现OTG功能;USB控制器驱动模块,用于为实现OTG功能提供控制器驱动。本发明的技术方案,可以增加OTG功能的可修改性,降低在不同USB控制器上实现OTG功能的复杂度。
【专利说明】USB OTG装置、电子设备及实现OTG功能的方法
【技术领域】
[0001 ] 本发明涉及通信技术,尤其涉及一种USB OTG装置、电子设备及实现OTG功能的方法。
【背景技术】
[0002]通用串行总线(Universal Serial Bus,简称USB)是一种数据交换的通用接口,通用串行总线应用者论坛(Universal Serial Bus Implementers Forums,简称USB IF)开发了 USB OTG (On-The-Go)的规范,USB OTG规范是USB2.0规范的一个补充,一个OTG产品是一个便携式设备,使用单一的双角色插座(Min1-ΑΒ插座或Micro-AB插座,不是其它的USB插座)。支持OTG的设备和普通USB设备相连时,支持OTG的设备作为主机,普通USB设备作为外设;而两个支持OTG的设备相连时,则通过USB连接线两端的插头(A-插头和B-插头)来区分缺省的主机(A-设备,与A-插头连接的支持OTG的设备)和缺省的外设(B-设备,与B-插头连接的支持OTG的设备),A-设备和B-设备之间还可以通过主机交换协议(HostNegotiation Protocol,简称HNP)实现主机和外设的角色切换,OTG协议允许下层驱动组件在USB主机和USB外设角色之间随意转换,不需要改变电缆物理位置。
[0003]现有技术一般是将支持OTG的设备的软件分为USB主机栈、OTG驱动程序模块、USB外设栈三个独立的大模块,USB主机栈、OTG驱动程序模块、USB外设栈的所有功能都建立在USB控制器的基础上,USB控制器指的是硬件控制器,为USB主机栈、OTG驱动程序模块、USB外设栈提供硬件支持,而在不同USB控制器增加OTG功能支持时,则需要对USB主机栈中的USB主机控制器驱动模块、USB外设栈中的USB外设控制器驱动模块以及OTG驱动模块分别进行修订。
[0004]然而,现有技术存在OTG功能的可修改性较小,进而增加了在不同USB控制器上实现OTG功能的复杂度。

【发明内容】

[0005]本发明提供一种USB OTG装置、电子设备及实现OTG功能的方法,用以增加OTG功能的可修改性,降低在不同USB控制器上实现OTG功能的复杂度。
[0006]本发明第一个方面是提供一种USB OTG装置,包括:通用串行总线USB主机模块、OTG模块、USB外设模块和相对于所述USB主机模块、所述OTG模块和所述USB外设模块独立设置的USB控制器驱动模块;
[0007]所述USB主机模块,用于为OTG功能提供USB主机端的功能支持;
[0008]所述USB外设模块,用于为OTG功能提供USB外设端的功能支持;
[0009]所述OTG模块,用于基于所述USB主机模块和所述USB外设模块的功能支持,实现OTG功能;
[0010]所述USB控制器驱动模块,用于为实现OTG功能提供控制器驱动。
[0011]本发明的另一个方面是提供一种电子设备,包括如上所述的USB OTG装置和通用串行总线USB控制器。
[0012]本发明的又一个方面是提供一种实现OTG功能的方法,适用于如上所述的电子设备,包括:
[0013]根据通用串行总线USB控制器的配置信息确定在所述USB控制器上实现OTG功能的配置文件;
[0014]根据所述配置文件修订USB控制器驱动模块。
[0015]本发明的技术效果是:本发明USB OTG模块包括:USB主机模块、OTG模块、USB外设模块和相对于USB主机模块、OTG模块和USB外设模块独立设置的USB控制器驱动模块,其中,USB主机模块,用于为OTG功能提供USB主机端的功能支持;USB外设模块,用于为OTG功能提供USB外设端的功能支持;0TG模块,用于基于USB主机模块和USB外设模块的功能支持,实现OTG功能;USB控制器驱动模块,用于为实现OTG功能提供控制器驱动,基于本发明USB OTG装置的模块划分,将USB控制器驱动模块独立设置,可以增加OTG功能的可修改性,降低在不同USB控制器上实现OTG功能的复杂度。
【专利附图】

【附图说明】
[0016]图1为本发明提供的USB OTG装置的一个实施例的结构示意图;
[0017]图2为现有技术中支持OTG的设备的驱动程序栈配置示意图;
[0018]图3为本发明提供的USB OTG装置的一个实施例中USB控制器驱动模块的结构示意图;
[0019]图4为本发明提供的电子装置的一个实施例的结构示意图;
[0020]图5为本发明提供的实现OTG功能的方法的一个实施例的结构示意图。
【具体实施方式】
[0021]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0022]图1为本发明提供的USB OTG装置的一个实施例的结构示意图,如图1所示,本实施例的USB OTG装置100包括:USB主机模块110、0TG模块120、USB外设模块130和相对于USB主机模块110、0TG模块120和USB外设模块130独立设置的USB控制器驱动模块140,其中,USB主机模块110,用于为OTG功能提供USB主机端的功能支持;USB外设模块130,用于为OTG功能提供USB外设端的功能支持;0TG模块120,用于基于USB主机模块110和USB外设模块130的功能支持,实现OTG功能;USB控制器驱动模块140,用于为实现OTG功能提供控制器驱动。
[0023]进一步地,本实施例的USB OTG装置100,还包括:0TG设备应用模块150,USB主机模块110和/或USB外设模块130,还用于为OTG设备应用模块150所要实现的应用提供协议支持。
[0024]具体来说,上述模块之间的关系如图1所示,图中的带箭头的连线表示依赖关系。
[0025]USB主机模块110主要用于为OTG功能提供USB主机端的功能支持,USB主机模块110是USB控制器的上层软件功能,USB主机模块110可以和USB外设模块130进行通信,并为OTG设备应用模块150所要实现的应用提供协议支持,USB主机模块110可以包括主机端的USB外设驱动和USB核心(USB Core), USB外设驱动用于控制USB外设如何与USB主机通信,USB外设驱动根据不同的应用有不同的驱动,比如USB 口的鼠标驱动、键盘驱动、音响驱动等,本实施例实现的是海量存储(mass storage)功能的驱动,即对mass storage的支持,主机端对不同的USB外设都有其配套的驱动代码,USB主机端的USB外设驱动就是用于实现这些代码;USB Core负责USB驱动管理和协议处理的主要工作,USB核心向上可为USB外设驱动提供编程接口,向下可为USB主机控制器驱动提供编程接口,它可以通过全局变量维护整个系统的USB外设信息,从而完成设备的热插拔控制和总线数据传输控制等驱动。
[0026]USB外设模块130,用于为OTG功能提供USB外设端的功能支持,USB外设也是USB控制器的上层软件功能,可以和USB主机模块110进行通信,并为OTG设备应用模块150所要实现的应用提供协议支持。
[0027]OTG模块120也是USB控制器的上层软件功能,依赖于USB主机模块110和USB外设模块130,完成主机和外设之间的角色切换,实现两个设备可以互相访问对方的flash空间。
[0028]OTG设备应用模块150中的OTG设备应用指的是对USB功能的应用,本实施例实现的是大容量存储,主要进行文件的传递操作等flash空间操作。
[0029]USB控制器驱动模块140主要完成USB控制器驱动功能,包括完成电子设备作为USB主机的控制器驱动功能、电子设备作为USB外设的控制器驱动功能和OTG对USB控制器的驱动功能。
[0030]具体来说,本实施例的USB OTG装置100可以通过一个USB控制器来实现嵌入式交换机和路由器既可以作为USB主机也可以作为USB外设的功能,以降低硬件实现上的复杂度和设备成本。
[0031]图2为现有技术支持中OTG的设备的驱动程序栈配置示意图,如图2所示,现有技术一般是将支持OTG的设备的软件分为USB主机栈、OTG驱动程序模块、USB外设栈三个独立的大模块,而在不同USB控制器增加OTG功能支持时,则需要对USB主机栈中的USB主机控制器驱动模块、USB外设栈中的USB外设控制器驱动模块以及OTG驱动程序模块分别进行修订,由于USB主机控制器驱动模块位于USB主机栈中,USB外设控制器驱动模块位于USB外设栈中,而USB主机栈中除USB主机控制器驱动模块以外,还包括目标外设主机类驱动模块和USB核心模块;USB外设栈中除USB外设控制器驱动模块以外还包括USB外设类驱动模块和USB外设类接口模块,USB主机栈和USB外设栈中的软件模块耦合度较高,当对USB主机控制器驱动模块、USB外设控制器驱动模块以及OTG驱动模块进行修订时会涉及到和其他软件模块的接口对接及接口调用,导致OTG功能的可修改性较低,进而增加了在不同USB控制器上实现OTG功能的复杂度。
[0032]本实施例通过对USB OTG装置100的模块划分,将USB控制器驱动模块140独立设置,在不同USB控制器增加OTG功能支持时,USB主机模块110、USB外设模块130、0TG模块120等基础模块都不需要做修订,只需要对USB控制器驱动模块140做修订,避免现有技术对USB主机控制器驱动、USB外设控制器驱动以及OTG驱动进行修订时与其他软件模块的接口对接及接口调用, 可以增加OTG功能的可修改性,降低在不同USB控制器上实现OTG功能的复杂度。
[0033]图3为本发明提供的USB OTG装置的一个实施例中USB控制器驱动模块的结构示意图,如图3所示,USB控制器驱动模块140可以包括:USB主机控制器驱动单元141、USB外设控制器驱动单元143和OTG驱动单元142。
[0034]USB主机控制器驱动模块140主要指对USB控制器的软件驱动层,针对不同的USB控制器具有不同的驱动软件,每款不同的USB控制器增加OTG功能支持时,都需要对其对应USB控制器驱动进行相关修订。把这个模块独立设置是为了增加对OTG功能支持的可修改性,USB主机模块、USB外设模块、OTG模块等基础模块都不需要做修订,只需要对USB控制器驱动模块140做修订。
[0035]具体来说,USB主机控制器驱动单元141主要控制插入其中的USB外设,需要将USB主机控制器驱动单元141注册到平台驱动中,通过平台驱动来控制电子设备作为USB主机的消息传递。USB主机控制器驱动单元141直接访问硬件,控制USB主机和USB外设间的底层通信。
[0036]USB外设控制器驱动单元143用于直接访问硬件,控制USB外设和USB主机间的底层通信,向上层提供与硬件相关操作的回调函数,是在USB控制器之上的一层与硬件相关的驱动,主要处理和硬件相关的操作。
[0037]OTG驱动单元142主要实现对OTG功能硬件的访问处理,对寄存器进行直接访问、读写操作,包括命令寄存器、状态寄存器、中断寄存器、设备地址寄存器、端口寄存器、控制器寄存器、模式寄存器等操作,从而实现对USB2.0收发器宏单元接口 +低引脚数接口(USB2.0Transceiver Macrocell Interface+low-pin count interface,简称ULPI)PHY芯片的控制;需要实现OTG收发器功能的初始化,主从切换、主机、外设角色等的设置主要是通过OTG收发器来实现;实现OTG功能注册到平台驱动中。OTG驱动单元142主要实现OTG的功能,实现设备的USB双角色功能,即可以进行主从角色切换,实现对ULPI PHY收发芯片的硬件初始化及硬件寄存器的访问操作;0TG标准规范里面有对OTG的状态变化做了严格规定,所以OTG的功能实现将OTG状态机作为单独的子模块独立出来,OTG驱动单元142主要是通过对OTG控制器驱动的实现来实现OTG的HNP、会话请求协议(Session RequestProtocol, SRP)等相关功能。
[0038]本实施例提供的USB OTG装置中,相对于USB主机模块、OTG模块和USB外设模块独立设置的USB控制器驱动模块140可以包括:USB主机控制器驱动单元141、USB外设控制器驱动单元143和OTG驱动单元142,在不同USB控制器增加OTG功能支持时,USB主机模块、USB外设模块、OTG模块等基础模块都不需要做修订,只需要对USB控制器驱动模块140做修订,避免现有技术对USB主机控制器驱动、USB外设控制器驱动以及OTG驱动进行修订时与其他软件模块的接口对接及接口调用,可以增加OTG功能的可修改性,降低在不同USB控制器上实现OTG功能的复杂度。
[0039]图4为本发明提供的电子设备的一个实施例的结构示意图,如图4所示,本实施例的电子设备200可以包括如图1所示的USB OTG装置100和USB控制器300。
[0040]具体来说,USB OTG装置100和USB控制器300的控制功能,可以使电子设备200处于正确的工作模式(A-设备模式:缺省作为USB主机的工作模式;或^设备模式:缺省作为USB外设的工作模式),并保证电子设备200可以向USB连接线发送或接收数据。
[0041 ] USB控制器300指的是硬件控制器,USB主机模块、USB外设模块、OTG模块的所有功能都是建立在USB控制器300的基础上,通过USB控制器300进行消息传递。为了在电子设备200上实现OTG功能,USB控制器300需要增加一个外围PHY收发芯片,即ULPI PHY收发芯片。同时电子设备200通过USB连接器与外部设备进行通信,作为OTG连接器需要增加一个ID引脚,电子设备200通过ID引脚来判断作为主机还是外设。A-插头中的ID引脚接地,B插头中的ID引脚浮空。当支持OTG设备检测到接地的ID引脚时,即连接着A插头,表示默认的是A设备(主机);而检测到ID引脚浮着的设备,即连接着B插头,则认为是B-设备(外设)。系统一旦连接后,支持OTG的设备的角色还可以通过HNP进行更换。
[0042]可选地,本实施例的电子设备200可以为交换机或路由器。
[0043]现有技术的交换机、路由器设备主要支持标准USB接口,只能作为USB主机,可以连接USB外设。
[0044]本实施能够在交换机和路由器上支持USB OTG功能,将更方便交换机、路由器的存储信息的拷入和拷出,能够与其它支持OTG的产品直接通信,比如手机、打印机、相机、DVD等等,两台交换机和路由器也可以通过OTG连接线直接连接,且实现主从角色后,交换机、路由器设备可以通过OTG连接线访问这些设备的flash空间,其它设备也可以通过OTG连接线访问交换机、路由器设备的flash空间。
[0045]本实施例通过USB OTG装置100和USB控制器300来实现在交换机、路由器中支持OTG功能,使交换机、路由器设备既可以作为USB主机也可以作为USB外设,且不需要通过电缆改变就可以实现主从角色切换功能。
[0046]需要说明的是,本实施例的电子设备200除了可以是交换机、路由器等在现有技术还不支持OTG功能的嵌入式设备,还可以是在现有技术中已经支持OTG功能的设备,该些在现有技术中已经支持OTG功能的设备也可以模拟本方案采用一个USB控制器,且将所有和控制器相关的驱动作为一个独立的模块,方便控制器更换时软件修订的独立性。
[0047]本实施例的电子设备200中的USB OTG装置100可以通过一个USB控制器来实现电子设备200既可以作为USB主机也可以作为USB外设的功能,以降低硬件实现上的复杂度和设备成本。
[0048]进一步地,本实施例的电子设备200还可以包括电源,电源用于电子设备200作为USB外设时为电子设备200供电。
[0049]更进一步地,本实施例的电子设备200与普通USB设备连接时,可以作为USB主机;
[0050]本实施例的电子设备200与支持OTG功能的设备连接时,与支持OTG功能的设备通过主机交换协议实现USB主机和USB外设的角色切换。
[0051]具体来说,在本实施例的电子设备200的第一种可能的应用场景中,本实施例的电子设备200与个人电脑(Personal Computer,简称PC)连接,电子设备200作为USB外设,这种应用中PC设备是标准USB主机,电子设备200被当作USB外设,由USB外设自身提供电源,即USB外设的CPU系统运行起来了,这样可以在PC上直接操作电子设备200的flash空间,这种将极大的方便对flash的操作,例如要升级该电子设备200,可以直接将对应的bin文件拷贝到设备,然后重启运行该电子设备200,即可达到升级的作用。[0052]本实施例中的电子设备200作为USB外设时通过自带电源采用自身供电的方式来实现OTG功能,即设备本身要先运行起来,而不是通过USB主机来供电。
[0053]可以理解的是,在另一种可能的实现方式中,本实施例中的电子设备200作为USB外设时本身不需要供电,而直接从USB主机端来获取电源。
[0054]在本实施例的电子设备200的第二种可能的应用场景中,将本实施例的电子设备200与普通USB设备连接时,电子设备200可以作为USB主机。
[0055]在本实施例的电子设备200的第三种可能的应用场景中,本实施例的电子设备200可以进行主从角色切换,两台电子设备200通过支持OTG功能的Micro A到Micro B连接器直接连接,默认情况下,连接着Micro A插头的A-设备作为USB主机,另一台连接着Micro B插头的B-设备作为USB外设,A-设备作为USB主机,所以用户可以直接操作B-设备的flash空间;同时B-设备即USB外设也可以通过HNP协议,申请作为USB主机,而A-设备则逻辑上变成了 USB外设,这时用户可以通过B-设备操作A-设备的flash空间。这种应用场景可以达到两个电子设备200互相访问对方的flash空间。
[0056]两个电子设备200都是OTG设备,支持对称操作。因为两个OTG设备互联,当用户操作一个OTG设备,用户通过使用运行在第一个OTG设备的应用可以访问或控制第二个OTG设备。当第一个OTG设备正在使用总线,若用户发出在第二个OTG设备的一个应用,那么第二个OTG设备提示用户是否可以终止当前的操作。若用户允许,那么当前操作被终止,且第二个OTG设备获取接口控制权。
[0057]本实施例提供的电子设备200,可以包括如图1所示的USB OTG装置100和USB控制器300,在不同USB控制器增加OTG功能支持时,USB主机模块、USB外设模块、OTG模块等基础模块都不需要做修订,只需要对USB控制器驱动模块做修订,避免现有技术对USB主机控制器驱动、USB外设控制器驱动以及OTG驱动进行修订时与其他软件模块的接口对接及接口调用,可以增加OTG功能的可修改性,降低在不同USB控制器上实现OTG功能的复杂度。
[0058]图5为本发明提供的实现OTG功能的方法的一个实施例的结构示意图,如图5所示,本实施例的实现OTG功能的方法,适用于如图4所示的电子设备,该方法可以包括:
[0059]S501、根据USB控制器的配置信息确定在USB控制器上实现OTG功能的配置文件。
[0060]具体来说,在不同类型电子设备的USB控制器上实现OTG功能,驱动所需的配置文件不同,所以在电子设备上实现OTG功能之前首先要根据电子设备中的USB控制器的配置信息确定在该USB控制器上实现OTG功能的配置文件。
[0061]S502、根据配置文件修订USB控制器驱动模块。
[0062]本实施例中的USB控制器驱动模块为相对于USB主机模块、OTG模块和USB外设模块独立设置,所以在电子设备上实现OTG功能时只需对电子设备的USB OTG装置中的USB控制器驱动模块进行修订即可完成对USB控制器的驱动,USB主机模块、OTG模块和USB外设模块等基础模块都不需要做修订。
[0063]本实施例提供的实现OTG功能的方法,通过根据USB控制器的配置信息确定在USB控制器上实现OTG功能的配置文件,再根据配置文件修订USB控制器驱动模块,避免现有技术对USB主机控制器驱动、USB外设控制器驱动以及OTG驱动进行修订时与其他软件模块的接口对接及接口调用,可以增加OTG功能的可修改性,降低在不同USB控制器上实现OTG功能的复杂度。
[0064]进一步地,S502可以包括:根据配置文件修订USB控制器驱动模块中的USB主机控制器驱动单元、OTG驱动单元和USB外设控制器驱动单元。
[0065]更进一步地,该方法还包括:将电子设备与普通USB设备连接,以使电子设备作为USB主机;或者,
[0066]将电子设备与支持OTG功能的设备连接,以使电子设备与支持OTG功能的设备通过主机交换协议实现USB主机和USB外设的角色切换。
[0067]本实施例提供的实现OTG功能的方法,通过根据USB控制器的配置信息确定在USB控制器上实现OTG功能的配置文件,再根据配置文件修订USB控制器驱动模块中的USB主机控制器驱动单元、OTG驱动单元和USB外设控制器驱动单元,避免现有技术对USB主机控制器驱动、USB外设控制器驱动以及OTG驱动进行修订时与其他软件模块的接口对接及接口调用,可以增加OTG功能的可修改性,降低在不同USB控制器上实现OTG功能的复杂度。
[0068]需要说明的是,上述各实施例对应的结构示意图仅为一种示意,各部分或模块的连接关系不限于图中示出的形式,可以以实际应用中的情况为准。
[0069]在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0070]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0071]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0072]上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory, ROM)、随机存取存储器(Random Access Memory, RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0073]本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0074]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【权利要求】
1.一种USB OTG装置,其特征在于,包括:通用串行总线USB主机模块、OTG模块、USB外设模块和相对于所述USB主机模块、所述OTG模块和所述USB外设模块独立设置的USB控制器驱动模块; 所述USB主机模块,用于为OTG功能提供USB主机端的功能支持; 所述USB外设模块,用于为OTG功能提供USB外设端的功能支持; 所述OTG模块,用于基于所述USB主机模块和所述USB外设模块的功能支持,实现OTG功能; 所述USB控制器驱动模块,用于为实现OTG功能提供控制器驱动。
2.根据权利要求1所述的USBOTG装置,其特征在于,所述USB控制器驱动模块,包括:USB主机控制器驱动单元、USB外设控制器驱动单元和OTG驱动单元; 所述USB主机控制器驱动单元,用于为实现OTG功能中的USB主机端功能提供控制器驱动; 所述USB外设控制器驱动单元,用于为实现OTG功能中的USB外设端功能提供控制器驱动; 所述OTG驱动单元,用于为实现OTG功能中除所述USB主机端功能和USB外设端功能之外的功能提供控制器驱动。
3.根据权利要求1所述的USBOTG装置,其特征在于,所述USB OTG装置,还包括:0TG设备应用模块;. 所述USB主机模块和/或所述USB外设模块,还用于为所述OTG设备应用模块所要实现的应用提供协议支持。
4.一种电子设备,其特征在于,包括如权利要求1-3中任一项所述的USB OTG装置和通用串行总线USB控制器。
5.根据权利要求4所述的电子设备,其特征在于,所述电子设备为交换机或路由器。
6.根据权利要求4或5所述的电子设备,其特征在于,所述电子设备还包括电源,所述电源用于所述电子设备作为USB外设时为所述电子设备供电。
7.根据权利要求6所述的电子设备,其特征在于,所述电子设备与普通USB设备连接时,作为USB主机; 所述电子设备与支持OTG功能的设备连接时,与所述支持OTG功能的设备通过主机交换协议实现USB主机和USB外设的角色切换。
8.一种实现OTG功能的方法,适用于如权利要求4-7任一项所述的电子设备,其特征在于,包括: 根据通用串行总线USB控制器的配置信息确定在所述USB控制器上实现OTG功能的配置文件; 根据所述配置文件修订USB控制器驱动模块。
9.根据权利要求8所述的方法,其特征在于,所述根据所述配置文件修订USB控制器驱动模块,包括: 根据所述配置文件修订所述USB控制器驱动模块中的USB主机控制器驱动单元、OTG驱动单元和USB外设控制器驱动单元。
10.根据权利要求8或9所述的方法,其特征在于,还包括:将所述电子设备与普通USB设备连接,以使所述电子设备作为USB主机;或者, 将所述电子设备与支持OTG功能的设备连接,以使所述电子设备与所述支持OTG功能的设备通过主机交换协议实现US B主机和USB外设的角色切换。
【文档编号】G06F13/40GK103473202SQ201310396425
【公开日】2013年12月25日 申请日期:2013年9月3日 优先权日:2013年9月3日
【发明者】林双凤 申请人:福建星网锐捷网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1