电子设备信息传输方法技术

技术编号:10246730 阅读:105 留言:0更新日期:2014-07-24 00:00
本发明专利技术提供了一种电子设备信息传输方法,用于对程序进行升级,包括:上位机将升级数据包发送至缓存器;缓存器发送复位命令至该设备;启动设备主程序;当判断有升级任务时,中断主程序,并接收来自缓存器的传输命令;对存储器中的块执行擦除和写入。本发明专利技术对程序升级过程中断电情况进行处理,升级过程不需要人为介入,具有简单、便捷、可靠、成本低等优点。

【技术实现步骤摘要】
【专利摘要】本专利技术提供了一种,用于对程序进行升级,包括:上位机将升级数据包发送至缓存器;缓存器发送复位命令至该设备;启动设备主程序;当判断有升级任务时,中断主程序,并接收来自缓存器的传输命令;对存储器中的块执行擦除和写入。本专利技术对程序升级过程中断电情况进行处理,升级过程不需要人为介入,具有简单、便捷、可靠、成本低等优点。【专利说明】
本专利技术涉及电子设备程序的升级,特别涉及一种用于程序控制装置的程序升级方法。
技术介绍
随着工业设备自动化控制需求的持续增长,微控制器的使用领域迅速扩大,例如可编程逻辑控制器PLC,并且在功能上也推陈出新。嵌入式微控制器作为工业自动化控制系统的控制单元,面对扩大的市场需求和千变万化的应用现场,需要不断开发新的功能和优化完善已有的功能。通过编制相应的程序,微控制器能实现复杂的逻辑控制。例如,在污水处理系统中,PLC和上位机之间通过以态网交换数据。现场安装的各种在线水质监测仪表,将测得的现场信号送到微控制器,微控制器将数据经过转化后再送到上位机,这样,运行人员在控制室通过上位机可以观测到现场系统的运行情况,为系统的安全运行提供了可靠的条件。目前,对于已经装备在客户现场和集成在设备厂商工业设备上的程序控制装置,通常需要由厂商的服务人员或者用户现场升级系统。为了提高产品的易用性和升级的可靠性,一些程序控制装置本身具有程序升级功能,以方便后续的功能更新和产品升级,满足客户对产品功能的持续需求。在这些程序升级系统中有数据接收模块和系统升级模块等部分组成,把接收的数据存储并对当前的程序控制装置进行软件版本的升级。然而这种程序升级方法,存在着诸多缺点:缺乏程序升级过程中突然断电情况的有效处理;对升级数据有效性判断不准确;升级过程繁琐,需要过多的人为介入等。
技术实现思路
为解决上述现有技术所存在的问题,本专利技术提出了一种,用于对设备的程序进行升级,其特征在于,包括:步骤一,上位机将升级数据包发送至缓存器;步骤二,缓存器发送复位命令至该设备;步骤三,启动设备主程序;步骤四,当判断有升级任务时,中断主程序,并接收来自缓存器的传输命令;步骤五,对存储器中的块执行擦除和写入。 优选地,所述设备为微控制器,包含片内RAM和片内R0M,该片内ROM分为2个存储块,主存储块BlockO和次存储块Blockl,所述微控制器与片外Flash的连接,微控制器与片外Flash采用SPI总线进行通信,使用相应的命令字对片外Flash的读写、擦除操作。优选地,所述步骤一进一步包括:所述上位机选择一个子卡进行远程升级,通过FTP协议发送升级数据包给升级数据缓存器,升级数据缓存器将接收到的升级数据包进行校验,在校验后存储至微控制器Flash 中;所述步骤二进一步包括:升级数据缓存器发送复位指令将子卡的控制单元复位,微控制器复位启动后进入引导程序模式,准备进行升级;所述步骤三进一步包括:微控制器复位后,从Blockl中运行主程序,当微控制器运行主程序时,先判断保护标志是否有效,如果该标志有效,表示上一次升级过程中遇到故障(断电等异常情况),则微控制器自动将程序恢复至出厂程序,否则微控制器主程序待机,等待微控制器处理串口中断接收到的数据,判断是否有升级任务,如果有升级任务,则将微控制器升级标志置为有效,如果该标志有效,则微控制器主程序待机,等待在线升级完成,升级完成后,开启看门狗等待微控制器复位;所述步骤五进一步包括:升级数据缓存器收到文件传输命令后,发送一帧文件传输开始的指令,将待升级的应用程序包分解成适合微控制器私有协议传输的段,按照文件块序号逐段发送给子卡,子卡收到数据包,并在CRC校验无误后将微控制器升级标志置为有效,并开始擦除片外Flash文件部分的块,在程序文件传输中,控制单元开始接收数据,此时微控制器将接收到的程序文件写入片外Flash文件部分的块;程序传输结束时,控制单元将升级文件的文件名、文件长度和文件CRC16的校验和写入片外Flash的7FFFFH-80000H部分的扇区,共4k字节,微控制器对接收到的文件整体校验,发送应答帧通知升级数据缓存器校验结果,升级数据缓存器收到执行升级命令后,通知子卡准备执行升级,微控制器先运行Blockl的升级程序,校验升级的应用程序文件,如果校验通过,将保护标志置为有效,擦除微控制器片内ROM整个BlockO的块,当SFST寄存器的标志位被置位后,表示擦除完成,接着,微控制器将片外Flash存储区中的升级文件读出并写入到微控制器片内ROM的BlockO块中,开启看门狗,等待微控制器复位,整个升级程序完成,当开门狗溢出后,微控制器复位令升级标志也复位,微控制器程序跳转到BlockO起始位置运行,微控制器程序正常运行后将保护标志复位;其中,升级数据缓存器与所述子卡基于SPI采用纠错机制和异常处理机制私有协议,在升级数据缓存器与子卡控制单元通信中采用发送一帧数据,确认一帧数据,收到错帧,请求重发的通信形式,所述私有协议的SPI通信帧设计最大帧长,接收程序可以通过文件块序号在终端进行文件整理组合,微控制器发送应答帧给升级数据缓存器通知文件块接收0K,否则升级数据缓存器重传文件块,如果重传次数超过阈值仍传送失败,则标志此次升级失败;该协议数据帧包括以下内容:帧头:表示数据包的开始,优选地固定为0xFE,0xFA2个字节;命令字:表示文件传输命令还是执行升级命令;指令值:命令字的子命令,如果命令字是文件传输命令,则指令值有传输开始、传输中、传输结束3个指令;如果命令字是升级命令,则指令值就是执行在线升级指令;文件块序号:表示升级程序所分割的报文所处的序号;文件块内容:程序内容字节;CRC16校验和:一帧数据的校验和,采用CRC16校验。相比于现有技术,本专利技术的技术方案的具有以下优点:对程序升级过程中断电情况进行处理,升级过程不需要人为介入,具有简单、便捷、可靠、成本低等优点。【专利附图】【附图说明】图1是根据本专利技术实施例的设备程序升级的方法流程图。【具体实施方式】多种方式可以用于(包括实施为过程;装置;系统;物质组成;在计算机可读存储介质上包括的计算机程序产品;和/或处理器(诸如如下处理器,该处理器被配置成执行在耦合到处理器的存储器上存储的和/或由该存储器提供的指令))实施本专利技术。在本说明书中,这些实施或者本专利技术可以采用的任何其他形式可以称为技术。一般而言,可以在本专利技术的范围内变更公开的过程的步骤顺序。除非另有明示,描述为被配置成执行任务的部件(诸如处理器或者存储器)可以实施为被临时配置成在给定时间执行该任务的一般部件或者被制造成执行该任务的具体部件。下文与图示本专利技术原理的附图一起提供对本专利技术一个或者多个实施例的详细描述。结合这样的实施例描述本专利技术,但是本专利技术不限于任何实施例。本专利技术的范围仅由权利要求书限定,并且本专利技术涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本专利技术的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本专利技术。本专利技术的目的在于提供一种,特别用于对设备的程序进行升级,如图1所示。待升级的设备例如可为一种微控制器,包含片内RAM和片内ROM。片内ROM分为2个存储块,主存储块B本文档来自技高网
...

【技术保护点】
一种电子设备信息传输方法,用于对所述设备的程序进行升级,其特征在于,包括:步骤一,上位机将升级数据包发送至缓存器;步骤二,缓存器发送复位命令至该设备;步骤三,启动设备主程序;步骤四,当判断有升级任务时,中断主程序,并接收来自缓存器的传输命令;步骤五,对存储器中的块执行擦除和写入。

【技术特征摘要】

【专利技术属性】
技术研发人员:毛力
申请(专利权)人:四川九成信息技术有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1