一种智能家电设备的固件升级方法及系统技术方案

技术编号:17939260 阅读:28 留言:0更新日期:2018-05-15 19:47
本发明专利技术涉及一种智能家电设备的固件升级方法,所述方法包括接收服务器的响应信息,其中,所述响应信息包括升级固件数据包的下载地址,所述升级固件数据包中包括多个子数据包及与所述每个子数据包对应的第一校验信息;分别获取所述子数据包并对其第一校验信息进行校验;在所述子数据包全部校验成功时下载所述升级固件数据包进行升级。此外,还提供了一种智能家电设备的固件升级系统。采用本技术方案对升级固件数据包先进行分批下载校验,待新固件数据包验证成功后再全部下载烧写,使得在校验过程中对运行Flash的容量要求较小,还保证了整个升级固件数据包的正确性,确保升级过程能够顺利进行。

【技术实现步骤摘要】
一种智能家电设备的固件升级方法及系统
本专利技术涉及智能家电设备领域,尤其涉及一种智能家电设备的固件升级方法。
技术介绍
随着科技的不断发展以及人们对于美好生活的需求,家电设备开始变得越来越智能化,对于各种智能家电设备而言,通常需要进行软件更新升级,以修复旧版本固件的Bug、增加新的功能以及更换UI等,从而为用户提供更好的体验。现有的技术中家电设备通常采用的方案是通过网络直接下载固件覆盖升级原固件,但是采用这种方法在覆盖前需要将原有的固件删除,一旦因为新固件版本或者内容错误造成家电设备升级失败,需要联系售后的专业人员进行修复,给用户来带诸多不便。因此,出现了一种改进方案,通过在智能家电设备的Flash中划分出两个存储区域分别用来存放现有运行固件以及存放下载的升级固件,从而实现在升级成功后直接切换到存放升级固件的存储区,然而会导致Flash成本因为容量要求变大而随之增加,更严重的还在于倘若下载的升级固件有问题则依旧无法实现顺利的升级。
技术实现思路
本专利技术旨在至少部分解决现有技术或相关技术中存在的问题。本专利技术的一个目的在于提出一种新的智能家电设备的固件升级方法,该方法无需增加Flash成本,而且能够保证固件稳定、可靠的升级。本专利技术采用的技术方案如下:一种智能家电设备的固件升级方法,包括:接收服务器的响应信息,其中,所述响应信息包括升级固件数据包的下载地址,所述升级固件数据包中包括多个子数据包及与所述每个子数据包对应的第一校验信息;分别获取所述子数据包并对其第一校验信息进行校验;在所述子数据包全部校验成功时下载所述升级固件数据包进行升级。进一步的,分别获取所述子数据包并对其第一校验信息进行校验步骤还包括:在任一子数据包校验成功时,存储第一校验结果信息以供下一子数据包验证使用并丢弃所述子数据包。进一步的,还包括:在任一子数据包校验失败时,向服务器重新获取所述子数据包进行校验,并在校验失败次数达到预设阈值时退出本次升级。进一步的,在所述子数据包均校验成功时下载所述升级固件数据包进行升级步骤还包括:备份所述升级固件数据包;根据所述升级固件数据包进行升级。进一步的,所述下载所述升级固件数据包进行升级步骤还包括:分别获取所述子数据包并对其第一校验信息进行校验;在所述子数据包校验成功时将其分别写入运行Flash。进一步的,所述升级固件数据包还包括第二校验信息,所述在所述子数据包校验成功时将其分别写入运行Flash步骤后,还包括:根据所述第一校验结果信息校验所述第二校验信息;在所述第二校验信息校验成功时清除状态标志位;在所述第二校验信息校验失败时退出本次升级。进一步的,所述运行Flash包括至少一个扇区,所述在所述子数据包校验成功时将其分别写入运行Flash步骤包括:检测所述至少一个扇区中是否存在损坏的扇区;在确定所述至少一个扇区中存在损坏的扇区时,对所述运行Flash进行重新分区,以过滤所述损坏的扇区;将所述校验成功的子数据包写入重新分区后的运行Flash。进一步的,所述方法还包括:所述智能家电设备上电后,启动Bootloader,获取状态标志位的信息;在状态标志位为升级状态时,向服务器端发送固件升级请求信息,其中,所述固件升级请求信息包括智能家电设备的型号和固件版本信息;在状态标志位为运行状态时,直接跳转至运行Flash运行固件。进一步的,所述方法还包括:检测升级后的运行固件版本信息与预设固件版本信息;在所述运行固件版本信息与预设固件版本信息不一致时向服务器发送恢复上一固件版本的请求信息。本专利技术的另一个目的在于提供一种智能家电设备的固件升级系统,所述智能家电设备的固件升级系统包括:服务器,用于存储升级固件数据包和响应智能家电设备的固件升级请求,其中所述升级固件数据包包括多个子数据包及与所述每个子数据包对应的第一校验信息;智能家电设备,用于根据服务器的响应信息获取所述子数据包并对其第一校验信息进行校验,并在所述子数据包全部校验成功时下载所述升级固件数据包进行升级。采用本技术方案的有益效果为:1.服务器在接收到需要对智能家电设备的请求信息后,根据所述请求信息和存储于服务器上的升级固件数据包信息向智能家电设备反馈包括升级固件数据包下载地址的响应信息,智能家电设备首先分别获取所述升级固件数据包分拆的子数据包及与所述子数据包对应的第一校验信息进行校验,当所述升级固件数据包所包含的子数据包全部校验成功后再下载所述升级固件数据包进行升级,使得在校验过程中对运行Flash的容量要求较小,现有普通设备的控制模块的Flash都能满足要求,还保证了整个升级固件数据包的正确性,确保升级过程能够顺利进行。此外,当智能家电从服务器上下载的任意一个子数据包校验成功时,将其第一校验信息校验后的第一校验结果信息存储,以供下一子数据包校验时使用,通过如此校验迭代的方式能够更好的保准数据的准确性,并且还将所述校验正确的子数据包丢弃,使得在预升级阶段中无需将所述子数据包进行存储而占用有限的运行Flash容量,降低对运行Flash性能的要求,进而降低Flash的成本;而当任一子数据包校验失败时,重新向服务器获取所述子数据包进行校验,在尝试重新获取所述子数据包或者当重新获取的子数据包无法验证通过而导致校验失败达到预设阈值时退出本次升级,避免设备反复处于升级状态而导致存储占用以及运行效率低下的问题。2.在所述子数据包均校验成功时下载备份所述升级固件数据包,然后根据所述升级固件数据包进行升级,使得只要备份的升级固件数据包准确,便可根据所述升级固件数据包进行离线升级,提升升级的可靠性。具体的,所述升级固件数据包可以不再校验直接烧写入运行Flash,从而提升升级的速度。当然,也可以按照前述步骤重新进行子数据包的校验后烧写,从而保证升级成功。3.在所述升级固件数据包完成一次校验后,为了避免网络异常断开或者延时、或者接收方任务占用导致数据丢失,在下载所述升级固件数据包进行升级步骤中,需要对子数据包进行二次校验,并在所述任一子数据包校验成功时将其分别写入运行Flash,从而保证整个升级的准确、顺利进行,还能够减低对Flash性能的要求,进而降低Flash的成本。4.由于子数据包在写入Flash过程中可能因为某些异常导致写入出错或者失败,需要在全部写入之后读取第二校验信息与最终的第一校验结果信息进行比对二次校验,当所述第二校验信息与所述第一校验信息的最终校验结果相同时表明校验成功并清除状态标志位,当所述第二校验信息与所述第一校验信息的最终校验结果不同时表明校验失败并重新进入升级流程。5.在烧写子数据包的过程中,若将子数据包烧写到运行Flash损坏的扇区中,仍将导致无法顺利完成升级,因此通过检测所述至少一个扇区中是否存在损坏的扇区,当所述至少一个扇区中存在损坏的扇区时,对Flash存储器进行重新分区从而将损坏的扇区过滤掉,然后再将校验成功的子数据包写入重新分区后的运行Flash中。6.当智能家电设备的程序升级过程中出现断电等异常中断时,由于此时设备的旧版本设备应用程序已经被清除,用户数据区存储的当前的工作状态为升级状态,因此,当设备再次上电启动Bootloader程序时,检测获取存储的状态标志位信息,若状态标志位为升级状态,则重新向服务器端发送固件升级请求信息并按照升级本文档来自技高网...
一种智能家电设备的固件升级方法及系统

