[发明专利]一种单片机在线升级方法和系统无效
申请号: | 201310124921.4 | 申请日: | 2013-04-11 |
公开(公告)号: | CN103197943A | 公开(公告)日: | 2013-07-10 |
发明(设计)人: | 朱正才;何臣 | 申请(专利权)人: | 航天科工深圳(集团)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518048 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 单片机 在线 升级 方法 系统 | ||
技术领域
本发明涉及单片机领域,尤其涉及一种单片机在线升级方法和系统。
背景技术
采用单片机设计的产品在测试和正式上线使用时,可能由于功能修正、变更或者加强,需要对单片机上运行的程序进行更新升级。目前,一般通过JTAG接口的方式进行升级,因为大部分单片机都集成了JTAG接口,该接口实现了遵循IEEE STD1149.1规定的测试访问端口状态机。它使用一个4线串行接口。数据和/或指令从测试数据输入;串行数据从测试数据输出移出;测试时钟作为时钟信号输入;测试模式选择信号控制状态机的状态。利用该接口可移入指令和/或数据,从而控制目标芯片的地址线和数据线,达到读/写目标芯片和仿真调试的目的。但是,通过JTAG接口的方式进行升级时一旦用户为了保证代码的安全,烧断了JTAG接口的熔丝,那么就永久性地破坏了该接口,该接口也就不能再使用了,另外,使用JTAG接口升级,需要使用仿真器才能进行程序下载,接线也不方便。
发明内容
本发明要解决的技术问题在于,针对现有技术JTAG接口损坏后无法恢复且采用JTAG接口升级接线不方便的缺陷,提供一种单片机在线升级方法和系统,该技术方案接线简单且具有备份和恢复功能,从而确保升级过程的安全可靠。
本发明解决其技术问题所采用的技术方案是:提供一种单片机在线升级方法,所述单片机通过串口与外部系统通信连接,且通过数据总线与外部存储装置通信连接,所述单片机具有内部存储器,内部存储器中存储有运行程序,所述运行程序包括完成单片机功能的用户程序和升级所述用户程序的引导程序,所述引导程序包括备份模块、升级模块和恢复模块;所述方法包括以下步骤:
S1.判断是否需要对所述用户程序进行升级,若是,则执行步骤S2,若否,则直接转至步骤S4;
S2.调用所述备份模块将所述用户程序备份到外部存储装置;
S3.调用所述升级模块接收外部系统所发送的升级文件协议帧,并解析所述升级文件协议帧,且将解析后的升级文件协议帧保存至所述单片机的内部存储器;
S4.判断所述引导程序的当前升级标识是否为升级成功状态或为升级完毕状态,若是,则直接转至步骤S6,若否,则执行步骤S5;
S5.调用所述恢复模块将所述外部存储装置中备份的用户程序恢复至所述单片机的内部存储器的用户程序区;
S6.调用所述用户程序的跳转函数,并立即开始执行用户程序指令。
优选地,在步骤S1中,若所述单片机在预设时间内未收到升级所述用户程序的回复命令,则直接转至步骤S4。
优选地,所述步骤S3具体包括以下步骤:
S31.调用所述升级模块时修改所述引导程序的当前升级标识为正在升级状态,并将该正在升级状态保存至所述外部存储装置;
S32.接收外部系统所发送的升级文件协议帧;
S33.判断所述升级文件协议帧是否为数据帧,若是,则执行步骤S341,若否,则执行步骤S342;
S341.验证所述升级文件协议帧的编号是否正确,若是,则执行步骤S35,若否,则回复所述升级文件协议帧接收失败的命令,并要求重发所述升级文件协议帧,返回步骤S32;
S342.判断所述升级文件协议帧是否为结束帧,若是,则修改所述引导程序的当前升级标识为升级完毕状态,执行步骤S35,若否,则返回步骤S32;
S35.提取待升级用户程序的升级文件内容;
S36.根据校验和判断所述升级文件内容是否正确,若是,则执行步骤S37,若否,则回复所述升级文件协议帧接收失败的命令,并要求重发所述升级文件协议帧,返回步骤S32;
S37.将所述升级文件内容保存至单片机的内部存储器的用户程序区;
S38.回复确认收到所述升级文件协议帧,并准备接收下一个升级文件协议帧,返回步骤S32。
优选地,在所述步骤S1之前还包括以下步骤:
S0.对所述单片机的硬件进行初始化,所述硬件包括时钟信息和串口信息。
优选地,所述外部系统为个人计算机。
优选地,所述升级文件协议帧遵循Xmodem协议格式。
优选地,所述外部存储装置和所述内部存储器的用户程序区均为flash。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于航天科工深圳(集团)有限公司,未经航天科工深圳(集团)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310124921.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种群发短消息的系统及方法
- 下一篇:铁水脱硫用热态修补料