无线模组升级的方法、装置、计算机设备和存储介质与流程

文档序号:26101502发布日期:2021-07-30 18:12阅读:52来源:国知局
无线模组升级的方法、装置、计算机设备和存储介质与流程

本申请涉及无线模组的技术领域,特别是涉及一种无线模组升级的方法、装置、计算机设备和存储介质。



背景技术:

无线模组按照功能可以分为通信模组和定位模组,其中,通信模组按照不同通信技术可以分为蜂窝类和非蜂窝类通信模组。随着无线模组技术的发展,由于用户对通信的需求在与时俱进,产品的迭代更新也大大加快,为了适应用户不断发展的新需求,出现了无线模组升级技术。

传统技术中,在无线通信模组行业,无线模组的软件大部分是利用移动终端的空中下载软件升级(即fota,全称为firmwareover-the-air)实现升级。

然而,当前的无线模组在无法连接到蜂窝数据或出现网络故障时,升级就无法进行。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够使无线模组在无网络或者网络状况不佳时,能正常实现模组升级的无线模组升级的方法、装置、计算机设备和存储介质。

一种无线模组升级的方法,所述方法包括:

通过无线模组的usb接口将缓存分区挂载到主机侧,其中,所述无线模组预先划分有缓存分区;

获取所述主机侧的升级包,并将所述升级包存储在所述缓存分区;

接收所述主机侧的升级指令;

响应所述升级指令,根据所述升级包进行无线模组升级。

在其中一个实施例中,响应所述升级指令,根据所述升级包进行无线模组升级,包括:

挂载所述缓存分区,查找所述升级包;

根据查找到的所述升级包进行无线模组升级。

在其中一个实施例中,挂载所述缓存分区,查找所述升级包:

挂载所述缓存分区;

查找所述缓存分区是否存在升级包;

当所述缓存分区存在所述升级包时,则执行根据查找到的所述升级包进行无线模组升级的步骤;

当所述升级包不存在时,所述无线模组退出升级模式。

在其中一个实施例中,根据查找到的所述升级包进行无线模组升级,还包括:

校验所述无线模组是否需要升级;

如果所述无线模组需要升级,则结合所述升级包升级普通分区,当所述普通分区升级成功时,重启所述无线模组,其中,所述普通分区为所述无线模组升级的系统性分区。

在其中一个实施例中,当所述普通分区升级失败时,则清除所有升级标记,并停止所述普通分区的升级。

在其中一个实施例中,所述缓存分区存储的文件系统格式包括ext4、fat32和ubi。

一种无线模组升级的装置,所述装置包括:

无线模组挂载模块,用于通过无线模组的usb接口将缓存分区挂载到主机侧,所述无线模组预先划分有缓存分区;

升级包存储模块,用于获取所述主机侧的升级包,并将所述升级包存储在所述缓存分区;

升级指令接收模块,用于接收所述主机侧的升级指令;

升级启动模块,用于响应所述升级指令,根据所述升级包进行无线模组升级。

一种无线模组升级的装置,所述升级启动模块,还包括:

升级包查找模块,用于挂载所述缓存分区,查找所述升级包;

模组升级模块,用于根据查找到的所述升级包进行无线模组升级。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

通过无线模组的usb接口将缓存分区挂载到主机侧,其中,所述无线模组预先划分有缓存分区;

获取所述主机侧的升级包,并将所述升级包存储在所述缓存分区;

接收所述主机侧的升级指令;

响应所述升级指令,根据所述升级包进行无线模组升级。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

通过无线模组的usb接口将缓存分区挂载到主机侧,其中,所述无线模组预先划分有缓存分区;

获取所述主机侧的升级包,并将所述升级包存储在所述缓存分区;

接收所述主机侧的升级指令;

响应所述升级指令,根据所述升级包进行无线模组升级。

上述无线模组升级的方法、装置、计算机设备和存储介质,无线模组内部的缓存分区挂载到主机侧后,主机侧会识别该缓存分区,并将该缓存分区在主机侧充当u盘,用于存储升级包。在接收并响应主机侧的升级指令之后,可根据缓存分区的升级包进行无线模组升级。升级指令是usb枚举过程中主机侧下发的,其发送和接收过程不受网络的影响,因而在无线模组相应升级指令后,无线模组能够根据缓存分区内的升级包进行升级。

从而本申请能够使无线模组在无网络或者网络状况不佳时,正常实现升级。

附图说明

图1为一个实施例中无线模组升级的方法的应用环境图;

图2为一个实施例中无线模组升级的方法的流程示意图;

图3为另一个实施例中无线模组升级的方法的流程示意图;

