CN111381853B - 适配器升级方法和装置、电子设备及计算机可读存储介质 - Google Patents
适配器升级方法和装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111381853B CN111381853B CN202010181014.3A CN202010181014A CN111381853B CN 111381853 B CN111381853 B CN 111381853B CN 202010181014 A CN202010181014 A CN 202010181014A CN 111381853 B CN111381853 B CN 111381853B
- Authority
- CN
- China
- Prior art keywords
- adapter
- processor
- charging
- firmware
- serial port
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 11
- 238000012790 confirmation Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 description 24
- 230000005540 biological transmission Effects 0.000 description 18
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000008054 signal transmission Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- DWDGSKGGUZPXMQ-UHFFFAOYSA-N OPPO Chemical compound OPPO DWDGSKGGUZPXMQ-UHFFFAOYSA-N 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004622 sleep time Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0042—Universal serial bus [USB]
Abstract
本申请涉及一种适配器升级方法,包括:当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,其中,当所述通用输入输出端口处于所述串口模式时,所述应用处理器通过预先配置的串口设备文件调用所述通用输入输出端口;通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据,所述固件升级数据用于对所述适配器的固件进行升级。本申请还公开了一种适配器升级装置、电子设备以及计算机可读存储介质。本申请提高了适配器升级的成功率。
Description
技术领域
本申请涉及电子设备技术领域,特别是涉及一种适配器升级方法和装置、电子设备以及计算机可读存储介质。
背景技术
随着互联网技术的快速发展,人们对电子设备的依赖性越来越高,为了满足电子设备快速充电的需求,一些厂商提供具有快速充电功能的电子设备,该电子设备需要与定制的适配器搭配使用。以OPPO的VOOC闪充技术为例,近些年,VOOC技术由VOOC_1.0版本发展至VOOC_4.0版本,但是VOOC_1.0版本的电子设备的适配器不能应用于VOOC_4.0版本的电子设备,这导致资源浪费。于是,一些厂商推出了适配器的升级方案,但是,传统的升级方案的成功率较低。
发明内容
本申请实施例提供一种适配器升级方法、装置、电子设备以及计算机可读存储介质,可以提高适配器升级的成功率。
一种适配器升级方法,包括:
当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,其中,当所述通用输入输出端口处于所述串口模式时,所述应用处理器通过预先配置的串口设备文件调用所述通用输入输出端口;
通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据,所述固件升级数据用于对所述适配器的固件进行升级。
一种适配器升级装置,包括:
切换模块,用于当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,其中,当所述通用输入输出端口处于所述串口模式时,所述应用处理器通过预先配置的串口设备文件调用所述通用输入输出端口;
发送模块,用于通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据,所述固件升级数据用于对所述适配器的固件进行升级。
一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行任一项所述的适配器升级方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行任一项所述的适配器升级方法的步骤。
上述适配器升级方法、装置、电子设备以及计算机可读存储介质,当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据,其中,当通用输入输出端口处于串口模式时,应用处理器通过预先配置的串口设备文件调用通用输入输出端口,这样,在应用处理器通过充电处理器将固件升级数据传输至适配器的过程中,将通用输入输出端口作为串口,专门执行固件升级数据的传输任务,提高了固件升级数据传输的可靠性,从而提高了适配器升级的成功率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中适配器升级方法的流程图;
图2为一个实施例中适配器升级系统的结构框图;
图3为一个实施例中串口设备文件的配置流程图;
图4为另一个实施例中适配器升级方法的流程图;
图5为又一个实施例中适配器升级方法的流程图;
图6为一个实施例中适配器升级装置的结构框图;
图7为一个实施例中电子设备的内部结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例中的电子设备可为移动终端,比如手机、平板电脑、笔记本电脑、可穿戴设备等。该电子设备设置有应用处理器以及充电处理器,应用处理器用于管理电子设备的应用程序相关的功能,比如应用程序的下载等,充电处理器用于管理电子设备充电相关的功能。具体地,当电子设备的应用处理器检测到适配器需要升级时,将电子设备的应用处理器的通用输入输出端口由充电模式切换至串口模式,其中,当通用输入输出端口处于串口模式时,应用处理器通过预先配置的串口设备文件调用通用输入输出端口;电子设备的应用处理器通过切换至串口模式下的通用输入输出端口向电子设备的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据,固件升级数据用于对适配器的固件进行升级。
图1为一个实施例中适配器升级方法的流程图。图1所示的适配器升级方法可应用于上述电子设备中,包括:
步骤102,当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,其中,当所述通用输入输出端口处于所述串口模式时,所述应用处理器通过预先配置的串口设备文件调用所述通用输入输出端口。
其中,适配器是电子设备的供电电压变换设备。移动终端的应用处理器用于管理移动终端的应用程序相关的功能,比如应用程序的下载等。通用输入输出端口,即GPIO(General purpose inputs/outputs),用于内部单片机和外设进行通信,一个通用输入输出端口可设置有多个引脚,同一时刻只有一个功能映射到同一引脚。
在一个实施例中,如图2所示,移动终端可包括应用处理器以及充电处理器,充电处理器用于管理移动终端充电相关的功能。应用处理器以及充电处理器均可以与适配器进行通信。移动终端内部设置有USB(Universal Serial Bus,通用串行总线)开关,该USB开关用于切换第一通道以及第二通道。第一通道是应用处理器与USB开关的连接通道,当USB开关切换至第一通道时,应用处理器可通过充电接口的DM/DP线与适配器进行通信;第二通道是充电处理器与USB开关的连接通道,当USB开关切换至第二通道时,充电处理器可通过充电接口的DM/DP线与适配器进行通信。当移动终端与适配器连接时,USB开关由第一通道切换至第二通道,以实现充电处理器与适配器进行通信。
在一个实施例中,通用输入输出端口可用作两种功能:充电功能以及串口功能。当通用输入输出端口用作充电功能时,通用输入输出端口处于充电模式,该通用输入输出端口用于实现充电过程中应用处理器与充电处理器之间信号的传输,比如时钟信号与数据信号的传输;当通用输入输出端口用作串口功能时,通用输入输出端口处于串口模式,该通用输入输出端口实现应用处理器与充电处理器之间固件升级数据的传输。
在一个实施例中,移动终端的充电功能可包括普通充电功能以及快速充电功能,快速充电功能的速度大于普通充电功能的速度。
在一个实施例中,当通用输入输出端口处于串口模式时,应用处理器通过预先配置的串口设备文件调用通用输入输出端口。串口设备文件是以文件的形式作为一个可操作串口的接口,其可以是TTY(TeleTYpe)设备文件。
具体地,如图3所示,对通用输入输出端口连接的串口控制器进行相关属性的配置,接着加载该串口控制器的驱动,即生成串口设备文件。可选地,在充电处理器的配置文件中删除对该通用输入输出端口的控制文件,将该对通用输入输出端口的控制文件添加至串口控制器的配置文件中,当充电功能需要使用通用输入输出端口时,需要映射到串口控制器的配置文件中。同时,在串口控制器的配置文件中设置操作函数,该操作函数使得通用输入输出端口具备充电功能以及串口功能。可选地,串口模式下的通用输入输出端口的休眠间隔时长,大于充电模式下的通用输入输出端口的休眠间隔时长,即在固件升级数据传输的过程中,通用输入输出端口是不休眠的,该功能可通过设置休眠时间的函数来实现。可选地,串口模式下的通用输入输出端口会屏蔽充电模式下的逻辑切换,比如USB开关的切换等。可选地,还可对串口模式下的通用输入输出端口的输入输出方向、上下拉模式以及驱动能力等进行配置。
步骤104,通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据,所述固件升级数据用于对所述适配器的固件进行升级。
在一个实施例中,应用处理器获取固件升级数据,该固件升级数据可通过Wi-Fi、蜂窝移动数据等下载得到。
在一个实施例中,应用处理器通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器分批发送固件升级数据,以使充电处理器向适配器分批发送固件升级数据。可以理解,固件升级数据的传输过程中,充电处理器作为媒介,将应用处理器发送的固件升级数据发送至适配器,这样可以利用充电处理器与适配器之间的通路,无需建立新的通信链路。
在一个实施例中,当检测到适配器升级完成时,将应用处理器的通用输入输出端口由串口模式切换至充电模式,使得移动终端恢复充电状态。
在一个实施例中,如图4所示,步骤402,当检测到移动终端与适配器进行连接时,将USB开关由第一通道切换至第二通道,使得移动终端开始充电;步骤404,当检测到适配器需要升级时,应用处理器通过预先配置的串口设备文件调用通用输入输出端口,向移动终端的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据;步骤406,当检测到适配器升级完成时,将应用处理器的通用输入输出端口由串口模式切换至充电模式,使得移动终端恢复充电状态。
本实施例中的适配器升级方法,当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据,其中,当通用输入输出端口处于串口模式时,应用处理器通过预先配置的串口设备文件调用通用输入输出端口,这样,在应用处理器通过充电处理器将固件升级数据传输至适配器的过程中,将通用输入输出端口作为串口,专门执行固件升级数据的传输任务,提高了固件升级数据传输的可靠性,从而提高了适配器升级的成功率。
在一个实施例中,所述当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式之前,还包括:当所述移动终端与所述适配器连接时,获取所述适配器当前的固件版本号;将所述适配器当前的固件版本号与所述固件升级数据对应的固件版本号进行比对,其中,当所述适配器当前的固件版本号与所述固件升级数据对应的固件版本号不一致时,判定所述适配器需要升级。
其中,固件版本号是适配器官方发布的附件的版本号。
在一个实施例中,当移动终端与适配器连接时,移动终端的应用处理器获取适配器当前的固件版本号,将适配器当前的固件版本号与固件升级数据对应的固件版本号进行比对,当适配器当前的固件版本号与固件升级数据对应的固件版本号一致时,判定适配器不需要升级,继续充电操作,当适配器当前的固件版本号与固件升级数据对应的固件版本号不一致时,判定适配器需要升级。
本实施例中,当移动终端与适配器连接时,获取适配器当前的固件版本号,将适配器当前的固件版本号与固件升级数据对应的固件版本号进行比对,当适配器当前的固件版本号与固件升级数据对应的固件版本号不一致时,判定适配器需要升级,实现及时为适配器进行升级。
在一个实施例中,所述通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据之前,还包括:通过切换至所述串口模式下的所述通用输入输出端口向所述充电处理器发送握手信息,以使所述充电处理器向所述适配器发送所述握手信息;当接收到所述适配器通过所述充电处理器返回的确认信息时,执行所述通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据的步骤。
其中,握手信息用于应用处理器请求建立与适配器之间的连接。可选地,该握手信息可为就绪信号,就绪信号是两个设备之间传输数据的联络信号。确认信息用于适配器响应应用处理器的连接请求。可选地,该确认信息可为ACK(Acknowledge character,确认字符)信号,ACK信号为接收端发给发送端的一种传输类控制字符。
在一个实施例中,当应用处理器通过充电处理器向适配器发送握手信息后,当预设时长内接收到适配器通过充电处理器返回的确认信息时,执行通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据的步骤;当预设时长内未接收到适配器通过充电处理器返回的确认信息时,则判定升级失败。该预设时长可为100ms。
具体地,应用处理器通过切换至串口模式下的通用输入输出端口向充电处理器发送就绪信号,以使充电处理器向适配器发送就绪信号,其中,在预设时长内应用处理器会持续地发送就绪信号。当预设时长内接收到适配器通过充电处理器返回的ACK信号时,则应用处理器通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据;当预设时长内未接收到适配器通过充电处理器返回的ACK信号时,则判定升级失败,此时可输出提示信息,该提示信息用于表明适配器升级失败。
本实施例中,通过切换至串口模式下的通用输入输出端口向充电处理器发送握手信息,以使充电处理器向适配器发送握手信息,当接收到适配器通过充电处理器返回的确认信息时,执行通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据的步骤,提高了固件升级数据传输的准确性。
在一个实施例中,所述通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据,包括:通过切换至所述串口模式下的所述通用输入输出端口向所述充电处理器发送所述固件升级数据的数据块,以使所述充电处理器向所述适配器发送所述数据块;当接收到所述适配器通过所述充电处理器返回的响应信息时,继续执行所述通过切换至所述串口模式下的所述通用输入输出端口向所述充电处理器发送所述固件升级数据的数据块,以使所述充电处理器向所述适配器发送所述数据块的步骤,直至将所述固件升级数据通过所述充电处理器发送至所述适配器。
其中,固件升级数据的数据块是指固件升级数据的一部分数据。可选地,可根据固件升级数据的存储容量,将固件升级数据平均分为多个数据块。响应信息用于适配器确认接收到应用处理器发送的数据块。可选地,该响应信息可为ACK信号。
具体地,由于串口的缓冲寄存器的容量有限,串口单次可传输的数据量有限,因此将固件升级数据拆分为多个数据块,使得固件升级数据可通过串口模式下的通用输入输出端口顺利传输。
在一个实施例中,应用处理器通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块之后,检测预定时长内是否接收到适配器通过充电处理器返回的响应信息,当预定时长内接收到适配器通过充电处理器返回的响应信息时,继续通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块;当预定时长内未接收到适配器通过充电处理器返回的响应信息时,则判定升级失败。该预定时长可为6ms。
具体地,应用处理器通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块。当应用处理器发送数据块后,会在预定时长内多次检测是否有适配器通过充电处理器返回的ACK信号,当预定时长内检测到适配器通过充电处理器返回的ACK信号时,则应用处理器继续通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送数据块,以使充电处理器向适配器发送数据块,直至将固件升级数据的全部的数据块发送完成;当预设时长内未检测到适配器通过充电处理器返回的ACK信号时,则判定升级失败,此时可输出提示信息,该提示信息用于表明适配器升级失败。
本实施例中,通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块,当接收到适配器通过充电处理器返回的响应信息时,继续执行通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块的步骤,直至将固件升级数据通过充电处理器发送至适配器,提高了固件升级数据传输的准确性。
在一个实施例中,所述方法还包括:当接收到所述适配器通过所述充电处理器发送的第一校验值时,将所述第一校验值与第二校验值进行比对,所述第一校验值是所述适配器根据接收到的所述固件升级数据计算得到的,所述第二校验值是所述应用处理器根据发送的所述固件升级数据计算得到的;当所述第一校验值与所述第二校验值一致时,向所述充电处理器发送写入信息,以使所述充电处理器向所述适配器发送所述写入信息,所述写入信息用于指示所述适配器将缓存中的所述固件升级数据写入内存。
其中,第一校验值是适配器根据接收到的固件升级数据计算得到的,第二校验值是应用处理器根据发送的固件升级数据计算得到的。可选地,第一校验值和第二校验值可以是CRC(Cyclic Redundancy Check,循环冗余校验)值,CRC是一种根据网络数据包产生固定位数校验码的散列函数。
具体地,当应用处理器通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据之后,需要校验应用处理器发送的固件升级数据是否与适配器接收的固件升级数据一致,因此应用处理器通过充电处理器发送校验信息至适配器,该校验信息用于指示适配器根据接收到的固件升级数据计算校验值。当接收到适配器通过充电处理器发送的第一校验值时,比对第一校验值和第二校验值是否一致,当第一校验值与第二校验值一致时,向充电处理器发送写入信息,以使充电处理器向适配器发送写入信息,此时可输出提示信息,该提示信息用于表明适配器升级成功;当第一校验值与第二校验值不一致时,则判定升级失败,此时可输出提示信息,该提示信息用于表明适配器升级失败。
本实施例中,当接收到适配器通过充电处理器发送的第一校验值时,将第一校验值与第二校验值进行比对,当第一校验值与第二校验值一致时,向充电处理器发送写入信息,以使充电处理器向适配器发送写入信息,写入信息用于指示适配器将缓存中的固件升级数据写入内存,提高了适配器升级的成功率。
在一个实施例中,如图5所示,提供一种适配器升级方法,包括:
步骤502,移动终端的应用处理器通过切换至串口模式下的通用输入输出端口向充电处理器发送就绪信号,以使充电处理器向适配器发送就绪信号。
步骤504,当预设时长内接收到适配器通过充电处理器返回的ACK信号时,则应用处理器通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块。
步骤506,当预定时长内检测到适配器通过充电处理器返回的ACK信号时,则应用处理器继续通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送数据块,以使充电处理器向适配器发送数据块,直至将固件升级数据的全部的数据块发送完成。
步骤508,当将固件升级数据的全部的数据块发送完成,且接收到适配器通过充电处理器发送的第一校验值时,比对第一校验值和第二校验值是否一致,当第一校验值与第二校验值一致时,向充电处理器发送写入信息,以使充电处理器向适配器发送写入信息。
本实施例中,提高了适配器升级的成功率。
在一个实施例中,所述方法还包括:当所述适配器进行升级时,输出提示信息,所述提示信息用于指示所述适配器处于升级状态。
在一个实施例中,当适配器进行升级时,可输出提示信息,以避免适配器的升级过程被干扰。该提示信息可输出至移动终端的屏幕的预设位置,该预设位置可以是屏幕中间位置、屏幕上方位置或者屏幕下方位置。
本实施例中,当适配器进行升级时,输出提示信息,提示信息用于指示适配器处于升级状态,避免适配器的升级过程被干扰。
在一个实施例中,所述方法还包括:当所述适配器升级完成时,将所述应用处理器的通用输入输出端口由所述串口模式切换至所述充电模式。
在一个实施例中,当适配器升级完成时,将应用处理器的通用输入输出端口由串口模式切换至充电模式,这样,应用处理器的通用输入输出端口可用于充电过程中应用处理器与充电处理器之间信号的传输,比如数据信号和时钟信号。
本实施例中,当适配器升级完成时,将应用处理器的通用输入输出端口由串口模式切换至充电模式,在移动终端的充电过程中完成对适配器的升级。
在一个具体的实施例中,提供一种适配器升级方法,包括:
当移动终端与适配器连接时,获取适配器当前的固件版本号,将适配器当前的固件版本号与固件升级数据对应的固件版本号进行比对,其中,当适配器当前的固件版本号与固件升级数据对应的固件版本号不一致时,判定适配器需要升级;
接着,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,其中,当通用输入输出端口处于串口模式时,应用处理器通过预先配置的串口设备文件调用通用输入输出端口;
进一步地,通过切换至串口模式下的通用输入输出端口向充电处理器发送握手信息,以使充电处理器向适配器发送握手信息;
接着,当接收到适配器通过充电处理器返回的确认信息时,通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块;
进一步地,当接收到适配器通过充电处理器返回的响应信息时,继续执行通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块的步骤,直至将固件升级数据通过充电处理器发送至适配器;
接着,当接收到适配器通过充电处理器发送的第一校验值时,将第一校验值与第二校验值进行比对,第一校验值是适配器根据接收到的固件升级数据计算得到的,第二校验值是应用处理器根据发送的固件升级数据计算得到的;
进一步地,当第一校验值与第二校验值一致时,向充电处理器发送写入信息,以使充电处理器向适配器发送写入信息,写入信息用于指示适配器将缓存中的固件升级数据写入内存;
接着,当适配器升级完成时,将应用处理器的通用输入输出端口由串口模式切换至充电模式。
通过试验,利用本实施例提供的适配器升级方法对适配器进行升级,费时大约6秒,且成功率高。
本实施例中,首先,通过将适配器当前的固件版本号与固件升级数据对应的固件版本号进行比对,快速判断适配器是否需要升级;接着,移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,使得通用输入输出端口专门执行固件升级数据的传输任务;进一步地,通过切换至串口模式下的通用输入输出端口向充电处理器发送握手信息,以使充电处理器向适配器发送握手信息,以建立应用处理器与适配器之间的数据传输通道;接着,通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块,使得固件升级数据通过串口模式下的通用输入输出端口顺利传输;进一步地,当接收到适配器通过充电处理器发送的第一校验值时,将第一校验值与第二校验值进行比对,校验适配器接收到的固件升级数据是否完整;接着,当适配器升级完成时,将应用处理器的通用输入输出端口由串口模式切换至充电模式,在移动终端的充电过程中完成对适配器的升级。综上,提高了固件升级数据传输的可靠性以及准确性,从而提高了适配器升级的成功率。
应该理解的是,虽然图1、图3-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1、图3-5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
图6为一个实施例的适配器升级装置600的结构框图。如图6所示,一种适配器升级装置600,包括:切换模块602和发送模块605。其中:
切换模块602,用于当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,其中,当所述通用输入输出端口处于所述串口模式时,所述应用处理器通过预先配置的串口设备文件调用所述通用输入输出端口;
发送模块605,用于通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据,所述固件升级数据用于对所述适配器的固件进行升级。
本实施中的适配器升级装置600,当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据,其中,当通用输入输出端口处于串口模式时,应用处理器通过预先配置的串口设备文件调用通用输入输出端口,这样,在应用处理器通过充电处理器将固件升级数据传输至适配器的过程中,将通用输入输出端口作为串口,专门执行固件升级数据的传输任务,提高了固件升级数据传输的可靠性,从而提高了适配器升级的成功率。
在一个实施例中,所述适配器升级装置600还包括获取模块以及比对模块,所述获取模块,用于:当所述移动终端与所述适配器连接时,获取所述适配器当前的固件版本号;所述比对模块,用于:将所述适配器当前的固件版本号与所述固件升级数据对应的固件版本号进行比对,其中,当所述适配器当前的固件版本号与所述固件升级数据对应的固件版本号不一致时,判定所述适配器需要升级。
本实施中的适配器升级装置600,当移动终端与适配器连接时,获取适配器当前的固件版本号,将适配器当前的固件版本号与固件升级数据对应的固件版本号进行比对,当适配器当前的固件版本号与固件升级数据对应的固件版本号不一致时,判定适配器需要升级,实现及时为适配器进行升级。
在一个实施例中,所述发送模块605,还用于:通过切换至所述串口模式下的所述通用输入输出端口向所述充电处理器发送握手信息,以使所述充电处理器向所述适配器发送所述握手信息;所述适配器升级装置600还包括执行模块,所述执行模块,用于:当接收到所述适配器通过所述充电处理器返回的确认信息时,执行所述通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据的步骤。
本实施中的适配器升级装置600,通过切换至串口模式下的通用输入输出端口向充电处理器发送握手信息,以使充电处理器向适配器发送握手信息,当接收到适配器通过充电处理器返回的确认信息时,执行通过切换至串口模式下的通用输入输出端口向移动终端的充电处理器发送固件升级数据,以使充电处理器向适配器发送固件升级数据的步骤,提高了固件升级数据传输的准确性。
在一个实施例中,所述发送模块605,具体用于:通过切换至所述串口模式下的所述通用输入输出端口向所述充电处理器发送所述固件升级数据的数据块,以使所述充电处理器向所述适配器发送所述数据块;当接收到所述适配器通过所述充电处理器返回的响应信息时,继续执行所述通过切换至所述串口模式下的所述通用输入输出端口向所述充电处理器发送所述固件升级数据的数据块,以使所述充电处理器向所述适配器发送所述数据块的步骤,直至将所述固件升级数据通过所述充电处理器发送至所述适配器。
本实施中的适配器升级装置600,通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块,当接收到适配器通过充电处理器返回的响应信息时,继续执行通过切换至串口模式下的通用输入输出端口向充电处理器发送固件升级数据的数据块,以使充电处理器向适配器发送数据块的步骤,直至将固件升级数据通过充电处理器发送至适配器,提高了固件升级数据传输的准确性。
在一个实施例中,所述发送模块605,还用于:当接收到所述适配器通过所述充电处理器发送的第一校验值时,将所述第一校验值与第二校验值进行比对,所述第一校验值是所述适配器根据接收到的所述固件升级数据计算得到的,所述第二校验值是所述应用处理器根据发送的所述固件升级数据计算得到的;当所述第一校验值与所述第二校验值一致时,向所述充电处理器发送写入信息,以使所述充电处理器向所述适配器发送所述写入信息,所述写入信息用于指示所述适配器将缓存中的所述固件升级数据写入内存。
本实施中的适配器升级装置600,当接收到适配器通过充电处理器发送的第一校验值时,将第一校验值与第二校验值进行比对,当第一校验值与第二校验值一致时,向充电处理器发送写入信息,以使充电处理器向适配器发送写入信息,写入信息用于指示适配器将缓存中的固件升级数据写入内存,提高了适配器升级的成功率。
在一个实施例中,所述适配器升级装置600还包括输出模块,所述输出模块,用于:当所述适配器进行升级时,输出提示信息,所述提示信息用于指示所述适配器处于升级状态。
本实施中的适配器升级装置600,当适配器进行升级时,输出提示信息,提示信息用于指示适配器处于升级状态,避免适配器的升级过程被干扰。
在一个实施例中,所述切换模块602,还用于:当所述适配器升级完成时,将所述应用处理器的通用输入输出端口由所述串口模式切换至所述充电模式。
本实施中的适配器升级装置600,当适配器升级完成时,将应用处理器的通用输入输出端口由串口模式切换至充电模式,在移动终端的充电过程中完成对适配器的升级。
关于适配器升级装置600的具体限定可以参见上文中对于适配器升级方法的限定,在此不再赘述。上述适配器升级装置600中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图7为一个实施例中电子设备的内部结构示意图。如图7所示,该电子设备包括通过系统总线连接的处理器和存储器。其中,该处理器用于提供计算和控制能力,支撑整个电子设备的运行。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以上各个实施例所提供的一种适配器升级方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。该电子设备可以是手机、平板电脑或者个人数字助理或穿戴式设备等。
本申请实施例中提供的适配器升级装置中的各个模块的实现可为计算机程序的形式。该计算机程序可在终端或服务器上运行。该计算机程序构成的程序模块可存储在终端或服务器的存储器上。该计算机程序被处理器执行时,实现本申请实施例中所描述方法的步骤。
本申请实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行适配器升级方法的步骤。
一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行适配器升级方法。
本申请所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (11)
1.一种适配器升级方法,其特征在于,包括:
当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,其中,当所述通用输入输出端口处于所述串口模式时,所述应用处理器通过预先配置的串口设备文件调用所述通用输入输出端口,所述串口设备文件是对通用输入输出端口连接的串口控制器进行相关属性的配置,加载所述串口控制器的驱动生成的,并且以文件形式作为一个可操作串口的接口;
通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据,所述固件升级数据用于对所述适配器的固件进行升级。
2.根据权利要求1所述的方法,其特征在于,所述串口模式下的所述通用输入输出端口的休眠间隔时长,大于所述充电模式下的所述通用输入输出端口的休眠间隔时长。
3.根据权利要求1所述的方法,其特征在于,所述当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式之前,还包括:
当所述移动终端与所述适配器连接时,获取所述适配器当前的固件版本号;
将所述适配器当前的固件版本号与所述固件升级数据对应的固件版本号进行比对,其中,当所述适配器当前的固件版本号与所述固件升级数据对应的固件版本号不一致时,判定所述适配器需要升级。
4.根据权利要求1所述的方法,其特征在于,所述通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据之前,还包括:
通过切换至所述串口模式下的所述通用输入输出端口向所述充电处理器发送握手信息,以使所述充电处理器向所述适配器发送所述握手信息;
当接收到所述适配器通过所述充电处理器返回的确认信息时,执行所述通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据的步骤。
5.根据权利要求1所述的方法,其特征在于,所述通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据,包括:
通过切换至所述串口模式下的所述通用输入输出端口向所述充电处理器发送所述固件升级数据的数据块,以使所述充电处理器向所述适配器发送所述数据块;
当接收到所述适配器通过所述充电处理器返回的响应信息时,继续执行所述通过切换至所述串口模式下的所述通用输入输出端口向所述充电处理器发送所述固件升级数据的数据块,以使所述充电处理器向所述适配器发送所述数据块的步骤,直至将所述固件升级数据通过所述充电处理器发送至所述适配器。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到所述适配器通过所述充电处理器发送的第一校验值时,将所述第一校验值与第二校验值进行比对,所述第一校验值是所述适配器根据接收到的所述固件升级数据计算得到的,所述第二校验值是所述应用处理器根据发送的所述固件升级数据计算得到的;
当所述第一校验值与所述第二校验值一致时,向所述充电处理器发送写入信息,以使所述充电处理器向所述适配器发送所述写入信息,所述写入信息用于指示所述适配器将缓存中的所述固件升级数据写入内存。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述适配器进行升级时,输出提示信息,所述提示信息用于指示所述适配器处于升级状态。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述适配器升级完成时,将所述应用处理器的通用输入输出端口由所述串口模式切换至所述充电模式。
9.一种适配器升级装置,其特征在于,包括:
切换模块,用于当检测到适配器需要升级时,将移动终端的应用处理器的通用输入输出端口由充电模式切换至串口模式,其中,当所述通用输入输出端口处于所述串口模式时,所述应用处理器通过预先配置的串口设备文件调用所述通用输入输出端口,所述串口设备文件是对通用输入输出端口连接的串口控制器进行相关属性的配置,加载所述串口控制器的驱动生成的,并且以文件形式作为一个可操作串口的接口;
发送模块,用于通过切换至所述串口模式下的所述通用输入输出端口向所述移动终端的充电处理器发送固件升级数据,以使所述充电处理器向所述适配器发送所述固件升级数据,所述固件升级数据用于对所述适配器的固件进行升级。
10.一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至8中任一项所述的适配器升级方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的适配器升级方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010181014.3A CN111381853B (zh) | 2020-03-16 | 2020-03-16 | 适配器升级方法和装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010181014.3A CN111381853B (zh) | 2020-03-16 | 2020-03-16 | 适配器升级方法和装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111381853A CN111381853A (zh) | 2020-07-07 |
CN111381853B true CN111381853B (zh) | 2024-01-30 |
Family
ID=71217252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010181014.3A Active CN111381853B (zh) | 2020-03-16 | 2020-03-16 | 适配器升级方法和装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111381853B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239097A (zh) * | 2014-09-03 | 2014-12-24 | 广东欧珀移动通信有限公司 | 一种通过移动终端升级配件的方法、系统及移动终端 |
WO2017049548A1 (zh) * | 2015-09-24 | 2017-03-30 | 广东欧珀移动通信有限公司 | 移动终端、电源适配器及其升级方法 |
CN106877441A (zh) * | 2017-03-17 | 2017-06-20 | 上海与德信息技术有限公司 | 一种充电电路及其充电方法 |
CN108028767A (zh) * | 2015-09-24 | 2018-05-11 | 广东欧珀移动通信有限公司 | 为适配器升级的方法、移动终端和适配器 |
CN108139899A (zh) * | 2015-09-24 | 2018-06-08 | 广东欧珀移动通信有限公司 | 终端设备和控制充电的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9092623B2 (en) * | 2011-11-09 | 2015-07-28 | Kaprica Security, Inc. | System and method for bidirectional trust between downloaded applications and mobile devices including a secure charger and malware scanner |
-
2020
- 2020-03-16 CN CN202010181014.3A patent/CN111381853B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239097A (zh) * | 2014-09-03 | 2014-12-24 | 广东欧珀移动通信有限公司 | 一种通过移动终端升级配件的方法、系统及移动终端 |
WO2017049548A1 (zh) * | 2015-09-24 | 2017-03-30 | 广东欧珀移动通信有限公司 | 移动终端、电源适配器及其升级方法 |
CN108028767A (zh) * | 2015-09-24 | 2018-05-11 | 广东欧珀移动通信有限公司 | 为适配器升级的方法、移动终端和适配器 |
CN108139899A (zh) * | 2015-09-24 | 2018-06-08 | 广东欧珀移动通信有限公司 | 终端设备和控制充电的方法 |
CN106877441A (zh) * | 2017-03-17 | 2017-06-20 | 上海与德信息技术有限公司 | 一种充电电路及其充电方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111381853A (zh) | 2020-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3941107A1 (en) | Measurement reporting method, electronic device, and storage medium | |
US11057762B2 (en) | Electronic device and method for switching electronic device between dual standby mode and single standby mode | |
JP5863199B2 (ja) | 無線ネットワーク環境における基地局にmdt測定情報を提供する方法及びシステム | |
WO2023024824A1 (zh) | 充电协议的确定方法、装置、电子设备和可读存储介质 | |
EP3955694A1 (en) | Method and apparatus for back-connecting bluetooth device, terminal and computer-readable storage medium | |
US11770212B2 (en) | Data transmission methods, data transmission device, and data transmission apparatuses | |
WO2022166875A1 (zh) | 一种日志保存方法、通信装置、芯片及模组设备 | |
WO2024078218A1 (zh) | 系统启动方法及电子设备 | |
CN111258613B (zh) | 固件升级方法、装置、电子设备以及存储介质 | |
CN112448450A (zh) | 充电控制方法、装置、电子设备及存储介质 | |
CN111381853B (zh) | 适配器升级方法和装置、电子设备及计算机可读存储介质 | |
CN111857303A (zh) | 一种fpga复位方法、装置、系统和电子设备 | |
CN111314895A (zh) | 一种基于蓝牙的无线升级方法及装置、服务器及电子设备 | |
WO2018049975A1 (zh) | 一种数据转移方法及相关产品 | |
CN113282532B (zh) | 一种通信装置、通信装置的通信方法和电子设备 | |
CN112637964B (zh) | 网络双连接管理方法、装置、设备及存储介质 | |
CN110728159A (zh) | Ndef数据的读取及上传方法、终端、标签芯片、可读介质 | |
US20200285781A1 (en) | Terminal and communication method | |
CN112448449A (zh) | 充电控制方法、装置、电子设备及存储介质 | |
CN113178225A (zh) | 路由器Flash稳定性自动测试方法、装置、测试终端 | |
CN111064488B (zh) | 收发装置、收发系统、存储介质及收发方法 | |
US20040003145A1 (en) | Method and apparatus to transfer information | |
CN111949103B (zh) | 具数据存取、传输及电源管理的整合电子装置及其方法 | |
CN112769824B (zh) | 一种信息传输状态更新方法、终端、装置及存储介质 | |
CN113840313B (zh) | 移动终端的网络模式控制方法、装置和计算机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |