推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

嵌入式软件在线升级的设计及实现

更新时间:2020-03-26 17:00:11 大小:3M 上传用户:IC老兵查看TA发布的资源 标签:嵌入式 下载积分:3分 评价赚积分 (如何评价?) 收藏 评论(0) 举报

资料介绍

当前,嵌入式技术更加普及,应用领域逐步扩大,甚至介入了一些属于工业微机的场合。嵌入式产品被广泛的分布在家用、商用、办公、医疗、工控和军工等领域,加以软件技术对传统产品进行改造,往往具备灵活性,实用性和适用性。嵌入式系统的硬件设计追求高集成度,软件设计追求高性能,每个系统的所需要的功能都是特殊定制化的,硬件经常不一样。甚至同类产品,软件设计也往往千差万别。随着产品不断深入和产业化程度提升,应用人员也逐步意识到软件功能的优点,也对设计者提出更高的要求。除了产品本身高可靠性外,还会规定软件具备可升级的功能。该领域的科研工作者和技术人员当然知道升级功能,可用来漏洞修复,功能完善,有其必要性。软件更新一般不太容易,有其困难性。在一些工业控制领域,系统设备工作在环境恶劣、无人值守的区域,需要由远程的方式自动完成整个软件的升级。

  本文以中达室外电源监控系统设计为背景,阐述该产品开发中如何由近端升级的方法,扩展到远程软件可自我升级的方法。要解决的问题主要包括FLASH自擦写技术的应用,内存存储空间的分配,产品相关的电气设计和升级协议的设计。通过阅读一些文献资料以及结合设计经验,首先打通硬件底层FLASH擦写驱动,在软件上先建立近端升级的功能。之后开始考虑如何完成升级应用程序的功能和升级bootloader的方法。远端升级通讯时,决定需要升级的两个软件程序的其中之一。在通讯协议中加入升级通讯流程,划分成4个阶段,将升级任务细化成可以分离的小任务。在完成软件可自我全面升级的功能后,协同上位机界面,对升级过程进行验证,模拟出错的情况。并且提出了升级失效时,由嵌入式软件自身完成自动回退功能出错措施。

  此设计方法和功能均在Freescale16位单片机上得以实施,借以RS485通讯接口分别完成近端升级和远端升级。最终,该产品具备近端升级和远端升级的功能,得到客户验证认可,整个设计完整,满足需求。软件中断处理的研究,运用现有体系架构,巧妙处理了中断机制。解决传统升级功能带来的限制,保证软件设计的灵活性。另外,附加的软件回退功能成为软件升级功能保障,提高软件可靠性。

部分文件列表

文件名 大小
嵌入式软件在线升级的设计及实现.pdf 3M

全部评论(0)

暂无评论