图4为一个实施例中无线模组升级的装置的结构框图;

图5为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的无线模组升级的方法,可以应用于如图1所示的应用环境中。其中,无线模组102与主机侧108通过usb接口的形式进行通信。

无线模组102内部有flash分区104,为了实现升级过程不受网络的限制,因而无线模组102预先在flash分区104中划分出空的缓存分区106,该缓存分区106可以是多个。无线模组102通过usb接口插入到主机侧108后,可以获取主机侧108的升级包。在需要对无线模组102升级时,主机侧108将通过usb枚举向无线模组102下发升级指令。无线模组102在获得该升级指令后,将响应该升级指令,并挂载缓存分区106,从而结合升级包完成升级。

在一个实施例中,如图2所示,提供了一种无线模组升级的方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:

步骤s202,通过无线模组的usb接口将缓存分区挂载到主机侧,其中,所述无线模组预先划分有缓存分区。

其中,本申请中升级的无线模组是一种通信模组。将缓存分区挂载到主机侧时,对主机侧而言,缓存分区相当于是其外部插入的“u盘”。将缓存分区挂载到主机侧,可理解为将“u盘”插入到主机侧,此时,主机侧可以识别该“u盘”(即缓存分区)。

具体地,无线模组预先划分有缓存分区,是指在将缓存分区挂载到主机侧之前,无线模组已在自身内部的缓存区(flash分区)中,划分得到缓存分区,该缓存分区是空的缓存分区,具有一定的存储空间或能力。

在linux系统中“一切皆文件”,所有文件都放置在以根目录为树根的树形目录结构中。在linux看来,任何硬件设备也都是文件,它们各有自己的一套文件系统(文件目录结构)。因此当在linux系统中使用这些硬件设备时,只有将linux本身的文件目录与硬件设备的文件目录合二为一,硬件设备才能使用,这种合二为一的过程即称为“挂载”。具体的实现挂载就是将无线模块的usb接口插入至主机侧的接口,使主机侧能识别无线模组。

步骤s204,获取所述主机侧的升级包,并将所述升级包存储在所述缓存分区。

其中,升级包是存储有供无线模组升级相关文件的数据包。当无线模组的功能需求滞后时,用户可以先将升级包下载到主机侧以便后续供无线模组升级。升级包,包括整包和差分包两种形式,其中,无线模组以整包作为升级包进行升级时,是以该整包覆盖的形式实现升级,可以将系统中所有的数据都升级。差分包相比整包较小,其内存储的是升级前和升级后两个状态之间的差异性文件。根据差分包进行升级是版本定向升级的一种方式。

具体地,无线模组在将缓存分区挂载到主机侧之后,主机侧可以识别该缓存分区,用户再在主机侧将升级包拷贝到缓存分区(挂载到主机侧后,相当于主机侧的u盘)中,使缓存分区存储有该升级包。

步骤s206,接收所述主机侧的升级指令。

其中,升级指令由主机侧发送,该升级指令是通过usb枚举的at端口进行发送的,不受网络的限制或影响。该升级指令可以控制无线模组进入升级模式准备升级。

步骤s208,响应所述升级指令,根据所述升级包进行无线模组升级。

其中,无线模组在获得主机侧发送的升级指令后,将对该升级指令做出响应,根据缓存分区存储的升级包启动升级。

上述无线模组升级的方法中,无线模组内部的缓存分区挂载到主机侧后,主机侧会识别该缓存分区,并将该缓存分区在主机侧充当u盘,用于存储升级包。在接收并响应主机侧的升级指令之后,可根据缓存分区的升级包进行无线模组升级。升级指令是usb在枚举过程中主机侧下发的,其发送和接收过程不受网络的影响,因而在无线模组相应升级指令后,无线模组能够根据缓存分区内的升级包进行升级。该升级方式通过将无线模组挂载到主机侧即可实现,即提供了一种硬件连接升级的方式,不受网络状态的制约,从而本申请能够使无线模组在无网络或者网络状况不佳时,正常实现升级。

在一个实施例中,响应所述升级指令,根据所述升级包进行无线模组升级,包括:挂载所述缓存分区,查找所述升级包;根据查找到的所述升级包进行无线模组升级。

具体地,无线模组在接收到升级指令后,将根据该升级指令启动升级流程,进入升级模式。无线模组在升级模式下,将缓存分区挂载到无线模组内部,从而使无线模组内部的文件系统可以正常被文件系统识别。之后无线模组根据升级程序查找缓存分区是否有升级包。

当根据升级程序检查到缓存分区中有升级包时,将根据查找到的升级包启动升级。

