[发明专利]嵌入式系统的在线升级方法无效
申请号: | 201210598589.0 | 申请日: | 2012-12-29 |
公开(公告)号: | CN103092647A | 公开(公告)日: | 2013-05-08 |
发明(设计)人: | 钟波;高平波 | 申请(专利权)人: | 聚光科技(杭州)股份有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F11/10 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 310052 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 系统 在线 升级 方法 | ||
技术领域
本发明涉及程序升级,特别涉及嵌入式系统的在线升级方法。
背景技术
在基于嵌入式系统的电子产品中,通常采用单片机以及ARM作为其主控制器以及处理器。由于应用软件需要不断的更新,所以在成品的电子产品中,通常需要进行软件的在线升级,以增加新增的功能,以及解决当前存在的软件缺陷。
传统的单片机升级方法,通常有两种:一种为,单片机程序分为独立的应用程序和Boot程序,Boot程序用于将需要升级的应用程序写到当前的应用程序中,通常是需要将单片机重启或者接收命令后,进入一个Boot程序的状态,此时不运行正常的应用程序,仅能进行软件的升级。另一种是利用某些单片机自带的Boot程序,重启单片机,控制硬件上的引脚使之进入Boot程序,使用单片机厂商提供的升级软件进行升级。
以上两种方法存在以下的弊端:1.应用程序和Boot程序独立存在,在下载代码的时候,需要下载两遍程序;2.进入Boot程序模式后,应用程序无法运行;3.在软件升级过程中,如果突然断电,会导致应用程序的故障,无法继续升级,原先的应用程序也无法运行。
与单片机领域类似的PC软件升级方法,在应用程序运行的同时,通常首先将应用程序进行下载,下载完成后,关闭当前应用程序,进行软件的升级。然而PC软件的升级是基于完整的操作系统和文件系统,升级的应用程序以文件方式存在,这些条件在单片机上并不具备。另外,PC的软件升级方法,需要在运行应用程序的时候,同时有另外的进程进行新应用程序的下载,由于单片机仅能运行一个应用程序,所以无法采用该方式。
发明内容
为了解决上述现有技术方案中的不足,本发明提供了一种方便可靠、解决升级过程中因掉电等原因导致升级失败而引起的程序出错的在线升级方法。
本发明的目的是通过以下技术方案实现的:
嵌入式系统的在线升级方法,所述在线升级方法包括以下步骤:
(A1)嵌入式系统执行应用程序及升级命令;
(A2)待升级的代码利用通讯协议发送给所述嵌入式系统,所述嵌入式系统调用引导区的接口函数,将所述待升级的代码存储到临时区,完成后将标志区的标志位设置为代码正确下载标志位;复位所述嵌入式系统;
(A3)所述嵌入式系统运行引导区内的程序,初始化所述接口函数,并读取标志区的标志:
若标志位为正确下载标志位,交换所述代码区和临时区的代码,交换完成后执行代码区的应用程序。
根据上述的在线升级方法,可选地,所述步骤(A2)进一步包括以下步骤:
(B1)所述待升级的代码存储到临时区后,进行接收到的待升级的代码的CRC校验;
若失败,则软件复位;
若成功,则将标志区的标志位设置为代码正确下载标志位。
根据上述的在线升级方法,可选地,所述步骤(A2)进一步包括:
若标志位为代码恢复标志位,交换所述代码区和临时区的代码,复位所述嵌入式系统;
若标志位为异常标志位,将标志位修改为正常标志位,所述嵌入式系统运行代码区的应用程序。
与现有技术相比,本发明具有的有益效果为:
1、应用程序中包含了引导程序的相关代码,所以只需要下载一遍应用程序即可,使用方便;
2、升级过程中仍可以运行正常的应用程序;
3、升级过程与物理链路无关,应用广泛;
4、采用CRC对最终的应用程序进行校验,保证应用程序的完整性;
5、采取了较多的掉电保护措施,可以避免因升级失败引起的程序崩溃;
6、升级完成后可恢复至升级之前的应用程序。
附图说明
参照附图,本发明的公开内容将变得更易理解。本领域技术人员容易理解的是:这些附图仅仅用于举例说明本发明的技术方案,而并非意在对本发明的保护范围构成限制。图中:
图1是根据本发明实施例1的程序存储空间的分区简图;
图2是根据本发明实施例1的在线升级方法的流程图。
具体实施方式
图1、2和以下说明描述了本发明的可选实施方式以教导本领域技术人员如何实施和再现本发明。为了教导本发明技术方案,已简化或省略了一些常规方面。本领域技术人员应该理解源自这些实施方式的变型或替换将在本发明的范围内。本领域技术人员应该理解下述特征能够以各种方式组合以形成本发明的多个变型。由此,本发明并不局限于下述可选实施方式,而仅由权利要求和它们的等同物限定。
实施例1:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于聚光科技(杭州)股份有限公司,未经聚光科技(杭州)股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210598589.0/2.html,转载请声明来源钻瓜专利网。