固件升级方法、装置及系统与流程

文档序号:11677301阅读:373来源:国知局
本发明实施例涉及固件升级
技术领域
:,尤其涉及固件升级方法、装置及系统。
背景技术
::固件(firmware)一般存储于设备中的电可擦除只读存储器eeprom(electricallyerasableprogrammablerom)或闪存flash芯片等器件中,通常指担任着设备最基础、最底层工作的软件。随着设备功能需求的不断变化或者固件存在缺陷需要修复等原因,经常需要对设备中的固件进行升级。出于安全性或制造成本等方面的考虑,许多设备不具备联网功能,即无法访问互联网,对于这一类需要升级固件的设备来说,传统的固件升级方式有以下两种:第一种,技术支持工程师现场手动升级,图1为现场升级流程示意图,如图1所示,当用户发现需要升级固件时,首先需要跟技术支持工程师联系沟通,待技术支持工程师确定情况后,再去帮助用户手动升级固件或者提供最新固件供用户自己下载更新;第二种,利用特定的应用软件和驱动程序从官网下载并更新,图2为现有的官网升级流程示意图,如图2所示,用户在需要更新固件时,首先需要到官网上下载一个专用的应用软件和驱动程序,然后通过应用软件来升级固件。对于上述第一种方式来说,不能做到实时的更新,给工程师带来巨大的不便,对人力成本造成巨大的浪费,且该固件升级方法存在更新周期过长,容易导致公司产品开发不利,影响产品方案的推广时间;对于第二种方式来说,用户在升级固件前都需要去官网下载专用的应用软件和驱动程序才能更新固件,不论是驱动程序还是应用软件,都存在跨平台问题,不同的操作系统,甚至是相同操作系统的不同版本,都有可能会导致兼容性问题,导致升级效率低下。技术实现要素:本发明实施例的目的是提供一种固件升级方法、装置及系统,可以解决现有的固件升级方案升级过程繁琐费时的问题。第一方面,本发明实施例提供了一种固件升级方法,包括:控制设备在检测到与待升级设备建立通用串行总线usb连接时,将所述待升级设备枚举为u盘,并在所述u盘的目录下显示所述待升级设备中的预设链接文件,其中,所述预设链接文件中包含预设网址信息和所述待升级设备的当前固件版本信息;所述控制设备在监测到用户针对所述预设链接文件的打开操作时,获取所述预设网址信息并访问相应的服务器,将所述当前固件版本信息发送至所述服务器;所述服务器在根据所述当前固件版本信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务;所述待升级设备接收所述控制设备下载的固件升级文件并进行固件升级操作。第二方面,本发明实施例提供了一种固件升级方法,包括:在检测到待升级设备被控制设备枚举为u盘时,将存储在所述待升级设备中的预设链接文件显示在所述u盘的目录下,其中,所述预设链接文件中包含预设网址信息和所述待升级设备的当前固件版本信息,所述待升级设备与所述控制设备通过通用串行总线usb连接进行通信;在接收到所述控制设备发送的针对所述预设链接文件的打开请求时,向所述控制设备反馈所述预设网址信息和所述当前固件版本信息,以使所述控制设备访问所述网址信息对应的服务器并将所述当前固件版本发送至所述服务器;其中,当所述服务器根据所述当前固件版本信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务;接收所述控制设备下载的固件升级文件并进行固件升级操作。第三方面,本发明实施例提供了一种固件升级系统,包括待升级设备、控制设备和服务器;所述控制设备包括:设备枚举模块,用于在检测到与待升级设备建立通用串行总线usb连接时,将所述待升级设备枚举为u盘,并在所述u盘的目录下显示所述待升级设备中的预设链接文件,其中,所述预设链接文件中包含预设网址信息和所述待升级设备的当前固件版本信息;服务器访问模块,用于在监测到用户针对所述预设链接文件的打开操作时,获取所述预设网址信息并访问相应的服务器,将所述当前固件版本信息发送至所述服务器;所述服务器包括:下载服务提供模块,用于在根据所述当前固件版本信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务;所述待升级设备包括:升级模块,用于接收所述控制设备下载的固件升级文件并进行固件升级操作。第四方面,本发明实施例提供了一种固件升级装置,包括:文件显示控制模块,用于在检测到待升级设备被控制设备枚举为u盘时,将存储在所述待升级设备中的预设链接文件显示在所述u盘的目录下,其中,所述预设链接文件中包含预设网址信息和所述待升级设备的当前固件版本信息,所述待升级设备与所述控制设备通过通用串行总线usb连接进行通信;信息反馈模块,用于在接收到所述控制设备发送的针对所述预设链接文件的打开请求时,向所述控制设备反馈所述预设网址信息和所述当前固件版本信息,以使所述控制设备访问所述网址信息对应的服务器并将所述当前固件版本发送至所述服务器;其中,当所述服务器根据所述当前固件版本信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务;升级模块,用于接收所述控制设备下载的固件升级文件并进行固件升级操作。本发明实施例中提供的固件升级方案,在控制设备中将待升级设备枚举为u盘,待升级设备中存储有包含预设网址信息和当前固件版本信息的预设链接文件,在控制设备上打开u盘中的预设链接文件后,控制设备可自动访问预设网址信息对应的服务器,当服务器检测到存在新版本的固件升级文件时,为控制设备提供下载服务,使控制设备能够将固件升级文件下载至待升级设备中,随后待升级设备可自动进行固件升级操作,该方案无需在控制设备上安装专用的应用软件和驱动程序即可实现远程固件在线升级,简化了固件升级流程,降低了固件升级的专业难度,无需专业人员指导即可实现快速升级,提高固件升级效率。附图说明图1为现场升级流程示意图;图2为现有的官网升级流程示意图;图3为本发明实施例一提供的一种固件升级方法的流程示意图;图4为本发明实施例二提供的一种固件升级方法的流程示意图;图5为本发明实施例三提供的一种固件升级方法的流程示意图;图6为本发明实施例四提供的一种固件升级系统的结构框图;图7为本发明实施例四提供的一种固件升级系统工作过程示意图;图8为本发明实施例五提供的一种固件升级装置的结构框图。具体实施方式下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。实施例一图3为本发明实施例一提供的一种固件升级方法的流程示意图,该方法可以由固件升级系统执行。如图3所示,该方法包括:步骤301、控制设备在检测到与待升级设备建立通用串行总线usb连接时,将所述待升级设备枚举为u盘,并在所述u盘的目录下显示所述待升级设备中的预设链接文件。其中,所述预设链接文件中包含预设网址信息和所述待升级设备的当前固件版本信息。示例性的,本发明实施例中的控制设备可以是个人电脑(personalcomputer,pc)、平板电脑或者智能手机等设备。待升级设备可以是生产设备、检测设备、实验设备以及公共服务设备等包含固件的设备。示例性的,待升级设备不具备联网功能,即待升级设备不具备访问互联网的功能。本实施例中,控制设备与待升级设备基于通用串行总线(universalserialbus,usb)协议进行通信。当待升级设备的usb插头或所连接的usb连接线接头插入控制设备时,控制设备可检测到与待升级设备usb连接,此时,将待升级设备枚举为u盘。优选的,所述u盘为文件分配表(fileallocatingtable,fat)格式。u盘的优点是免驱动,因此可避免用户手动下载相关驱动,也避免了的因系统配置或系统版本不同所带来的兼容性问题。需要说明的是,控制设备也可以将待升级设备枚举为两个或多个设备,其中一个设备为u盘。本实施例中,待升级设备中存储了预设链接文件,该预设链接文件中包含预设网址信息和待升级设备的当前固件版本信息。当待升级设备被枚举为u盘后,在u盘目录下即可显示预设链接文件。示例性的,预设链接文件可以是后缀为.htm的超链接文件,例如,checkforupdate.htm文件。其中,预设网址信息是提供固件升级文件的服务器所对应的网址信息,例如,可以是待升级设备所属公司的官方网站下载区页面的网址。当前固件版本信息可以是当前固件版本的版本号。步骤302、控制设备在监测到用户针对所述预设链接文件的打开操作时,获取所述预设网址信息并访问相应的服务器,将所述当前固件版本信息发送至所述服务器。示例性的,预设链接文件在控制设备中显示后,用户可选择打开该预设链接文件(如控制设备为pc,则可双击该预设链接文件),此时,控制设备能够监测到用户针对预设链接文件的打开操作,从而获取其中的预设网址信息并访问相应的服务器,并将预设链接文件中包含的当前固件版本信息发送至服务器,以便服务器进行后续的判断。步骤303、服务器在根据所述当前固件版本信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务。示例性的,服务器在接收到当前固件版本信息后,可在内部数据库中搜索是否存在比当前版本更新的固件版本,若存在,说明待升级设备需要升级,若不存在,则说明待升级设备不需要升级。可选的,服务器通过判断预设链接文件传过来的当前固件版本信息等参数是否有效来决定是否进行版本检测。若检测到存在新版本的固件升级文件,可为控制设备提供下载接口,例如在控制设备所打开的网页上显示下载按钮供用户点击,若用户点击该下载按钮,即可自动下载该新版本的固件升级文件。步骤304、待升级设备接收所述控制设备下载的固件升级文件并进行固件升级操作。示例性的,控制设备可将固件升级文件存储到待升级设备中的所枚举的u盘中。待升级设备在u盘中检测到固件升级文件时,即可自动执行固件升级相关操作,达到固件升级的目的。本发明实施例提供的固件升级方法,在控制设备中将待升级设备枚举为u盘,待升级设备中存储有包含预设网址信息和当前固件版本信息的预设链接文件,在控制设备上打开u盘中的预设链接文件后,控制设备可自动访问预设网址信息对应的服务器,当服务器检测到存在新版本的固件升级文件时,为控制设备提供下载服务,使控制设备能够将固件升级文件下载至待升级设备中,随后待升级设备可自动进行固件升级操作,该方案无需在控制设备上安装专用的应用软件和驱动程序即可实现远程固件在线升级,简化了固件升级流程,降低了固件升级的专业难度,无需专业人员指导即可实现快速升级,提高固件升级效率。在上述实施例的基础上,在所述待升级设备接收所述控制设备下载的固件升级文件并进行固件升级操作之后,还可包括:所述待升级设备在检测到固件升级成功后,更新所述预设链接文件中包含的当前固件版本信息。在固件升级成功后,当前固件版本随之也发生改变,为了便于下次升级时获取准确的当前固件版本信息,则可更新预设链接文件中包含的当前固件版本信息,如更新版本号。在上述实施例的基础上,所述预设链接文件中还可包括所述待升级设备的硬件版本信息和/或所述待升级设备的身份信息。所述服务器在根据所述当前固件版本信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务,可包括:所述服务器在根据所述当前固件版本信息、以及所述待升级设备的硬件版本信息和/或所述待升级设备的身份信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务。示例性的,服务器的数据库中存储的固件升级文件所对应的固件版本信息可以是与硬件版本信息(如硬件版本号)存在对应关系的,可根据硬件版本信息进一步判断是否存在适合当前待升级设备的固件升级文件,从而更加准确地判断是否需要进行固件更新。示例性的,待升级设备的身份信息可以是设备唯一的id号,服务器可对设备id号、硬件版本号以及固件版本信息逐一进行验证,可进一步判断是否存在适合当前待升级设备的固件升级文件,从而更加准确地判断是否需要进行固件更新。在上述实施例的基础上,固件升级文件可采用加密的方式进行存储和传输。具体的,向所述控制设备提供所述固件升级文件的下载服务,可包括向所述控制设备提供所述固件升级文件的加密下载服务;相应的,所述待升级设备接收所述控制设备下载的固件升级文件并进行固件升级操作,包括:所述待升级设备接收所述控制设备下载的固件升级加密文件,对所述固件升级加密文件进行解密,并进行固件升级操作。示例性的,可在设备出厂前约定好加密及解密算法,可进一步增强固件升级的安全性,防止恶意程序对待升级设备的固件进行篡改,同时也能够避免固件升级文件被恶意人员盗用。图4为本发明实施例二提供的一种固件升级方法的流程示意图,如图4所示,该方法包括:步骤401、待升级设备插入pc。步骤402、待升级设备与pc通过usb协议建立连接。步骤403、pc将待升级设备枚举为u盘。步骤404、pc检测到用户双击u盘中的链接文件。步骤405、后台服务器从链接中收到参数信息。步骤406、后台服务器检查是否有固件需要更新,若是,则执行步骤407;否则,执行步骤412。步骤407、后台服务器提供固件升级文件供pc下载。步骤408、pc根据用户操作将固件升级文件存储至u盘。步骤409、待升级设备检测固件升级文件的合法性,若合法,则执行步骤410;否则,结束流程。步骤410、写入新固件。步骤411、更新链接文件,完成升级过程。步骤412、显示问候信息。本发明实施例二提供的固件升级方法,无需在控制设备上安装专用的应用软件和驱动程序即可实现远程固件在线升级,简化了固件升级流程,降低了固件升级的专业难度,无需专业人员指导即可实现快速升级,提高固件升级效率。实施例三图5为本发明实施例三提供的一种固件升级方法的流程示意图,该方法可以由固件升级装置执行,该装置可以由软件和/或硬件实现,一般可集成在具备升级功能的设备中。如图5所示,该方法包括:步骤501、在检测到待升级设备被控制设备枚举为u盘时,将存储在所述待升级设备中的预设链接文件显示在所述u盘的目录下。其中,所述预设链接文件中包含预设网址信息和所述待升级设备的当前固件版本信息,所述待升级设备与所述控制设备通过通用串行总线usb连接进行通信。步骤502、在接收到控制设备发送的针对预设链接文件的打开请求时,向控制设备反馈预设网址信息和所述当前固件版本信息,以使控制设备访问网址信息对应的服务器并将当前固件版本发送至服务器。其中,当所述服务器根据所述当前固件版本信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务。步骤503、接收所述控制设备下载的固件升级文件并进行固件升级操作。本发明实施例中的技术方案原理及技术效果与上述实施例类似,具体技术细节可参照上述实施例中的相关内容,此处不再赘述。实施例四图6为本发明实施例四提供的一种固件升级系统的框架示意图,如图6所示,该系统包括:控制设备61、服务器62和待升级设备63;所述控制设备61包括:设备枚举模块611,用于在检测到与待升级设备建立通用串行总线usb连接时,将所述待升级设备枚举为u盘,并在所述u盘的目录下显示所述待升级设备中的预设链接文件,其中,所述预设链接文件中包含预设网址信息和所述待升级设备的当前固件版本信息;服务器访问模块612,用于在监测到用户针对所述预设链接文件的打开操作时,获取所述预设网址信息并访问相应的服务器,将所述当前固件版本信息发送至所述服务器;所述服务器62包括:下载服务提供模块621,用于在根据所述当前固件版本信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务;所述待升级设备63包括:升级模块631,用于接收所述控制设备下载的固件升级文件并进行固件升级操作。图7为本发明实施例四提供的一种固件升级系统工作过程示意图,如图所示,可升级设备通过usb接口与pc连接后,以免驱u盘形式在于pc中,u盘中包含升级检查链接文件,用户打开该链接文件后,pc通过有线或无线方式连接互联网,将链接文件中包含的固件参数提供给后台服务器,后台服务器向pc提供更新的加密固件,pc将加密固件存入u盘后,待升级设备可自动完成解密及固件升级。在上述实施例的基础上,所述待升级设备还包括:版本信息更新模块,用于在接收所述控制设备下载的固件升级文件并进行固件升级操作之后,在检测到固件升级成功后,更新所述预设链接文件中包含的当前固件版本信息。在上述实施例的基础上,所述预设链接文件中还包括所述待升级设备的硬件版本信息和/或所述待升级设备的身份信息;下载服务提供模块用于:在根据所述当前固件版本信息、以及所述待升级设备的硬件版本信息和/或所述待升级设备的身份信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务。在上述实施例的基础上,向所述控制设备提供所述固件升级文件的下载服务,包括:向所述控制设备提供所述固件升级文件的加密下载服务;相应的,所述升级模块用于:接收所述控制设备下载的固件升级加密文件,对所述固件升级加密文件进行解密,并进行固件升级操作。图8为本发明实施例五提供的一种固件升级装置的结构框图,该装置可集成于可升级的设备中。可升级的设备在本发明实施例中又被称为待升级设备。待升级设备可以是生产设备、检测设备、实验设备以及公共服务设备等包含固件的设备,一般不具备访问互联网的功能。如图8所示,该装置包括:文件显示控制模块81,用于在检测到待升级设备被控制设备枚举为u盘时,将存储在所述待升级设备中的预设链接文件显示在所述u盘的目录下,其中,所述预设链接文件中包含预设网址信息和所述待升级设备的当前固件版本信息,所述待升级设备与所述控制设备通过通用串行总线usb连接进行通信;信息反馈模块82,用于在接收到所述控制设备发送的针对所述预设链接文件的打开请求时,向所述控制设备反馈所述预设网址信息和所述当前固件版本信息,以使所述控制设备访问所述网址信息对应的服务器并将所述当前固件版本发送至所述服务器;其中,当所述服务器根据所述当前固件版本信息检测到存在新版本的固件升级文件时,向所述控制设备提供所述固件升级文件的下载服务;升级模块83,用于接收所述控制设备下载的固件升级文件并进行固件升级操作。本发明实施例提供的固件升级装置,无需在控制设备上安装专用的应用软件和驱动程序即可实现远程固件在线升级,简化了固件升级流程,降低了固件升级的专业难度,无需专业人员指导即可实现快速升级,提高固件升级效率。注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1