本实施例中,通过无线模组挂载缓存分区,从而使无线模组能识别该缓存分区中的升级包,从而根据识别出来的升级包进行升级。

在一个实施例中,挂载所述缓存分区,查找所述升级包,包括:

挂载所述缓存分区,查找所述缓存分区是否存在升级包;当所述缓存分区存在所述升级包时,则执行根据查找到的所述升级包进行无线模组升级的步骤;当所述升级包不存在时,所述无线模组退出升级模式。

其中,无线模组先检查特定目录下是否有升级包,如果没有就退出升级,如果有,检查文件的哈希值,进而判断文件的完整性。如果文件哈希值错误,即退出升级。

具体地,无线模组在接收到升级指令后,将根据该升级指令启动升级流程,进入升级模式。无线模组在升级模式下,将缓存分区挂载到无线模组内部,从而使无线模组内部的文件系统可以正常被文件系统识别。

无线模组挂载完缓存分区之后,会根据升级程序检查缓存分区是否存在升级包,当根据升级程序检查到缓存分区中没有升级包时,无线模组则无法实现更新升级,因而将退出升级模式。

本实施例中,在响应升级指令对无线模组进行升级前,通过预先检查缓存分区中是否存储有升级包,再执行相应的操作,避免升级包不存在而无线模组仍处于升级模式状态,以及在确定存在升级包时,顺利地对无线模组进行升级。

在一个实施例中,根据查找到的所述升级包进行无线模组升级,还包括:

校验所述无线模组是否需要升级;如果所述无线模组需要升级,则结合所述升级包升级普通分区,当所述普通分区升级成功时,重启所述无线模组,其中,所述普通分区为所述无线模组升级的系统性分区。

其中,普通分区是指normal分区,normal分区包括uboot分区system分区modem分区等。缓存分区是userdata分区,缓存分区升级时无线模组不能升级,即缓存分区的升级和无线模组的升级并不能同时发生。而普通分区即normal分区升级成功时,开机重启无线模组,无线模组得以升级更新,即无线模组的升级与normal分区的升级息息相关,因此将普通分区称为无线模组升级的系统性分区。

具体地,无线模组在获得升级包后,将启动升级模式进行升级,在升级的过程中,无线模组会结合升级包的文件系统、升级包的内容信息升级普通分区,普通分区升级成功后,需要重启无线模组,无线模组重启之后完成升级工作。

本实施例中,通过结合升级包对普通分区进行升级,从而使与普通分区息息相关的无线模组也得以实现升级。

在一个实施例中,当所述普通分区升级失败时,则清除所有升级标记,并停止所述普通分区的升级。

其中,升级标记是指在普通分区升级过程中,各个时间段产生的标记,记录了普通分区在各个时间段升级的进度和升级阶段情况。

具体地,如果普通分区升级失败,则清除所有升级标记,普通分区的后续升级流程终止。

本实施例中,当普通分区升级失败时,通过清除所有升级标记,有利于减少无线模组的缓存数据,相应地提高无线模组的运行效率。并且在普通分区升级失败时,停止普通分区的升级,从而避免无线模组的无效运行。

在一个实施例中,所述缓存分区存储的文件系统格式包括ext4、fat32和ubi。

其中,缓存分区存储的文件系统格式包括但不限于ext4、fat32和ubi等。

本实施例中,通过存储多种文件系统格式,从而方便对应识别文件系统格式不同的各升级包。

在一个实施例中,无线模组升级的方法,包括:步骤s302~步骤s314,其中:

步骤s302,通过无线模组的usb接口将缓存分区挂载到主机侧,其中,无线模组预先划分有缓存分区。

步骤s304,获取主机侧的升级包,并将升级包存储在缓存分区。

步骤s306,接收主机侧的升级指令。

步骤s308,挂载缓存分区。

步骤s310,查找所述缓存分区是否存在升级包。

当所述缓存分区存在所述升级包时,则执行步骤s312,根据查找到的升级包进行无线模组升级。

当所述升级包不存在时,执行步骤s314,无线模组退出升级模式。

上述无线模组升级的方法中,无线模组内部的缓存分区挂载到主机侧后,主机侧会识别该缓存分区,并将该缓存分区在主机侧充当u盘,用于存储升级包。在接收并响应主机侧的升级指令之后,无线模组挂载该缓存分区,挂载滞后,在本地查找缓存分区是否存在升级包。在查找到升级包后,随后即可进行无线模组升级。由于升级指令是usb在枚举过程中由主机侧下发的,其发送和接收过程不受网络的影响,因而在无线模组相应升级指令后,无线模组能够根据缓存分区内的升级包进行升级。该升级方式通过将无线模组挂载到主机侧即可实现,即提供了一种硬件连接升级的方式,不受网络状态的制约,从而本申请能够使无线模组在无网络或者网络状况不佳时,正常实现升级。

