一种输出电流的配置方法及终端与流程

文档序号:12595081阅读:221来源:国知局
一种输出电流的配置方法及终端与流程
本发明涉及电子领域中的供电管理技术,尤其涉及一种输出电流的配置方法及终端。
背景技术
:日常生活中,手机、平板电脑、PDA等终端的应用越来越普及。随着通信技术的不断发展,终端可以接入外接设备的功能也越来越被广泛的使用。目前,现有的绝大多数终端采用的外设接口都是通用串行总线(USB,UniversalSerialBus),如miniUSB接口、microUSB接口等。USB接口可以提供5V的充电电源,可支持对外接设备的即插即用。具体的,USBHost功能已经成为终端的常见功能,当终端处于USBHost模式时,为了驱动外接的USB的外接设备,需要给外接设备提供电压和电流,通常电压是5V,电流为500毫安。然而,在实际使用中,由于终端工作在USBHost模式时,提供的输出电流通常为固定值,而不同的外接设备具有不同的充电或者功耗需求,因此,终端提供的单一输出电流无法满足多种不同外设接口对应的外接设备的充电需求。例如,当USB的外接设备耗电不大时,500毫安的电流完全满足需求,而当外设耗电较大时,比如移动硬盘(尤其是USB3.0的移动硬盘);或者,当终端通过USBHub扩展的接口外接多个外接设备时,外接设备可能因为供电不足而无法正常驱动使用,同时,若终端为需求较小的外接设备提供的输出电流为一个较大的输出电流大小时,还存在安全隐患。技术实现要素:为解决上述技术问题,本发明实施例期望提供一种输出电流的配置方法及 终端,能满足外接设备各自的供电需求,并能提高对外接设备的供电安全性。本发明的技术方案是这样实现的:本发明实施例提供一种输出电流的配置方法,所述方法包括:检测到接入外接设备时,获取外接设备的速率类型;根据所述外接设备的速率类型,配置与所述外接设备的速率类型对应的输出电流。在上述方案中,所述根据所述外接设备的速率类型,配置与所述外接设备的速率类型对应的输出电流,包括:所述外接设备的速率类型为相对低速率类型,配置预设的低输出电流;所述外接设备的速率类型为相对高速率类型,配置预设的高输出电流。在上述方案中,所述检测到接入外接设备时,获取外接设备的速率类型之前,所述方法还包括:检测是否有所述外接设备接入。在上述方案中,所述检测是否有所述外接设备接入之后,所述方法还包括:未检测到接入所述外接设备时,配置默认的输出电流。在上述方案中,所述外接设备为支持通用串行总线USB接口接入的设备。本发明实施提供一种终端,所述终端包括:充电管理芯片软件模块,及与所述充电管理芯片软件模块连接的外设接口驱动软件模块;所述外设接口驱动软件模块,用于检测到接入外接设备时,获取外接设备的速率类型;所述充电管理芯片软件模块,用于根据所述外设接口驱动软件模块获取的所述外接设备的速率类型,配置与所述外接设备的速率类型对应的输出电流至所述外设接口驱动软件模块。在上述方案中,所述外设接口驱动软件模块包括外接驱动,所述充电管理芯片软件模块包括外部函数接口,所述外接驱动与所述外部函数接口连接;所述充电管理芯片软件模块,具体用于根据所述外设接口驱动软件模块的获取的所述外接设备的速率类型,通过所述外部函数接口配置与所述外接设备 的速率类型对应的输出电流至所述外接驱动;相应的,所述外设接口驱动软件模块获取的所述外接设备的速率类型为相对低速率类型,通过所述外部函数接口配置预设的低输出电流至所述外接驱动;所述外设接口驱动软件模块获取的所述外接设备的速率类型为相对高速率类型,通过所述外部函数接口配置预设的高输出电流至所述外接驱动。在上述方案中,所述外设接口驱动软件模块,还用于所述检测到接入外接设备时,获取外接设备的速率类型之前,检测是否有所述外接设备接入。在上述方案中,所述充电管理芯片软件模块,还用于所述外设接口驱动软件模块检测是否有所述外接设备接入之后,所述外设接口驱动软件模块未检测到接入所述外接设备时,配置默认的输出电流至所述外设接口驱动软件模块。在上述方案中,所述终端为支持通用串行总线USB接口接入的设备。本发明实施例提供的一种输出电流的配置方法及终端,终端在检测到接入外接设备时,获取外接设备的速率类型;终端根据外接设备的速率类型,配置与该外接设备的速率类型对应的输出电流。采用上述技术实现方案,由于终端具有在USBVBUS上提供多档电流输出能力,将输出电流能力从固定值变更设计为可调整的输出电流,具体的由于终端可以根据外接设备的速率类型,动态调整VBUS输出的电流最大值,因此,能满足外接设备各自的供电需求,并能提高对外接设备的供电安全性。附图说明图1为本发明实施例提供的一种输出电流的配置方法的流程图一;图2为本发明实施例提供的一种输出电流的配置方法的流程图二;图3为本发明实施例还提供的一种输出电流的配置方法的流程图;图4为本发明实施例提供的一种终端的结构示意图一;图5为本发明实施例提供的一种终端的结构示意图二;图6为本发明实施例提供的一种终端的结构示意图三。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。实施例一本发明实施例提供了一种输出电流的配置方法,如图1所示,该方法可以包括:S101、终端检测到接入外接设备时,获取外接设备的速率类型。需要说明的是,本发明实施例提供的输出电流的配置方法应用场景为:终端中设置有外设接口,当外接设备通过外设接口连接终端时,终端需给该外接设备供电,以使得该外接设备能够正常工作。同时,终端中的外设接口与外接设备的接口相匹配。可选的,终端为支持USB接口接入的设备,具体的,终端可以为具有外设接口的移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(PDA)、平板电脑(PAD)、便携式多媒体播放器(PMP)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于具有外设接口的固定类型的终端。优选的,这里的外接设备为支持通用串行总线(USB,UniversalSerialBus)接口接入的无源的用户设备。例如,U盘,移动硬盘,键盘、鼠标等等。终端的外设接口可以为USB接口。具体的,应用于本发明实施例提供的输出电流的方法的外设接口都可以,具体的外设接口的实现方式本发明实施例不作限制。本发明实施例以外设接口为USB接口为例,进行说明。USB设备分为HOST(主设备)和SLAVE(从设备),只有当一台HOST与一台SLAVE连接时才能实现数据的传输。需要说明的是,如表1所示,USB接口有4个引脚1,2,3和4。其中,VBUS引脚为电源供电引脚,GND为接地,D+为正电压数据线,D-为负电压 数据线,其中,数据线是通过传递高低电平来读写数据的。表1触点主设备功能从设备功能1VBUS(4.75-5.25V)VBUS(4.4-5.25V)2D-D-3D+D+4GNDGND在本发明实施例中,终端作为HOST,外接设备作为SLAVE。当终端处于USBHOST模式时,USBHost对外接设备输出的电流一般由终端中的充电管理芯片提供,不同的充电管理芯片支持的VBUS电流值也不尽相同,常见的为500毫安、1000毫安、1500毫安,也有部分充电管理芯片可以提供更多档的选择。其中,USB2.0协议定义的链路电流为500毫安,USB3.0协议定义的链路电流为900毫安。当用户在终端上接入外接设备时,即终端检测到接入外接设备时,该终端可以通过USB接口获取外接设备的速率类型。可选的,本发明实施例中,终端的USB接口驱动软件模块中的HUB驱动遵循该USB接口的协议,通过GET_PORT_STATUS请求获取外接设备的速率类型(其中,GET_PORT_STATUS是USB协议中定义的Hub状态描述符,其中上报了速率识别的结果),其中,USB接口的外接设备的速率类型可以包括:USB_SPEED_SUPER;USB_SPEED_HIGH;USB_SPEED_LOW;USB_SPEED_FULL。其中,本领域技术人员可知:USB_SPEED_SUPER可以为USB3.0的速率类型,USB_SPEED_HIGH、USB_SPEED_LOW及USB_SPEED_FULL可以为USB2.0的速率类型。示例性的,用户将USB2.0的U盘接入到平板电脑上时,平板电脑中通过与U盘连接的USB2.0接口,获取该U盘的速率类型USB_SPEED_HIGH。S102、终端根据外接设备的速率类型,配置与该外接设备的速率类型对应的输出电流。终端获取外接设备的速率类型之后,该终端可以根据外接设备的速率类型,配置与该外接设备的速率类型对应的输出电流(电流值),即终端根据接入的外接设备的速率类型,动态的为外接设备配置相应的输出电流。具体的,外接设备的速率类型为相对低速率类型,配置预设的低输出电流。外接设备的速率类型为相对高速率类型,配置预设的高输出电流。具体的外接设备的速率类型可以由其外设接口的设定来决定。需要说明的是,外接设备的速率类型与输出电流之间的对应关系是通过接口协议规定的,输出电流的取值满足接口协议上的设定。其中,当外设接口为USB接口时,由于USB_SPEED_SUPER可以为USB3.0的速率类型,USB_SPEED_HIGH、USB_SPEED_LOW及USB_SPEED_FULL可以为USB2.0的速率类型。因此,根据USB3.0的协议,外接设备的速率类型为USB_SPEED_SUPER时,终端配置1000毫安给该外接设备供电。或者,根据USB2.0的协议,外接设备的速率类型为USB_SPEED_HIGH、USB_SPEED_LOW或USB_SPEED_FULL时,终端配置500毫安给该外接设备供电。特别的,本发明实施例中的低速率和高速率的限定都是相对的,具体的由协议规定的速率类型决定,例如,新修改的USB2.0协议从原来的HighSpeed变更为将原本属于USB1.1的Low/FullSpeed也纳入其中,HighSpeed字面上也是高速,而USB3.0是SuperSpeed,,字面上是超速。这里为USB2.0的速率类型相对于USB3.0超速就是相对低速率类型,USB3.0的速率类型就是相对高速率类型了。因此,本发明实施例中的低速类类型和高速率类型由同一协议标准约束的外设接口的相对比较决定。需要说明的是,终端硬件设计时需采用具有多档VBUS电流输出能力的充 电管理芯片,以TI某款充电管理芯片为例,终端通过配置该充电管理芯片中的寄存器值可以控制输出的VBUS引脚的最大电流输出值。在充电管理芯片的软件驱动程序中,封装更新该寄存器值的接口,并将该接口提供给USB软件驱动程序调用,就实现了终端给外接设备的供电。在本发明实施例中,在USB软件驱动程序中,终端根据连接外接设备的速率类型,动态的调用充电管理芯片驱动提供的接口,配置给外接设备,充电管理芯片提供不同的电流输出值,从而使得终端可以在VBUS引脚上为不同速率类型的外接设备提供不同的电流输出能力。需要说明的是,充电管理芯片中的寄存器的值的设定可以根据研发人员的设计而定,本发明实施例并不作限制。进一步地,如图2所示,终端检测到接入外接设备时,获取外接设备的速率类型之前,上述方法还包括S103,且S103之后,上述方法还包括S104,具体如下:S103、终端检测是否有外接设备接入。终端中的外设接口驱动软件模块可以通过D+识别是否有外接设备接入。需要说明的是,本发明实施例提供的一种输出电流的配置方法是在有外接设备接入的情况下实施的。在终端检测到有接入外接设备时,终端就根据外设备的速率类型,动态为不同的外接设备配置输出电流,以供电给不同的外接设备。S104、终端未检测到接入外接设备时,配置默认的输出电流。终端检测是否有外接设备接入之后,若是终端没有设别到或检测到有外接设备接入,则终端为VBUS引脚配置终端中默认协议的输出电流,例如500毫安或1000毫安,具体的输出电流的大小是有终端的设计而定的,本发明实施例并不作限制。需要说明的是,本发明实施例中的S104和S101-S102为S103之后的可选步骤,根据实际检测情况选择其中一个步骤执行;也就是说,在本发明实施例中,S103之后,可以执行S104,也可以执行S101-S102,具体的执行顺序可以 根据实际情况而定,本发明实施例不作限制;并且,S101-S102或S104执行完后,本次处理流程就结束了。需要说明的是,本发明实施例中的终端作为外接设备的电源部分,为外接设备供电。进一步地,在本发明实施例提供的一种输出电流的配置方法中,若是终端获取的外接设备的速率类型需要的输出电流高于在终端定义的相应预设输出电流,或者终端通过多端口转发器同时与多个外接设备连接时,终端需配置的输出电流会很大,在这种情况下,终端可以通过用户菜单设置输出电流的大小。例如,用户将一个USB2.0的Hub(多端口的转发器)连接到USBHost(手机),在Hub扩展的USB插槽上连接USB键盘、鼠标、移动硬盘,此时发现移动硬盘应为供电问题存在提示灯闪烁问题,在用户菜单上选择增大VBUS引脚的输出电流,以满足三个USB外设同时工作的电流需求。本发明实施例所提供的一种输出电流的配置方法,终端在检测到接入外接设备时,获取外接设备的速率类型;终端根据外接设备的速率类型,配置与该外接设备的速率类型对应的输出电流。采用上述技术实现方案,由于终端具有在USBVBUS上提供多档电流输出能力,将输出电流能力从固定值变更设计为可调整的输出电流,具体的由于终端可以根据外接设备的速率类型,动态调整VBUS输出的电流最大值,因此,能满足外接设备各自的供电需求,并能提高对外接设备的供电安全性需要说明的是,终端的USBHost功能在某些情况下,还能作为临时的“充电宝”给其他终端或设备充电。这样,由于终端可以根据用户菜单的选择调整VBUS输出的电流最大值,因此,满足了多个外接设备同时连接终端时,因供电不足而导致的无法使用问题。进一步地,由于终端还可以提供充电宝的功能。因此,以外设接口为USB为例,终端还可以提供充电宝时,本发明实施例还可以提供一种输出电流的配置方法,如图3所示,该方法可以包括:S201、终端通过设置USB接口的D+引脚与D-引脚短接,将该USB接口作为充电口使用。本领域技术人员可知的是,终端的USB接口中的D+引脚与D-引脚短接时,终端的USB接口变为向外的充电口,可以为外接设备进行充电。这里的外接设备可以为终端或其他有源的用户设备。当终端作为DCPCharger,即交流充电器使用时,该终端的外设接口,即USB接口就作为充电口,为外设的有源终端或用户设备进行充电操作。需要说明的是,由于终端的电量存储也是有限的,因此,实现本发明实施例的终端的电量值需大于预设阈值才能进行。可选的,预设阈值可以为终端总电量的20%,具体的预设阈值的选择可以根据实际情况而设置,本发明实施例不作限制。S202、终端检测到USB接口有外接设备接入时,为该外接设备配置相应的输出电流,其中,该输出电流的大小为用户设置的。当终端作为DCPCharger,即交流充电器使用时,该终端检测到USB接口有外接设备接入时,为该外接设备显示用户菜单,用户可以在用户菜单上设置该外接设备需要的输出电流的大小,然后终端根据获取的用户设置的输出电流的大小,为这个外接设备配置同样大小的输出电流。因此,终端为有源外接设备提供充电服务的输出电流的配置也是动态的。需要说明的是,终端中设置有用户菜单模块,该用户菜单模块与充电管理芯片通过VBUS引脚连接,用户通过用户菜单模块设置输出电流的大小,终端的充电管理芯片通过VBUS引脚,获取输出电流的大小,并提供该输出电流至外设接口驱动软件模块,实现供电需求。可以理解的是,在“充电宝”模式下(即终端作为交流充电器使用时),终端可以根据用户通过用户菜单的选择的输出电流的大小,调整通过VBUS引脚输出的输出电流最大值,以便为外设备供电,由于终端使“充电宝”功能时,可以对不同的外接设备进行动态的输出电流的调整,因此,终端对外输出的充电电流(输出电流)可以兼顾安全性和高效性。示例性的,手机开机“充电宝”功能,用户在用户菜单选择较大电流充电1500毫安,将USB外接设备连接到手机,外接设备识别手机为DCPCharger后,开始1500毫安充电,如果用户在用户菜单选择较小电流充电500毫安,将USB外接设备连接到手机,该外接设备识别手机为DCPCharger后,开始500毫安充电。实施例二如图4所示,本发明实实例提供一种终端1,该终端1可以包括:充电管理芯片软件模块11,及与所述充电管理芯片软件模块11连接的外设接口驱动软件模块10。所述外设接口驱动软件模块10,用于检测到接入外接设备时,获取外接设备的速率类型。所述充电管理芯片软件模块11,用于根据所述外设接口驱动软件模块10获取的所述外接设备的速率类型,配置与所述外接设备的速率类型对应的输出电流至所述外设接口驱动软件模块10。可选的,如图5所示,所述外设接口驱动软件模块10包括外接驱动100,所述充电管理芯片软件模块11包括外部函数接口110,所述外接驱动100与所述外部函数接口110连接。所述充电管理芯片软件模块11,具体用于根据所述外设接口驱动软件模块10的获取的所述外接设备的速率类型,通过所述外部函数接口110配置与所述外接设备的速率类型对应的输出电流至所述外接驱动100。相应的,所述外设接口驱动软件模块10获取的所述外接设备的速率类型为相对低速率类型,通过所述外部函数接口110配置预设的低输出电流至所述外接驱动100;所述外设接口驱动软件模块10获取的所述外接设备的速率类型为相对高速率类型,通过所述外部函数接口110配置预设的高输出电流至所述外接驱动100。可选的,所述外设接口驱动软件模块10,还用于所述检测到接入外接设备时,获取外接设备的速率类型之前,检测是否有所述外接设备接入。可选的,所述充电管理芯片软件模块11,还用于所述外设接口驱动软件模块10检测是否有所述外接设备接入之后,所述外设接口驱动软件模块10未检测到接入所述外接设备时,配置默认的输出电流至所述外设接口驱动软件模块10。可选的,所述终端1为支持USB接口接入的设备。具体的,终端可以为具有外设接口的移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(PDA)、平板电脑(PAD)、便携式多媒体播放器(PMP)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于具有外设接口的固定类型的终端。需要说明的是,终端硬件设计时需采用具有多档VBUS电流输出能力的充电管理芯片软件模块11,以TI某款充电管理芯片软件模块为例,终端通过配置该充电管理芯片软件模块11中的寄存器值可以控制输出的VBUS引脚的最大电流输出值。在充电管理芯片软件模块11的软件驱动程序中,封装更新该寄存器值的接口,并将该接口提供给外设接口驱动软件模块10的USB软件驱动程序调用,就实现了终端给外接设备的供电。在本发明实施例中,在USB软件驱动程序中,终端根据连接外接设备的速率类型,动态的调用充电管理芯片软件模块11的充电管理芯片驱动提供的VBUS引脚,配置给外接设备,充电管理芯片提供不同的电流输出值,从而使得终端可以在VBUS引脚上为不同速率类型的外接设备提供不同的电流输出能力。进一步地,如图6所示,终端1中还设置有用户菜单模块12,该用户菜单模块12与充电管理芯片软件模块11通过外设接口111连接,也与外设接口驱动软件模块10连接。用户通过用户菜单模块12设置输出电流的大小,终端的充电管理芯片软件模块11通过外设接口111,获取输出电流的大小,并提供该输出电流至外设接口驱动软件模块10,实现供电需求。具体的,通过设置USB接口的D+引脚与D-引脚短接,将该USB接口作 为充电口使用,以及该外设接口驱动软件模块10检测到USB接口有外接设备接入时,充电管理芯片软件模块11为该外接设备配置相应的输出电流,其中,该输出电流的大小为用户设置的。当作为DCPCharger,即交流充电器使用时,外设接口驱动软件模块10检测到USB接口有外接设备接入时,与外设接口驱动软件模块10连接的用户菜单模块12为该外接设备显示用户菜单,用户可以在用户菜单上设置该外接设备需要的输出电流的大小,然后充电管理芯片软件模块11根据用户菜单模块12获取的用户设置的输出电流的大小,为这个外接设备配置同样大小的输出电流。需要说明的是,充电管理芯片软件模块11中包括外设接口111和外部函数接口110,其中,外部函数接口可以封装在外设接口111中。充电管理芯片软件模块11通过外设接口111与用户菜单模块12进行输出电流配置的信息传输,而在充电管理芯片软件模块11通过外部函接口110与外设接口驱动软件模块10的外设驱动100进行输出电流配置的信息传输。具体的,Linux系统中,充电管理芯片软件模块11的充电管理芯片驱动代码中,配置VBUS电流输出的接口可以申明为外部函数接口110(VBUS引脚),同时充电管理芯片软件模块11通过SYSFS接口(外设接口111)将该接口提供给用户程序。在Linux系统中,外设接口驱动软件模块10中,USB外设速率可以在Hub(外接驱动100)的代码中获得,可以根据不同速率调用充电管理芯片软件模块11申明的外部函数接口110,配置不同的VBUS电流输出值。在Android系统中,用户程序可以实现为一个Activity应用,在该Activity应用中通过Android系统调用充电管理芯片软件模块11提供的SYSFS接口,配置不同的VBUS电流输出值。本发明实施例所提供的一种终端,终端在检测到接入外接设备时,获取外接设备的速率类型;终端根据外接设备的速率类型,配置与该外接设备的速率类型对应的输出电流。采用上述技术实现方案,由于终端具有在USBVBUS上提供多档电流输出能力,将输出电流能力从固定值变更设计为可调整的输出电流,具体的由于终端可以根据外接设备的速率类型,动态调整VBUS输出的电流最大值,因此,能满足外接设备各自的供电需求,并能提高对外接设备的供 电安全性本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1