[发明专利]一种软件在线升级方法及系统在审
| 申请号: | 202110106659.5 | 申请日: | 2021-01-26 |
| 公开(公告)号: | CN112947977A | 公开(公告)日: | 2021-06-11 |
| 发明(设计)人: | 叶蓓;许涛;桂栋 | 申请(专利权)人: | 上海船舶运输科学研究所 |
| 主分类号: | G06F8/654 | 分类号: | G06F8/654;G06F8/656 |
| 代理公司: | 上海申新律师事务所 31272 | 代理人: | 吴轶淳 |
| 地址: | 200120 上海市浦东新区*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 软件 在线 升级 方法 系统 | ||
本发明提供一种软件在线升级方法及系统,涉及软件升级技术领域,包括:步骤S1,实时监测并接收上位机发送的一固件升级程序;步骤S2,将固件升级程序保存至第三存储区后,将一升级标志位配置为一第一预设值,随后重启设备;步骤S3,在船用嵌入式设备每次启动时,执行第一存储区中保存的一启动程序读取升级标志位,判断升级标志位的值是否为第一预设值:若是,则将固件升级程序拷贝至第二存储区,并将升级标志位配置为一第二预设值,完成船用嵌入式设备的软件在线升级;若否,则跳转执行当前运行程序。有益效果是能够在不更改任何硬件设备的前提下,实现通过上位机软件对微控制器嵌入式软件进行版本升级,且不影响设备的正常运行。
技术领域
本发明涉及软件升级技术领域,尤其涉及一种软件在线升级方法及系统。
背景技术
随着半导体技术的不断进步,嵌入式设备在军用和民用领域得到了广泛应用,但应用场景的复杂化多元化对嵌入式设备的维护、固件更新提出了新的要求。在设备的全生命周期中,因为需求更改或软件缺陷等原因,对设备进行维护是不可避免的环节,此时需要更新嵌入式设备软件程序。而现有的嵌入式设备的软件设计方案无法满足船用嵌入式设备的软件升级需求,一方面,现有软件设计方案需要进行设备拆卸,当前船舶应用领域中嵌入式设备体积较大,大多拆卸困难,采用将设备拆卸并替换新的设备的方式进行嵌入式设备的软件升级,费时费力且操作复杂,不便维护;另一方面,在船舶应用场景中,普遍应用的通信总线是CAN现场总线,CAN现场总线在升级中需要制定特殊的CAN升级协议,若系统协议比较复杂,可能会出现无法兼容已生产的设备,导致升级失败或者无法升级。
发明内容
针对现有技术中存在的问题,本发明提供一种软件在线升级方法,用于船用嵌入式设备,所述船用嵌入式设备包括一微控制器、分别连接所述微控制器的一串口通信接口以及一存储器,所述存储器预先配置有一第一存储区、一第二存储区、一第三存储区以及一第四存储区,所述第二存储区中保存有当前运行程序;
所述软件在线升级方法包括:
步骤S1,所述微控制器执行所述当前运行程序过程中实时监测外部的一上位机通过所述串口通信接口发送的升级指令,并在监测接收到所述升级指令后接收所述上位机发送的一固件升级程序;
步骤S2,所述微控制器将所述固件升级程序保存至所述第三存储区后,将所述第四存储区存储的一升级标志位配置为一第一预设值,随后重启所述船用嵌入式设备;
步骤S3,所述微控制器在所述船用嵌入式设备每次启动时,首先执行所述第一存储区中保存的一启动程序进行硬件初始化并读取所述升级标志位,判断所述升级标志位的值是否为所述第一预设值:
若是,则转向步骤S4;
若否,则转向步骤S5;
步骤S4,所述微控制器将所述固件升级程序拷贝至所述第二存储区,将所述固件升级程序作为所述当前运行程序并将所述升级标志位配置为一第二预设值,完成所述船用嵌入式设备的软件在线升级;
步骤S5,所述微控制器跳转执行所述当前运行程序,随后返回所述步骤S1。
优选的,所述步骤S1中,所述微控制器与所述上位机之间采用Ymodem协议进行通信实现接收所述固件升级程序。
优选的,所述步骤S4包括:
步骤S41,所述微控制器将所述固件升级程序拷贝至所述第二存储区;
步骤S42,所述微控制器读取所述第二存储区中的当前存储程序,并将所述当前存储程序与所述第三存储区中的所述固件升级程序进行比对,判断所述当前存储程序与所述固件升级程序是否一致:
若是,则转向步骤S43;
若否,则返回所述步骤S41;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海船舶运输科学研究所,未经上海船舶运输科学研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110106659.5/2.html,转载请声明来源钻瓜专利网。





