一种设备远程无线升级方法

文档序号:9750610阅读:939来源:国知局
一种设备远程无线升级方法
【技术领域】
[0001]本发明涉及一种设备远程升级的技术领域,特别是一种设备远程无线升级方法。
【背景技术】
[0002]随着信息技术的发展,远程无人值守设备广泛应用于各个领域中。由于技术的发展和更新,无人职守设备需要进行定期升级,但是,现场升级工作强度大、难度高,而远程自动升级则很好的解决这个问题。
[0003]现有设备远程无线升级方法为:处理器包括两个存储区:bootloader区和APP区,处理器上电后,首先运行在bootloader区,满足升级的条件时,则对APP区的程序进行升级,升级完成后,处理器重新启动;如果不满足升级的条件时,程序指针直接跳转到APP区,开始执行存放在APP区的程序。但是此种升级方法一旦程序升级失败,原APP区中的程序已经被覆盖,导致设备无法正常运行,需要人工去现场处理。

【发明内容】

[0004]本发明的目的在于提供一种设备远程无线升级方法,解决了现有升级方法存在程序升级失败会直接导致设备无法正常运行的技术问题。
[0005]为达到解决上述技术目的,本发明采用如下技术方案予以实现:
一种设备远程无线升级方法,所述方法包括:运行boot loader区的程序;判断是否有升级程序数据,若有,更新升级程序区的程序;若升级成功,运行升级程序区的程序;若没有升级程序数据或升级失败,则运行备份程序区的程序。
[0006]如上所述的设备远程无线升级方法,所述处理器设置有更新程序标志位,通过更新程序标志位判断是否有更新程序。
[0007]如上所述的设备远程无线升级方法,所述处理器设置有升级成功标志位,通过升级成功标志位判断是否升级成功。
[0008]如上所述的设备远程无线升级方法,包括以下步骤:
B1、运行bootloader区的程序,查询更新标志位;
B2、判断更新程序标志位是否为置位,若是,进入步骤B3,否则,进入步骤B5;
B3、拷贝存储器中的升级程序数据至升级程序区,拷贝完毕后将更新程序标志位复位,升级成功标志位复位,并跳转至升级程序区进行升级;
B4、判断是否升级成功,若是,进入步骤B6,否则,进入步骤BI;
B5、判断升级成功标志位是否为置位;若是,进入步骤B6,否则,进入步骤B7;
B6、运行升级程序区的程序,将升级成功标志位置位;
B7、运行备份程序区的程序。
[0009]如上所述的设备远程无线升级方法,处理器在运行升级程序区或备份程序区的程序时,接收到升级指令后,控制无线模块开始接收升级程序数据,并将接收到的升级程序数据存储至存储器;接收完所有升级程序数据后,重启设备运行boot loader区的程序。
[0010]如上所述的设备远程无线升级方法,所述运行升级程序区的程序之后还包括拷贝存储器中的升级程序数据至备份程序区的步骤。
[0011]如上所述的设备远程无线升级方法,接收完所有升级程序数据后,将更新程序标志位置位。
[0012]如上所述的设备远程无线升级方法,所述升级程序数据包括若干数据分包,接收升级程序数据的过程为依次接收数据分包的过程。
[0013]如上所述的设备远程无线升级方法,所述数据分包包括包头、包尾和校验,所述接收升级程序数据的过程为:设备接收发送端发送的当前数据分包,接收之后判断校验是否正确,若正确,则保存当前数据分包并发送确认信息至发送端,发送端继续发送下一个数据分包,否则,不做处理等待发送端重新发送当前数据分包。
[0014]如上所述的设备远程无线升级方法,所述发送端在设定时间内未接收到确认信息则重新发送当前数据包至设备。
[0015]本发明的有益效果为:本发明处理器包括bootloader区、升级程序区和备份程序区;处理器可以分别运行bootloader区、升级程序区和备份程序区的程序,设备启动时,首先运行bootloader区的程序,判断是否有升级程序数据,若有,对升级程序区的程序进行升级;若没有或升级程序区的程序升级失败时,运行备份程序区的程序,以保证设备在升级失败的情况下仍然能够正常运行。
[0016]结合附图阅读本发明实施方式的详细描述后,本发明的其他特点和优点将变得更加清楚。
【附图说明】
[0017]图1是本发明具体实施例的流程图。
[0018]图2是本发明具体实施例的流程图。
【具体实施方式】
[0019]下面结合【附图说明】本发明的【具体实施方式】:
本实施例为了使处理器可以响应远程升级,在处理器里预设boot loader区,boot loader区内存储有boot loader程序。bootLoader程序是一段引导程序,它驻留在处理器中,当处理器上电/复位后在用户程序之前先运行。它运行后先判断当前是否需要升级程序。
[0020]如图1所示,处理器内部分为3个区。分别为bootloader区,备份程序区和升级程序区。bootloader区内存储有bootloader程序;备份程序区内存储有备份程序,升级程序区内存储有升级程序。如图1所示,设备远程无线升级方法为:
51、运行bootloader区的程序;
52、判断是否有更新程序,若有进入步骤S3,否则,进入步骤S6;
53、更新升级程序区的程序;
54、判断升级是否成功,若是,进入步骤S5,否则,进入步骤S6;
55、运行升级程序区的程序;
56、运行备份程序区的程序。
[0021]处理器在运行升级程序区或备份程序区的程序时,接收到升级指令后,控制无线模块开始接收升级程序数据,并将接收到的升级程序数据存储至存储器;接收完所有升级程序数据后,重启设备运行bootloader区的程序,即进入步骤SI。
[0022]优选的,运行升级程序区的程序之后还包括拷贝存储器中的升级程序数据至备份程序区的步骤。
[0023]其中,由于升级程序数据文件通常都较大,需要分包处理,即升级程序数据包括若干数据分包,接收升级程序数据的过程为依次接收数据分包的过程。
[0024]数据分包包括包头、包尾和校验,接收升级程序数据的过程为:设备接收发送端发送的当前数据分包,接收当
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1