[发明专利]一种单片机在线升级方法和系统无效
申请号: | 201310124921.4 | 申请日: | 2013-04-11 |
公开(公告)号: | CN103197943A | 公开(公告)日: | 2013-07-10 |
发明(设计)人: | 朱正才;何臣 | 申请(专利权)人: | 航天科工深圳(集团)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518048 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 单片机 在线 升级 方法 系统 | ||
1.一种单片机在线升级方法,所述单片机通过串口与外部系统通信连接,且通过数据总线与外部存储装置通信连接,所述单片机具有内部存储器,内部存储器中存储有运行程序,所述运行程序包括完成单片机功能的用户程序和升级所述用户程序的引导程序,其特征在于,所述引导程序包括备份模块、升级模块和恢复模块;所述方法包括以下步骤:
S1.判断是否需要对所述用户程序进行升级,若是,则执行步骤S2,若否,则直接转至步骤S4;
S2.调用所述备份模块将所述用户程序备份到外部存储装置;
S3.调用所述升级模块接收外部系统所发送的升级文件协议帧,并解析所述升级文件协议帧,且将解析后的升级文件协议帧保存至所述单片机的内部存储器;
S4.判断所述引导程序的当前升级标识是否为升级成功状态或为升级完毕状态,若是,则直接转至步骤S6,若否,则执行步骤S5;
S5.调用所述恢复模块将所述外部存储装置中备份的用户程序恢复至所述单片机的内部存储器的用户程序区;
S6.调用所述用户程序的跳转函数,并立即开始执行用户程序指令。
2.根据权利要求1所述的方法,其特征在于,在步骤S1中,若所述单片机在预设时间内未收到升级所述用户程序的回复命令,则直接转至步骤S4。
3.根据权利要求1所述的方法,其特征在于,所述步骤S3具体包括以下步骤:
S31.调用所述升级模块时修改所述引导程序的当前升级标识为正在升级状态,并将该正在升级状态保存至所述外部存储装置;
S32.接收外部系统所发送的升级文件协议帧;
S33.判断所述升级文件协议帧是否为数据帧,若是,则执行步骤S341,若否,则执行步骤S342;
S341.验证所述升级文件协议帧的编号是否正确,若是,则执行步骤S35,若否,则回复所述升级文件协议帧接收失败的命令,并要求重发所述升级文件协议帧,返回步骤S32;
S342.判断所述升级文件协议帧是否为结束帧,若是,则修改所述引导程序的当前升级标识为升级完毕状态,执行步骤S35,若否,则返回步骤S32;
S35.提取待升级用户程序的升级文件内容;
S36.根据校验和判断所述升级文件内容是否正确,若是,则执行步骤S37,若否,则回复所述升级文件协议帧接收失败的命令,并要求重发所述升级文件协议帧,返回步骤S32;
S37.将所述升级文件内容保存至单片机的内部存储器的用户程序区;
S38.回复确认收到所述升级文件协议帧,并准备接收下一个升级文件协议帧,返回步骤S32。
4.根据权利要求1所述的方法,其特征在于,在所述步骤S1之前还包括以下步骤:
S0.对所述单片机的硬件进行初始化,所述硬件包括时钟信息和串口信息。
5.根据权利要求3所述的方法,其特征在于,所述外部系统为个人计算机。
6.根据权利要求3所述的方法,其特征在于,所述升级文件协议帧遵循Xmodem协议格式。
7.根据权利要求3所述的方法,其特征在于,所述外部存储装置和所述内部存储器的用户程序区均为flash。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于航天科工深圳(集团)有限公司,未经航天科工深圳(集团)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310124921.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种群发短消息的系统及方法
- 下一篇:铁水脱硫用热态修补料