【技术保护点】
一种智能家电设备的固件升级方法,其特征在于,包括:接收服务器的响应信息,其中,所述响应信息包括升级固件数据包的下载地址,所述升级固件数据包中包括多个子数据包及与所述每个子数据包对应的第一校验信息;分别获取所述子数据包并对其第一校验信息进行校验;在所述子数据包全部校验成功时下载所述升级固件数据包进行升级。

【技术特征摘要】
1.一种智能家电设备的固件升级方法,其特征在于,包括:接收服务器的响应信息,其中,所述响应信息包括升级固件数据包的下载地址,所述升级固件数据包中包括多个子数据包及与所述每个子数据包对应的第一校验信息;分别获取所述子数据包并对其第一校验信息进行校验;在所述子数据包全部校验成功时下载所述升级固件数据包进行升级。2.根据权利要求1所述智能家电设备的固件升级方法,其特征在于,分别获取所述子数据包并对其第一校验信息进行校验步骤还包括:在任一子数据包校验成功时,存储第一校验结果信息以供下一子数据包校验使用并丢弃所述子数据包。3.根据权利要求2所述智能家电设备的固件升级方法,其特征在于,还包括:在任一子数据包校验失败时,向服务器重新获取所述子数据包进行校验,并在校验失败次数达到预设阈值时退出本次升级。4.根据权利要求2所述智能家电设备的固件升级方法,其特征在于,在所述子数据包均校验成功时下载所述升级固件数据包进行升级步骤还包括:备份所述升级固件数据包;根据所述升级固件数据包进行升级。5.根据权利要求2或3或4所述智能家电设备的固件升级方法,其特征在于,所述下载所述升级固件数据包进行升级步骤还包括:分别获取所述子数据包并对其第一校验信息进行校验;在所述子数据包校验成功时将其分别写入运行Flash。6.根据权利要求5所述智能家电设备的固件升级方法,其特征在于,所述升级固件数据包还包括第二校验信息,所述在所述子数据包校验成功时将其分别写入运行Flash步骤后,还包括:根据所述第一校验结果信息校验所述第二校验信息;在所述第二校...

【专利技术属性】
技术研发人员:朱泽春时春平
申请(专利权)人:九阳股份有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1