CN201510211519.9
2015.04.29
CN104809014A
2015.07.29
实审
审中
实质审查的生效IPC(主分类):G06F 9/445申请日:20150429|||公开
G06F9/445
无锡悟莘科技有限公司
张军; 时国坚; 吴俨
214135江苏省无锡市无锡新区太湖国际科技园大学科技园530大厦D501室
南京经纬专利商标代理有限公司32200
许方
本发明涉及一种系统远程无线升级方法,针对现有远程升级方法进行改进,上位机远程烧录设备通过802.15.4无线通信协议与下位机系统进行无线通信,并针对下位机系统实现远程无线升级,并且针对其中下位机系统所执行的下位机升级控制方法,设计了具体的逻辑控制方法,整个方法控制逻辑清楚,实际执行过程稳定,能够有效保证设计系统远程无线升级方法在实际工作中的稳定性。
1. 一种系统远程无线升级方法,其特征在于:上位机远程烧录设备通过802.15.4无线通信协议与下位机系统进行无线通信,并针对下位机系统实现远程无线升级;其中,上位机远程烧录设备按照上位机升级控制方法执行远程无线升级操作,同时与此对应,下位机系统按照下位机升级控制方法执行远程无线升级操作,下位机升级控制方法包括如下步骤:步骤B01. 检测判断下位机系统是否接收到上位机远程烧录设备发送的远程升级命令帧,其中,远程升级命令帧包括升级程序编号,是则进入步骤B02;否则进入步骤B012;步骤B02. 根据远程升级命令帧中的升级程序编号,针对下位机系统中的程序进行比对,判断下位机系统是否需要升级,是则进入步骤B03;否则进入步骤B012;步骤B03. 下位机系统中停止向其用于防止程序死循环的定时器电路发送命令信号,并进入步骤B04;步骤B04. 下位机系统重启,并进入其引导加载程序,同时,控制用于防止程序死循环的定时器电路停止工作,进入步骤B05;步骤B05. 下位机系统向上位机远程烧录设备发送升级请求帧,进入步骤B06;步骤B06. 检测判断下位机系统在第一预设时间范围内是否接收到上位机远程烧录设备发送的升级程序文件起始帧,是则进入步骤B07;否则进入步骤B011;步骤B07. 下位机系统继续接收上位机远程烧录设备发送的升级程序文件,并进行校验,若校验正确,则下位机系统向上位机远程烧录设备返回文件确认指令,并进入步骤B08;若校验不正确,则下位机继续接收上位机远程烧录设备发送的升级程序文件,并进行校验;步骤B08. 下位机系统将接收到的升级程序文件按预设页面字节规则进行合并,并存入其FLASH应用程序区中,进入步骤B09;步骤B09. 检测判断下位机系统是否接收到上位机远程烧录设备发送的升级程序文件结束帧,是则进入步骤B10;否则返回步骤B07;步骤B10. 下位机系统执行FLASH应用程序区中的升级程序文件实现升级,并向上位机远程烧录设备返回升级成功标志帧,同时,将对应升级程序编号存入EEPROM存储器中,进入步骤B011;步骤B011. 下位机系统跳转至其任务执行列表,并进入步骤B012;步骤B012. 下位机系统执行其任务执行列表中的下一个任务,并返回步骤B01。2. 根据权利要求1所述一种系统远程无线升级方法,其特征在于:所述上位机升级控制方法包括如下步骤:步骤A01. 上位机远程烧录设备判断是否需要执行远程无线升级操作,是则进入步骤A02;否则上位机远程烧录设备继续判断是否需要执行远程无线升级操作;步骤A02. 上位机远程烧录设备向需要升级的下位机系统发送远程升级命令帧,其中,远程升级命令帧包括升级程序编号,进入步骤A03;步骤A03. 检测判断上位机远程烧录设备是否接收到对应下位机系统发送的升级请求帧,是则进入步骤A04;否则延迟第一预设延迟时长,并返回步骤A02;步骤A04. 上位机远程烧录设备将升级程序文件进行拆分,并按预设规则,以帧组包格式向对应下位机系统发送,进入步骤A05;步骤A05. 检测判断上位机远程烧录设备在第二预设时间范围内是否接收到下位机系统返回的文件确认指令,是则进入步骤A07;否则进入步骤A06;步骤A06. 上位机远程烧录设备重新向下位机系统发送没发送成功的升级程序文件帧,并返回步骤A05;步骤A07. 检测判断上位机远程烧录设备是否将升级程序文件全部发送结束,是则进入步骤A08;否则上位机远程烧录设备向下位机系统发送下一个升级程序文件帧,并返回步骤A05;步骤A08. 上位机远程烧录设备向下位机系统发送升级程序文件结束帧,并进入步骤A09;步骤A09. 检测判断上位机远程烧录设备在第三预设时间范围内是否接收到下位机系统返回的升级成功标志帧,是则延迟第二预设延迟时长,并返回步骤A01;否则返回步骤A08。3. 根据权利要求2所述一种系统远程无线升级方法,其特征在于:所述上位机远程烧录和所述下位机系统分别采用射频芯片、基于所述802.15.4无线通信协议进行无线通信,并针对下位机系统实现远程无线升级。4. 根据权利要求2所述一种系统远程无线升级方法,其特征在于:所述射频芯片为AT86RF231射频芯片。5. 根据权利要求2所述一种系统远程无线升级方法,其特征在于:所述上位机远程烧录设备为ATmega1281单片机上位机远程烧录设备。6. 根据权利要求2所述一种系统远程无线升级方法,其特征在于:所述第一预设时间范围为10秒。7. 根据权利要求2所述一种系统远程无线升级方法,其特征在于:所述第一预设延迟时长为1秒。8. 根据权利要求2所述一种系统远程无线升级方法,其特征在于:所述第二预设时间范围为100毫秒。9. 根据权利要求2所述一种系统远程无线升级方法,其特征在于:所述第三预设时间范围为100毫秒。10. 根据权利要求2所述一种系统远程无线升级方法,其特征在于:所述第二预设延迟时长为1000毫秒。
一种系统远程无线升级方法 技术领域 本发明涉及一种系统远程无线升级方法,属于远程升级控制技术领域。 背景技术 市场的机遇和应用技术的成熟常常是一对矛盾,通常不得不一边开拓市场一边完善技术。然而实践是检验真理的唯一标准。系统交接使用之后,用户反馈一些改善功能的意见,另外,长时间使用之后,终端程序隐藏的“bug”也可能会随之浮出水面。这就需要对数据传输终端的程序进行升级,但是设想一下,假如程序需要更新,工作人员得把每个产品的程序更新一遍,不但浪费大量的人力物力,而且直接贻误了开辟市场的时机,对企业造成不可估量的后果。 对单片机的程序烧录传统上是采用并行烧录器。使用这种方法对直插封装的单片机谨慎升级时需要反复插拔,而贴片封装的单片机进行升级需要反复焊接和拆卸,不但操作麻烦,而且容易损坏单片机。在系统中编程(ISP)烧录方式较好地解决了上述问题,这里的”系统”指的是电路系统。是 Lattice 半导体公司首先提出来的一种让我们能在产品设计、制造过程中的每个环节,甚至在产品卖给最终用户以后,具有对其器件、电路板或整个电子系统的逻辑和功能随时进行重组或重新编程的技术。也就是说给芯片编程的时候不必将芯片移出其运行的电路系统。无论在单片机上,还是在CPLD/FPGA上都得到了广泛的应用。JTAG,即Joint Test Action Group,是联合测试行为组 提出的一种边界扫描链的结构。是一种国际标准测试协议(IEEE 1149.1兼容),JTAG主要用于边界扫描测试芯片内部信号,但通过某种方式也可以实现编程,采用JTAG编程的方式其实芯片也不需要离开电路系统。JTAG用来对芯片进行测试的基本原理是在器件内部定义一个TAP(Test Access Port:测试访问口)通过专用的JTAG测试工具对内部节点进行测试。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。TMS:测试模式选择,用来实现TAP控制器各个状态之间的切换;TCK:测试时钟输入,JTAG操作是与TCK同步的;TDI:测试数据输入,数据通过TDI输入JTAG口;TDO:测试数据输出,数据通过TDO从JTAG口输出;TRST:可选引脚,测试复位,输入引脚,低电平有效,如果JTAG电路不用,可以将其连接到GND。 ISP一般指的是通过SPI接口进行在系统中编程(ISP);JTAG则是通过JTAG接口进行在系统中编程。ISP:只能进行程序的下载,程序下载速度慢。是一种通用的程序下载方式,所以AVR单片机均支持ISP程序下载(并口ISP下载线、串口ISP下载线)。JTAG:可以进行程序的下载和在线仿真调试,程序下载速度快,现在多数的高级器件都支持JTAG,如CPU、DSP、CPLD、FPGA等)。ISP和JTAG都能把程序从电脑下载到单片机中,都能对芯片的熔丝位和锁定位进行编程。 ISP和JTAG都提供了一个烧录接口,不必取下芯片就可进行烧录,非常方便,尤其是对于贴片封装的芯片。但ISP烧录方式也有其不足之处,每次烧录都必须和计算机或专用烧录设备联机才行。在某些场合需要通过某种远程通信方式进行无人值守的远程升级时,ISP无法满足要求,在应用中编程(IAP)则很好的解决了这个问题。 mega系列的ATMEL单片机都具备引导加载支持的用户程序自编程功能(In-Sysytem Programming by On-chip Boot Program),它提供了一个真正的由MCU本身自动下载和更新(采用读/写同时"Read-While-Write"进行的方式)程序代码的系统程序自编程更新的机制。利用AVR的这个功能,可以实现在应用编程(IAP)以及实现系统程序的远程自动更新的应用。 IAP的本质就是,MCU可以灵活地运行一个常驻Flash的引导加载程序(Boot Loader Program),实现对用户应用程序的在线自编程更新。引导加载程序的设计可以使用任何的可用的数据接口和相关的协议读取代码,或者从程序存储器中读取代码,然后将代码写入(编程)到Flash存储器中。 引导加载程序有能力读写整个Flash存储器,包括引导加载程序所在的引导加载区本身。引导加载程序还可以对自身进行更新修改,甚至可以将自身删除,使系统的自编程能力消失。引导加载程序区的大小可以由芯片的熔丝位设置,该段程序区还提供两组锁定位,以便用户选择对该段程序区的不同级别的保护。 一般的IAP的方式是采用有线升级方式,配合Windows中的超级终端程序,采用Xmodem传输协议,通过RS232接口下载更新用户的应用程序。 这样的优点是不需要专用的烧录设备,只需一台电脑,通过常用的RS232口就能够更新程序。但在实际使用过程中,使用单片机的设备有可能不在市内,或者安装在桥梁,或隧道里等不容易拆卸的位置,这样通过这种IAP方式就很难完成升级任务。所以亟需一种远程升级方式,对产品升级。 现在常用的方式为通过GPRS进行远程升级。但是,GPRS受到网络的限制,在不具备GPRS的地方,这种方式也不可行。另外,GPRS的理论速度为115kbit/s,速度比较慢;同时,使用GPRS网络需要移动运行商收费,给实际使用带来了麻烦。 发明内容 针对上述技术问题,本发明所要解决的技术问题是提供一种针对现有远程升级方法进行改进,基于802.15.4无线通信协议,设计完整清晰的逻辑控制方法,能够稳定、快速实现远程无线升级操作的系统远程无线升级方法。 本发明为了解决上述技术问题采用以下技术方案:本发明设计了一种系统远程无线升级方法,上位机远程烧录设备通过802.15.4无线通信协议与下位机系统进行无线通信,并针对下位机系统实现远程无线升级;其中,上位机远程烧录设备按照上位机升级控制方法执行远程无线升级操作,同时与此对应,下位机系统按照下位机升级控制方法执行远程无线升级操作,下位机升级控制方法包括如下步骤: 步骤B01. 检测判断下位机系统是否接收到上位机远程烧录设备发送的远程升级命令帧,其中,远程升级命令帧包括升级程序编号,是则进入步骤B02;否则进入步骤B012; 步骤B02. 根据远程升级命令帧中的升级程序编号,针对下位机系统中的程序进行比对,判断下位机系统是否需要升级,是则进入步骤B03;否则进入步骤B012; 步骤B03. 下位机系统中停止向其用于防止程序死循环的定时器电路发送命令信号,并进入步骤B04; 步骤B04. 下位机系统重启,并进入其引导加载程序,同时,控制用于防止程序死循环的定时器电路停止工作,进入步骤B05; 步骤B05. 下位机系统向上位机远程烧录设备发送升级请求帧,进入步骤B06; 步骤B06. 检测判断下位机系统在第一预设时间范围内是否接收到上位机远程烧录设备发送的升级程序文件起始帧,是则进入步骤B07;否则进入步骤B011; 步骤B07. 下位机系统继续接收上位机远程烧录设备发送的升级程序文件,并进行校验,若校验正确,则下位机系统向上位机远程烧录设备返回文件确认指令,并进入步骤B08;若校验不正确,则下位机继续接收上位机远程烧录设备发送的升级程序文件,并进行校验; 步骤B08. 下位机系统将接收到的升级程序文件按预设页面字节规则进行合并,并存入其FLASH应用程序区中,进入步骤B09; 步骤B09. 检测判断下位机系统是否接收到上位机远程烧录设备发送的升级程序文件结束帧,是则进入步骤B10;否则返回步骤B07; 步骤B10. 下位机系统执行FLASH应用程序区中的升级程序文件实现升级,并向上位机远程烧录设备返回升级成功标志帧,同时,将对应升级程序编号存入EEPROM存储器中,进入步骤B011; 步骤B011. 下位机系统跳转至其任务执行列表,并进入步骤B012; 步骤B012. 下位机系统执行其任务执行列表中的下一个任务,并返回步骤B01。 作为本发明的一种优选技术方案:所述上位机升级控制方法包括如下步骤: 步骤A01. 上位机远程烧录设备判断是否需要执行远程无线升级操作,是则进入步骤A02;否则上位机远程烧录设备继续判断是否需要执行远程无线升级操作; 步骤A02. 上位机远程烧录设备向需要升级的下位机系统发送远程升级命令帧,其中,远程升级命令帧包括升级程序编号,进入步骤A03; 步骤A03. 检测判断上位机远程烧录设备是否接收到对应下位机系统发送的升级请求帧,是则进入步骤A04;否则延迟第一预设延迟时长,并返回步骤A02; 步骤A04. 上位机远程烧录设备将升级程序文件进行拆分,并按预设规则,以帧组包格式向对应下位机系统发送,进入步骤A05; 步骤A05. 检测判断上位机远程烧录设备在第二预设时间范围内是否接收到下位机系统返回的文件确认指令,是则进入步骤A07;否则进入步骤A06; 步骤A06. 上位机远程烧录设备重新向下位机系统发送没发送成功的升级程序文件帧,并返回步骤A05; 步骤A07. 检测判断上位机远程烧录设备是否将升级程序文件全部发送结束,是则进入步骤A08;否则上位机远程烧录设备向下位机系统发送下一个升级程序文件帧,并返回步骤A05; 步骤A08. 上位机远程烧录设备向下位机系统发送升级程序文件结束帧,并进入步骤A09; 步骤A09. 检测判断上位机远程烧录设备在第三预设时间范围内是否接收到下位机系统返回的升级成功标志帧,是则延迟第二预设延迟时长,并返回步骤A01;否则返回步骤A08。 作为本发明的一种优选技术方案:所述上位机远程烧录和所述下位机系统分别采用射频芯片、基于所述802.15.4无线通信协议进行无线通信,并针对下位机系统实现远程无线升级。 作为本发明的一种优选技术方案:所述射频芯片为AT86RF231射频芯片。 作为本发明的一种优选技术方案:所述上位机远程烧录设备为ATmega1281单片机上位机远程烧录设备。 作为本发明的一种优选技术方案:所述第一预设时间范围为10秒。 作为本发明的一种优选技术方案:所述第一预设延迟时长为1秒。 作为本发明的一种优选技术方案:所述第二预设时间范围为100毫秒。 作为本发明的一种优选技术方案:所述第三预设时间范围为100毫秒。 作为本发明的一种优选技术方案:所述第二预设延迟时长为1000毫秒。 本发明所述一种系统远程无线升级方法采用以上技术方案与现有技术相比,具有以下技术效果: (1)本发明设计的系统远程无线升级方法,针对现有远程升级方法进行改进,上位机远程烧录设备通过802.15.4无线通信协议与下位机系统进行无线通信,并针对下位机系统实现远程无线升级,并且针对其中下位机系统所执行的下位机升级控制方法,设计了具体的逻辑控制方法,整个方法控制逻辑清楚,实际执行过程稳定,能够有效保证设计系统远程无线升级方法在实际工作中的稳定性; (2)本发明设计的系统远程无线升级方法中,与设计下位机升级控制方法相对应的,还针对上位机远程烧录设备所执行的上位机升级控制方法,提出了具体设计,与下位机升级控制方法相对应应用在实际工作中,能够进一步有效保证设计系统远程无线升级方法在实际工作中的稳定性。 附图说明 图1为本发明设计系统远程无线升级方法中上位机升级控制方法的流程示意图; 图2为本发明设计系统远程无线升级方法中下位机升级控制方法的流程示意图。 具体实施方式 下面结合说明书附图针对本发明的具体实施方式作进一步详细的说明。 本发明设计的一种系统远程无线升级方法在实际应用过程当中时,上位机远程烧录和下位机系统分别采用AT86RF231射频芯片、基于所述802.15.4无线通信协议进行无线通信,并针对下位机系统实现远程无线升级;其中,ATmega1281单片机上位机远程烧录设备按照上位机升级控制方法执行远程无线升级操作,同时与此对应,下位机系统按照下位机升级控制方法执行远程无线升级操作,其中,如图1所示,ATmega1281单片机上位机远程烧录设备执行上位机升级控制方法具体包括如下步骤: 步骤A01. ATmega1281单片机上位机远程烧录设备判断是否需要执行远程无线升级操作,是则进入步骤A02;否则ATmega1281单片机上位机远程烧录设备继续判断是否需要执行远程无线升级操作。 步骤A02. ATmega1281单片机上位机远程烧录设备向需要升级的下位机系统发送远程升级命令帧,其中,远程升级命令帧包括升级程序编号,进入步骤A03。 步骤A03. 检测判断ATmega1281单片机上位机远程烧录设备是否接收到对应下位机系统发送的升级请求帧,是则进入步骤A04;否则延迟第一预设延迟时长1秒,并返回步骤A02。 步骤A04. ATmega1281单片机上位机远程烧录设备将升级程序文件进行拆分,并按预设规则,以帧组包格式向对应下位机系统发送,进入步骤A05。 步骤A05. 检测判断ATmega1281单片机上位机远程烧录设备在第二预设时间范围100毫秒内是否接收到下位机系统返回的文件确认指令,是则进入步骤A07;否则进入步骤A06。 步骤A06. ATmega1281单片机上位机远程烧录设备重新向下位机系统发送没发送成功的升级程序文件帧,并返回步骤A05。 步骤A07. 检测判断ATmega1281单片机上位机远程烧录设备是否将升级程序文件全部发送结束,是则进入步骤A08;否则ATmega1281单片机上位机远程烧录设备向下位机系统发送下一个升级程序文件帧,并返回步骤A05。 步骤A08. ATmega1281单片机上位机远程烧录设备向下位机系统发送升级程序文件结束帧,并进入步骤A09。 步骤A09. 检测判断ATmega1281单片机上位机远程烧录设备在第三预设时间范围100毫秒内是否接收到下位机系统返回的升级成功标志帧,是则延迟第二预设延迟时长1000毫秒,并返回步骤A01;否则返回步骤A08。 在上述ATmega1281单片机上位机远程烧录设备执行上位机升级控制方法的过程当中,针对ATmega1281单片机上位机远程烧录设备所执行的每一步骤操作,相对应的,下位机系统执行下位机升级控制方法共同完整构成了本发明设计的系统远程无线升级方法,其中,如图2所示,下位机系统执行下位机升级控制方法具体包括如下步骤: 步骤B01. 检测判断下位机系统是否接收到ATmega1281单片机上位机远程烧录设备发送的远程升级命令帧,其中,远程升级命令帧包括升级程序编号,是则进入步骤B02;否则进入步骤B012。 步骤B02. 根据远程升级命令帧中的升级程序编号,针对下位机系统中的程序进行比对,判断下位机系统是否需要升级,是则进入步骤B03;否则进入步骤B012。 步骤B03. 下位机系统中停止向其用于防止程序死循环的定时器电路发送命令信号,并进入步骤B04。 其中,用于防止程序死循环的定时器电路即为看门狗,停止向其用于防止程序死循环的定时器电路发送命令信号即为停止喂狗。 步骤B04. 下位机系统重启,并进入其引导加载程序BOOTLOADER,同时,控制用于防止程序死循环的定时器电路停止工作,进入步骤B05。 其中,控制用于防止程序死循环的定时器电路停止工作即为禁止看门狗。 步骤B05. 下位机系统向ATmega1281单片机上位机远程烧录设备发送升级请求帧,进入步骤B06。 步骤B06. 检测判断下位机系统在第一预设时间范围10秒内是否接收到ATmega1281单片机上位机远程烧录设备发送的升级程序文件起始帧,是则进入步骤B07;否则进入步骤B011。 步骤B07. 下位机系统继续接收ATmega1281单片机上位机远程烧录设备发送的升级程序文件,并进行校验,若校验正确,则下位机系统向ATmega1281单片机上位机远程烧录设备返回文件确认指令,并进入步骤B08;若校验不正确,则下位机继续接收ATmega1281单片机上位机远程烧录设备发送的升级程序文件,并进行校验。 步骤B08. 下位机系统将接收到的升级程序文件按预设页面字节规则进行合并(按256字节合并成一页),并存入其FLASH应用程序区中,进入步骤B09。 步骤B09. 检测判断下位机系统是否接收到ATmega1281单片机上位机远程烧录设备发送的升级程序文件结束帧,是则进入步骤B10;否则返回步骤B07。 步骤B10. 下位机系统执行FLASH应用程序区中的升级程序文件实现升级,并向ATmega1281单片机上位机远程烧录设备返回升级成功标志帧,同时,将对应升级程序编号存入EEPROM存储器中,进入步骤B011。 步骤B011. 下位机系统跳转至其任务执行列表,并进入步骤B012。 步骤B012. 下位机系统执行其任务执行列表中的下一个任务,并返回步骤B01。 上述技术方案设计的系统远程无线升级方法,针对现有远程升级方法进行改进,上位机远程烧录设备通过802.15.4无线通信协议与下位机系统进行无线通信,并针对下位机系统实现远程无线升级,并且针对其中下位机系统所执行的下位机升级控制方法,设计了具体的逻辑控制方法,整个方法控制逻辑清楚,实际执行过程稳定,能够有效保证设计系统远程无线升级方法在实际工作中的稳定性;同时与设计下位机升级控制方法相对应的,还针对上位机远程烧录设备所执行的上位机升级控制方法,提出了具体设计,与下位机升级控制方法相对应应用在实际工作中,能够进一步有效保证设计系统远程无线升级方法在实际工作中的稳定性。 上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
《一种系统远程无线升级方法.pdf》由会员分享,可在线阅读,更多相关《一种系统远程无线升级方法.pdf(11页珍藏版)》请在专利查询网上搜索。
本发明涉及一种系统远程无线升级方法,针对现有远程升级方法进行改进,上位机远程烧录设备通过802.15.4无线通信协议与下位机系统进行无线通信,并针对下位机系统实现远程无线升级,并且针对其中下位机系统所执行的下位机升级控制方法,设计了具体的逻辑控制方法,整个方法控制逻辑清楚,实际执行过程稳定,能够有效保证设计系统远程无线升级方法在实际工作中的稳定性。 。
copyright@ 2017-2020 zhuanlichaxun.net网站版权所有经营许可证编号:粤ICP备2021068784号-1