[发明专利]一种单片机在线升级方法和系统有效
申请号: | 201310389816.3 | 申请日: | 2013-08-30 |
公开(公告)号: | CN103473088A | 公开(公告)日: | 2013-12-25 |
发明(设计)人: | 刘谦 | 申请(专利权)人: | 北京远特科技有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 苏培华 |
地址: | 100025 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 单片机 在线 升级 方法 系统 | ||
技术领域
本申请涉及单片机技术领域,特别是涉及一种单片机在线升级方法和系统。
背景技术
由于单片机(Micro Control Unit,MCU,单片机)具有集成度高、运算速度快、可靠性高等优点,单片机的应用范围也日益广泛,单片机的应用范围可以包括工业自动化、仪器仪表、家用电器、信息和通信产品及军事装备等。单片机经历了从4b到8b再到16b的发展过程,为了进一步提高单片机的性能,目前技术人员努力实现及改进的技术重点是实现单片机的在线升级功能。
单片机本身是没有在线升级功能的,需要通过外置存储设备来完成在线升级过程。目前采用的方法是,MCU读取外置存储设备中的升级程序文件,比如:S19格式文件,S19格式文件可以是由名为Freecale CodeWarrior的编译器生成的后缀名为.S19的文件,并对S19格式文件中程序的有效位(除去地址信息,行校验信息)生成CRC16校验码,然后通过MPU(Micro Processor Unit,MPU,微处理器)和MCU之间的升级通讯协议将外置存储设备中存储的S19文件数据更新至MCU中,实现对MCU的在线升级。然而,目前采用的单片机在线升级方法,在升级过程中可能会由于升级程序文件错误而导致的MCU在线升级错误或失败。
发明内容
本申请提供一种单片机在线升级方法和系统,以解决由于升级程序文件错误而导致的MCU在线升级错误或失败的问题。
为了解决上述问题,本申请公开了一种单片机在线升级方法,包括:
读取外置存储设备中的升级程序文件和所述升级程序文件对应的标准校验码;
对所述升级程序文件进行校验,得到实际校验码;
比较所述实际校验码和所述标准校验码,当所述实际校验码与所述标准校验码一致时,写入待升级标志;
对所述升级程序文件进行CRC16计算,得到计算结果;
根据所述计算结果,写入所述升级程序文件。
较佳地,所述读取外置存储设备中的升级程序文件,包括:
读取外置存储设备中的程序文件,根据文件特征码,判断所述程序文件是否为升级程序文件,得到判断结果;
根据所述判断结果,获取得到所述升级程序文件。
较佳地,所述对所述升级程序文件进行CRC16计算,得到计算结果,包括:
逐次提取所述升级程序文件,其中,每次提取所述升级程序文件中的16字节数据;
对提取得到的所述16字节数据进行CRC16计算,生成所述16字节数据对应的CRC16第一校验码;
生成包含所述16字节数据和所述第一校验码的校验数据;
对所述校验数据中的16字节数据再次进行CRC16计算,生成第二校验码。
较佳地,所述根据计算结果,写入所述升级程序文件,包括:
比较所述第一校验码和所述第二校验码的一致性,当所述第一校验码和所述第二校验码一致时,写入所述校验数据中的所述16字节数据;
当所述第一校验码和所述第二校验码不一致时,升级过程失败,所述待升级标志更新为升级失败标志。
较佳地,所述根据所述计算结果,写入所述升级程序文件,包括:
当写入所有提取得到的所述16字节数据后,升级成功,所述待升级标志更新为升级成功标志。
相应的本申请实施例公开了一种单片机在线升级系统,包括:
文件读取模块,用于读取外置存储设备中的升级程序文件和所述升级程序文件对应的标准校验码;
校验码生成模块,用于对所述升级程序文件进行校验,得到实际校验码;
比较模块,用于比较所述实际校验码和所述标准校验码,在所述实际校验码与所述标准校验码一致时,写入待升级标志;
CRC16计算模块,用于对所述升级程序文件进行CRC16计算,得到计算结果;
文件写入模块,用于根据所述计算结果,写入所述升级程序文件。
较佳地,所述文件读取模块,包括:
判断子模块,用于读取外置存储设备中的程序文件,根据升级程序文件特征码,判断所述程序文件是否为升级程序文件,得到判断结果;
获取子模块,用于根据所述判断结果,获取得到所述升级程序文件。
较佳地,所述CRC16计算模块,包括:
提取子模块,用于逐次提取所述升级程序文件,其中,每次提取所述升级程序文件中的16字节数据;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京远特科技有限公司,未经北京远特科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310389816.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于汽车组合尾灯支架焊接总成的焊钳
- 下一篇:全方位自动焊接装置