一种软件远程升级方法及控制器技术

技术编号:15724158 阅读:82 留言:0更新日期:2017-06-29 09:28
本发明专利技术实施例公开了一种软件远程升级方法及控制器,其中方法包括若接收到更新应用程序的操作指令且外置Flash芯片的升级区没有存储有升级应用程序时,或若接收到不更新应用程序的操作指令且外置Flash芯片的备份区没有存储有原有应用程序时,判断是否接收到应用程序升级请求;若接收到应用程序升级请求,接收新的升级应用程序并覆盖存储在外置Flash芯片的升级区;读取MCU芯片的应用程序区的应用程序并覆盖存储在外置Flash芯片的备份区。本发明专利技术实施例能够有效快速地进行软件升级,提高升级效率和可靠性。

【技术实现步骤摘要】
一种软件远程升级方法及控制器
本专利技术涉及计算机通信
,尤其涉及一种软件远程升级方法及控制器。
技术介绍
MCU芯片在线编程目前有两种主流实现方法:在系统编程(ISP)和在应用编程(IAP)。ISP烧写方法需要外部硬件的触发来完成整个MCU芯片的flash区的擦除和烧写。IAP升级方法则需要用户自己编写一段升级应用程序存储于MCU芯片的flash区的某个扇区,以完成对MCU芯片的flash区的其他扇区的擦除和烧写工作。不管以上哪种软件在线升级方法,都是将原有应用程序擦除后再写入新的应用程序,这样一旦软件升级失败,会导致芯片无法正常工作。
技术实现思路
本专利技术实施例提供一种软件远程升级方法及控制器,能够有效快速地进行软件升级,提高升级效率和可靠性。第一方面,本专利技术实施例提供了一种软件远程升级方法,该方法包括,若接收到更新应用程序的操作指令且外置Flash芯片的升级区没有存储有升级应用程序时,或若接收到不更新应用程序的操作指令且外置Flash芯片的备份区没有存储有原有应用程序时,判断是否接收到应用程序升级请求;若接收到应用程序升级请求,接收新的升级应用程序并覆盖存储在外置Flash芯片的升级区;读取MCU芯片的应用程序区的应用程序并覆盖存储在外置Flash芯片的备份区。另一方面,本专利技术实施例提供了一种控制器,该控制器包括,第一判断单元,用于若接收到更新应用程序的操作指令且外置Flash芯片的升级区没有存储有升级应用程序时,或若接收到不更新应用程序的操作指令且外置Flash芯片的备份区没有存储有原有应用程序时,判断是否接收到应用程序升级请求;接收单元,用于若接收到应用程序升级请求,接收新的升级应用程序并覆盖存储在外置Flash芯片的升级区;读取单元,用于读取MCU芯片的应用程序区的应用程序并覆盖存储在外置Flash芯片的备份区。本专利技术实施例能够有效快速地进行软件升级,提高升级效率和可靠性,尤其是能够在升级失败之后,自动恢复到升级前的状态。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例一提供的一种软件远程升级方法的示意流程图;图2是本专利技术实施例二提供的一种软件远程升级方法的示意流程图;图3是本专利技术实施例三提供的一种软件远程升级方法的示意流程图;图4是本专利技术实施例四提供的一种软件远程升级方法的示意流程图;图5是本专利技术实施例五提供的一种软件远程升级方法的示意流程图;图6是本专利技术实施例六提供的一种软件远程升级方法的示意流程图;图7是本专利技术实施例提供的一种控制器的示意性框图;图8是本专利技术实施例提供的一种控制器的示意性框图;图9是本专利技术实施例提供的一种控制器的示意性框图;图10是本专利技术实施例提供的一种控制器的示意性框图;图11是本专利技术实施例提供的一种控制器的示意性框图;图12是本专利技术实施例提供的一种控制器的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。实施例一参见图1,是本专利技术实施例一提供的一种软件远程升级方法的示意流程图,如图所示的方法可包括以下步骤,步骤S101,若接收到更新应用程序的操作指令且外置Flash芯片的升级区没有存储有升级应用程序时,判断是否接收到应用程序升级请求。其中,接收到更新应用程序的操作指令是指用户选择进行更新应用程序并进行了相应的操作,同时外置Flash芯片的升级区没有存储有升级应用程序时是指外置Flash芯片的升级区并未接收到升级应用程序,此时是无法完成软件升级的,故需要判断是否接收到应用程序的升级请求。另外,升级应用程序可以是对应用程序进行升级的软件升级包。步骤S102,若接收到应用程序升级请求,接收新的升级应用程序并覆盖存储在外置Flash芯片的升级区。其中,若接收到应用程序的升级请求,用户可以选择进行升级,那么此时就会接收到升级应用程序,为了避免发生异常情况,接收到升级应用程序后,需要对外置Flash芯片的升级区进行擦除,然后将接收到的新的升级应用程序读写入外置Flash芯片的升级区,以便用户选择使用升级应用程序。步骤S103,读取MCU芯片的应用程序区的应用程序并覆盖存储在外置Flash芯片的备份区。其中,当新的升级应用程序被存储完成后,需要擦除外置Flash芯片的备份区的数据,并将从MCU芯片的应用程序区中获取的应用程序读写入外置Flash芯片的备份区中,以防止升级应用程序更新失败后,原有应用程序丢失导致应用程序不能使用。本实施例能够有效快速地进行软件升级,提高升级效率和可靠性,尤其是能够在升级失败之后,自动恢复到升级前的状态。另外,本实施例中的外置Flash芯片可以是一个,也可以是多个,每个外置Flash芯片均在MCU中对应有一个应用程序区。实施例二参见图2,是本专利技术实施例二提供的一种软件远程升级方法的示意流程图,如图所示的方法可包括以下步骤,步骤S201,若接收到不更新应用程序的操作指令且外置Flash芯片的备份区没有存储有原有应用程序时,判断是否接收到应用程序升级请求。其中,接收到不更新应用程序的操作指令是指用户不进行更新操作,同时外置Flash芯片的备份区没有存储原有应用程序,可知用户选择使用原有应用程序。为了对MCU中的应用程序区的应用程序进行相应的备份,以保证软件在使用和升级过程中受到足够的保护。步骤S202,若接收到应用程序升级请求,接收新的升级应用程序并覆盖存储在外置Flash芯片的升级区。步骤S203,读取MCU芯片的应用程序区的应用程序并覆盖存储在外置Flash芯片的备份区。本实施例能够有效快速地进行软件升级,提高升级效率和可靠性,尤其是能够在升级失败之后,自动恢复到升级前的状态。另外,本实施例中的外置Flash芯片可以是一个,也可以是多个,每个外置Flash芯片均在MCU中对应有一个应用程序区。实施例三参见图3,是本专利技术实施例三提供的一种软件远程升级方法的示意流程图,如图所示的方法跟实施例一的区别在于,还包括以下步骤,步骤S104,若接收到更新应用程序的操作指令且外置Flash芯片的升级区存储有升级应用程序时,擦除MCU芯片的应用程序区的本文档来自技高网...
一种软件远程升级方法及控制器