应该理解的是,虽然上述实施例涉及的各流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述实施例涉及的各流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图4所示,提供了一种无线模组升级的装置,包括:无线模组挂载模块402、升级包存储模块404、升级指令接收模块406和升级启动模块408,其中:

无线模组挂载模块402,用于通过无线模组的usb接口将缓存分区挂载到主机侧,所述无线模组预先划分有缓存分区;

升级包存储模块404,用于获取所述主机侧的升级包,并将所述升级包存储在所述缓存分区;

升级指令接收模块406,用于接收所述主机侧的升级指令;

升级启动模块408,用于响应所述升级指令,根据所述升级包进行无线模组升级。

在一个实施例中,所述升级启动模块,还包括:升级包查找模块和模组升级模块,其中:

升级包查找模块,用于挂载所述缓存分区,查找所述升级包;

模组升级模块,用于根据查找到的所述升级包进行无线模组升级。

在一个实施例中,升级包查找模块,包括:缓存分区挂载模块、升级包存在校验模块,其中:

缓存分区挂载模块,用于挂载所述缓存分区;

升级包存在校验模块,用于查找所述升级包是否存在;当所述升级包存在时,则执行根据查找到的所述升级包进行无线模组升级的步骤;当所述升级包不存在时,所述无线模组退出升级模式。

在一个实施例中,无线模组升级的装置,还包括:无线模组升级校验模块,用于校验所述无线模组是否需要升级;

如果所述无线模组需要升级,则结合所述升级包升级普通分区,所述普通分区升级成功时,重启所述无线模组,其中,所述普通分区为所述无线模组升级的系统性分区。

在一个实施例中,无线模组升级校验模块,还用于如果所述无线模组不需要升级,则清除所有升级标记,并停止所述普通分区的升级。

关于无线模组升级的装置的具体限定可以参见上文中对于无线模组升级的方法的限定,在此不再赘述。上述无线模组升级的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种无线模组升级的方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

通过无线模组的usb接口将缓存分区挂载到主机侧,其中,所述无线模组预先划分有缓存分区;

获取所述主机侧的升级包,并将所述升级包存储在所述缓存分区;

接收所述主机侧的升级指令;

响应所述升级指令,根据所述升级包进行无线模组升级。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

响应所述升级指令,根据所述升级包进行无线模组升级,包括:

挂载所述缓存分区,查找所述升级包;

根据查找到的所述升级包进行无线模组升级。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

挂载所述缓存分区,查找所述升级包,包括:

挂载所述缓存分区;

查找所述缓存分区是否存在升级包;

当所述缓存分区存在所述升级包时,则执行根据查找到的所述升级包进行无线模组升级的步骤;

当所述升级包不存在时,所述无线模组退出升级模式。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据查找到的所述升级包进行无线模组升级,还包括:

校验所述无线模组是否需要升级;

如果所述无线模组需要升级,则结合所述升级包升级普通分区,当所述普通分区升级成功时,重启所述无线模组,其中,所述普通分区为所述无线模组升级的系统性分区。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:当所述普通分区升级失败时,则清除所有升级标记,并停止所述普通分区的升级。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

通过无线模组的usb接口将缓存分区挂载到主机侧,其中,所述无线模组预先划分有缓存分区;

获取所述主机侧的升级包,并将所述升级包存储在所述缓存分区;

接收所述主机侧的升级指令;

响应所述升级指令,根据所述升级包进行无线模组升级。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

响应所述升级指令,根据所述升级包进行无线模组升级,包括:

挂载所述缓存分区,查找所述升级包;

根据查找到的所述升级包进行无线模组升级。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

挂载所述缓存分区,查找所述升级包,包括:

挂载所述缓存分区;

查找所述缓存分区是否存在升级包;

当所述缓存分区存在所述升级包时,则执行根据查找到的所述升级包进行无线模组升级的步骤;

当所述升级包不存在时,所述无线模组退出升级模式。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据查找到的所述升级包进行无线模组升级,还包括:

校验所述无线模组是否需要升级;

如果所述无线模组需要升级,则结合所述升级包升级普通分区,当所述普通分区升级成功时,重启所述无线模组,其中,所述普通分区为所述无线模组升级的系统性分区。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当所述普通分区升级失败时,则清除所有升级标记,并停止所述普通分区的升级。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-onlymemory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(randomaccessmemory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(staticrandomaccessmemory,sram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1