[发明专利]一种MCU自我备份加载刷新的方法有效
申请号: | 201610095745.X | 申请日: | 2016-02-22 |
公开(公告)号: | CN105760165B | 公开(公告)日: | 2019-09-06 |
发明(设计)人: | 刘钧;姚顺;冯颖盈;杨学锋;郑必伟 | 申请(专利权)人: | 深圳威迈斯新能源股份有限公司 |
主分类号: | G06F9/4401 | 分类号: | G06F9/4401;G06F11/14;G06F21/57 |
代理公司: | 深圳市康弘知识产权代理有限公司 44247 | 代理人: | 胡朝阳;孙洁敏 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种MCU自我备份加载刷新的方法,包括下列步骤:将MCU的FLASH分为Boot区、App区、Bak区和Flag区;MCU上电后首先在Boot区中读取Flag区中的标志位;判断进入App区还是在Boot区完成加载过程;如是App区,则往Flag区写入加载标志、软硬件版本号及模块地址信息后重启;如是Boot区,则判断是新加载还是之前加载失败恢复App数据;恢复App区数据则直接从Bak区中读取数据并更新到App区;新加载,则输入加载密钥,校验通过则将相关数据写入Bak区;从Bak区中取出数据写入App区,并更新App区代码;终止加载过程,重新启动并进入当前App区执行App程序。本发明仅靠MCU自身即可完成备份加载过程,节省外设成本也提高了加载功能的可靠性。 | ||
搜索关键词: | 一种 mcu 自我 备份 加载 刷新 方法 | ||
【主权项】:
1.一种MCU自我备份加载刷新的方法,其特征在于,包括下列步骤:步骤1.将MCU的FLASH分为以下四个用于存储不同的功能数据的部分:Boot区,用于执行加载过程;App区,用于正常应用代码空间;Bak区,用于应用代码备份空间;Flag区,用于掉电数据保存空间;所述的应用代码备份空间和正常执行空间位于同一块FLASH中,无需特意进行外加扩展;步骤2.MCU上电后首先进入Boot区,在Boot区中读取Flag区中的标志位;步骤3.判断进入App区还是在Boot区完成加载过程;如果进入App区,则在代码执行过程中接收到加载请求后,判断软硬件版本号,当版本号满足要求时,往Flag区写入加载标志、软硬件版本号及模块地址信息后重启,进入Boot区开始执行加载过程;当进入Boot区,则进入步骤4,开始执行加载过程;步骤4.判断是新加载还是之前加载失败恢复App数据,如是恢复App区数据则直接从Bak区中读取数据并更新到App区;如果是新加载,则要求输入加载密钥;步骤5.判断加载密钥是否正确,加载密钥匹配正确后开始接收数据并校验,校验通过则将相关数据写入Bak区;加载密钥不匹配则转步骤7;步骤6.从Bak区中取出数据写入App区,并更新App区代码;步骤7.终止加载过程,重新启动并进入当前App区执行App程序;步骤8.重新启动,完成MCU的自我备份加载刷新。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳威迈斯新能源股份有限公司,未经深圳威迈斯新能源股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610095745.X/,转载请声明来源钻瓜专利网。