【技术保护点】
一种软件远程升级方法,其特征在于,包括,若接收到更新应用程序的操作指令且外置Flash芯片的升级区没有存储有升级应用程序时,或若接收到不更新应用程序的操作指令且外置Flash芯片的备份区没有存储有原有应用程序时,判断是否接收到应用程序升级请求;若接收到应用程序升级请求,接收新的升级应用程序并覆盖存储在外置Flash芯片的升级区;读取MCU芯片的应用程序区的应用程序并覆盖存储在外置Flash芯片的备份区。

【技术特征摘要】
1.一种软件远程升级方法,其特征在于,包括,若接收到更新应用程序的操作指令且外置Flash芯片的升级区没有存储有升级应用程序时,或若接收到不更新应用程序的操作指令且外置Flash芯片的备份区没有存储有原有应用程序时,判断是否接收到应用程序升级请求;若接收到应用程序升级请求,接收新的升级应用程序并覆盖存储在外置Flash芯片的升级区;读取MCU芯片的应用程序区的应用程序并覆盖存储在外置Flash芯片的备份区。2.如权利要求1所述的方法,其特征在于,所述方法还包括,若接收到更新应用程序的操作指令且外置Flash芯片的升级区存储有升级应用程序时,或若接收到不更新应用程序的操作指令且外置Flash芯片的备份区有存储有原有应用程序时,擦除MCU芯片的应用程序区的应用程序;读取外置Flash芯片的升级区的升级应用程序并写入MCU芯片的应用程序区,或读取外置Flash芯片的备份区的原有应用程序并写入MCU芯片的应用程序区。3.如权利要求2所述的方法,其特征在于,所述外置Flash芯片的升级区或备份区均对应地设有不同的状态标识信息,所述状态标识信息包括第一标识信息、第二标识信息以及第三标识信息,其中第一标识信息对应升级区或备份区的已擦除状态,第二标识信息对应升级区或备份区的已存储状态,第三标识信息对应升级区或备份区的已读取状态。4.如权利要求3所述的方法,其特征在于,所述方法还包括,若读取外置Flash芯片的升级区的升级应用程序并写入MCU芯片的应用程序区后,或若读取外置Flash芯片的备份区的原有应用程序并写入MCU芯片的应用程序区后,升级应用程序或原有应用程序在MCU芯片的应用程序区中更新完成,将外置Flash芯片的升级区的状态标识信息或外置Flash芯片的备份区的状态标识信息更新为第三标识信息;判断外置Flash芯片的备份区的状态标识信息或外置Flash芯片的升级区的状态标识信息是否为第三标识信息;若外置Flash芯片的备份区的状态标识信息或外置Flash芯片的升级区的状态标识信息为第三标识信息,将外置Flash芯片的备份区的状态标识信息或外置Flash芯片的升级区的状态标识信息更新为第二标识信息。5.如权利要求4所述的方法,其特征在于,若读取外置Flash芯片的升级区的升级应用程序并写入MCU芯片的应用程序区后,或若读取外置Flash芯片的备份区的原有应用程序并写入MCU芯片的应用程序区后,升级应用程序或原有应用程序在MCU芯片的应用程序区中更新失败,显示选择提示框以供用户进行重新选择是否更新应用程序。6.一种控制器,其特征在于,包括,第一判断单元,用于若接收到更新应用程序的操作指令...

【专利技术属性】
技术研发人员:郑丽丽张东花
申请(专利权)人:深圳市英威腾电气股份有限公司
类型:发明
国别省市:广东,44

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

1