CN106648804A - 一种在线升级方法及控制器 - Google Patents

一种在线升级方法及控制器 Download PDF

Info

Publication number
CN106648804A
CN106648804A CN201611264703.0A CN201611264703A CN106648804A CN 106648804 A CN106648804 A CN 106648804A CN 201611264703 A CN201611264703 A CN 201611264703A CN 106648804 A CN106648804 A CN 106648804A
Authority
CN
China
Prior art keywords
address
controller
host computer
area
online programming
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201611264703.0A
Other languages
English (en)
Inventor
桂峰
李忠锋
凡念
王宜昶
陈杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Invt Powre Electronics (suzhou) Co Ltd
Original Assignee
Invt Powre Electronics (suzhou) Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Invt Powre Electronics (suzhou) Co Ltd filed Critical Invt Powre Electronics (suzhou) Co Ltd
Priority to CN201611264703.0A priority Critical patent/CN106648804A/zh
Publication of CN106648804A publication Critical patent/CN106648804A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例公开了一种在线升级方法及控制器,用于对控制器进行在线程序升级,该方法包括运行所述控制器的在线编程区内的在线编程导引程序;所述在线编程导引程序读取IP地址传递区内的IP地址并初始化所述控制器的以太网接口,所述以太网接口用于连接所述控制器和上位机;判断是否接收到来自上位机的写请求;若接收到来自所述上位机的写请求,接收所述上位机发送的更新程序;将所述更新程序写入应用程序区,程序升级完成。本发明实施例还公开了一种控制器。本发明实施例能够降低升级成本、提高烧写速度。

Description

一种在线升级方法及控制器
技术领域
本发明涉及通信技术领域,尤其涉及一种在线升级方法及控制器。
背景技术
随着MCU(Microcontroller Unit)芯片技术的快速发展,MCU芯片外设功能越来越丰富,像SPI、SCI、Ethernet等通讯外设接口已经逐渐成为标准配置。
传统的程序升级方法包括:
(1)采用JTAG/SWD等接口的仿真器进行程序升级,这种可进行在线调试,但是需要增加仿真器和MCU相关外围烧写接口,从而造成成本增加。
(2)采用RS232/RS485接口进行程序升级,这种烧写方式需要增加相关的硬件进行电平转换,也会额外增加成本,且程序升级比较慢。
鉴于此,目前需要一种能够降低升级成本、提高烧写速度的在线升级方法及控制器。
发明内容
有鉴于此,本发明实施例提供一种能够降低升级成本、提高烧写速度的在线升级方法及控制器。
第一方面,本发明实施例提供了一种在线升级方法,用于对控制器进行在线程序升级,所述方法包括运行所述控制器的在线编程区内的在线编程导引程序;所述在线编程导引程序读取IP地址传递区内的IP地址并初始化所述控制器的以太网接口,所述以太网接口用于连接所述控制器和上位机;判断是否接收到来自上位机的写请求;若接收到来自所述上位机的写请求,接收所述上位机发送的更新程序;将所述更新程序写入应用程序区,程序升级完成。
优选地,所述判断是否接收到来自上位机的写请求具体包括判断在预设时间内是否接收到来自所述上位机的写请求。
优选地,所述判断是否接收到来自上位机的写请求之前,所述方法还包括判断是否接收到来自所述上位机的IP地址改请求;若接收到,修改IP地址并将修改后的IP地址更新至所述IP地址传递区域。
优选地,所述方法还包括:若未接收到来自所述上位机的写请求,所述控制器由在线编程区直接调转到应用程序区,所述应用程序区执行函数读取所述IP地址传递区内的IP地址并初始化所述控制器的以太网接口后运行所述应用程序区内的应用程序。
优选地,所述方法还包括当程序跳转至所述应用程序区后,若接收到来自上位机的写请求,则跳转到在线编程区内执行在线编程导引程序;若接收到上位机的IP地址改请求,则修改IP地址并将修改后的IP地址更新至所述IP地址传递区域。
优选地,所述在线编程区、IP地址传递区、应用程序区均设置在所述控制器的FLASH空间内,且互不重叠。
另一方面,本发明实施例提供了一种控制器,该控制器包括在线编程区、IP地址传递区、应用程序区,所述在线编程区用于存储在线编程导引程序,所述IP地址传递区用于存储对应控制器的IP地址,所述应用程序区用于存储应用程序,所述在线编程导引程序用于将升级程序写入所述应用程序区,其中,所述在线编程区具体包括:第一读取单元,用于读取IP地址传递区内的IP地址;第一初始化单元,用于根据读取的IP地址初始化以太网接口,所述以太网接口用于连接所述控制器和上位机;第一判断单元,用于判断在预设时间内是否有上位机写请求;接收单元,用于若接收到来自所述上位机的写请求,接收所述上位机发送的更新程序;写入单元,用于将所述更新程序写入所述应用应用程序区,第一跳转单元,用于若未接收到来自所述上位机的写请求,调转至所述应用程序区。
优选地,所述在线编程区还包括第二判断单元,用于判断是否接收到来自所述上位机的IP地址改请求;第一更新单元,用于若接收到所述上位机的IP地址改请求,修改IP地址并将修改后的IP地址更新至所述IP地址传递区域。
优选地,所述应用程序区具体包括第二读取单元,用于读取IP地址传递区内的IP地址;第二初始化单元,用于根据读取的IP地址初始化以太网接口,所述以太网接口用于连接所述控制器和上位机;第三判断单元,用于判断是否接收到来自所述上位机的IP地址改请求;第二更新单元,用于若接收到所述上位机的IP地址改请求,修改IP地址并将修改后的IP地址更新至所述IP地址传递区域;运行单元,用于运行所述应用程序区内的应用程序;第二跳转单元,用于若接收到来自所述上位机的写请求,调转至所述在线编程区。
优选地,所述在线编程区、IP地址传递区、应用程序区均设置在所述控制器的FLASH空间内,且互不重叠。
本发明实施例通过运行在线编程区内的在线编程导引程序,并由在线编程导引程序读取IP地址传递区中的IP地址并根据读取的IP地址初始化控制器的以太网接口以使控制器与上位机实现通讯连接,判断是否接收到来自上位机的写请求,若接收到来自上位机的写请求,接收上位机发送的更新程序,并将更新程序写入应用程序区从而完成控制器的在线程序升级。相比现有技术,本发明实施例不需要增加额外的仿真器及硬件设备,从而降低了升级成本,并藉由以太网接口的传输效率,可进一步提高程序的烧写速度。
附图说明
为了更清楚地说明本发明第一实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例提供的一种在线升级方法的示意流程图;
图2是本发明实施例提供的控制器的Flash空间地址分配示意图
图3是图1中步骤S105的子示意流程图;
图4是本发明第二实施例提供的一种在线升级方法的示意流程图;
图5是本发明提供的控制器与上位机组网的拓扑结构图;
图6是本发明第三实施例提供的一种控制器的示意性框图;
图7是图6中的在线编程区的结构示意图;
图8是图6中的应用程序区的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
参见图1,是本发明第一实施例提供的一种在线升级方法的示意流程图。如图所示,该在线升级方法包括步骤S101~S105。
S101,运行所述控制器的在线编程区内的在线编程导引程序。
具体地,控制器支持IAP(In Application Programming在线应用编程)功能,且控制器与上位机进行网络通讯连接以实现在控制器内应用程序运行过程的更新升级。可以理解地,控制器与上位机可通过有线方式或无线方式进行网络通讯连接,此处不作限定。其中,参照图2,本发明实施例提供的控制器的Flash空间地址分配示意图。如图所示,控制器的Flash空间被划分为在线编程区、IP地址传递区、及应用程序区三个区域,且在线编程区、IP地址传递区、及应用程序区相互无重叠。优选从Flash空间的低地址到高地址依次划分而成,如可将在线编程区设置为0X00000000-0X0000001C之间的地址空间,将IP地址传递区设置为0X0000001F-0X0000005F之间的地址空间,将应用程序区设置为0X00006000-0X0000061C之间的地址空间。在线编程区用于存储在线编程导引程序,IP地址传递区用于存储对应控制器的IP地址,应用程序区用于存储应用程序,在线编程导引程序用于将升级程序写入应用程序区。
S102,所述在线编程导引程序读取IP地址传递区内的IP地址并初始化所述控制器的以太网接口,所述以太网接口用于连接所述控制器和上位机。
具体地,由于控制器运行在在线编程区或应用程序区均可能接收到来自上位机的修改IP地址的改请求,且当通过一个上位机与多个控制器进行组网通信时,需要保证该当前网络中的每个控制器的IP地址互不相同才能实现上位机与各控制器的正常通信,如果出现多个控制器默认的IP地址相同时,就需要主动修改控制器的IP地址。因此,为了保证控制器在在线编程区或应用程序区运行时均能够与上位机建立通讯连接,该控制器需要根据获取的IP地址初始化以太网接口,以保证控制器运行在在线编程区或应用程序区时均能够与上位机建立通信。
需要说明的是,当通过一个上位机与多个控制器进行组网通讯时,可通过修改上位机的IP地址与每一个将要进行程序升级的当前控制器的IP地址相同即可实现上位机与当前控制器的网络通讯连接,进而为在线程序升级设置网络基础。当然,还可以采用多个上位机与多个控制器的组网模式,以实现对多个控制器中的应用程序进行同步在线升级,从而提高在线升级效率。
S103,判断是否接收到来自上位机的写请求。
具体地,写请求是上位机向控制器发出的用于对控制器中的应用程序区的应用程序进行更新升级的请求指令。在本发明实施例中,可判断在预设时间内是否接收到来自上位机的写请求。预设时间是从控制器上电启动开始计时,由设定时长构成。当控制器上电启动后,控制器的在线编程区运行导引程序,并根据获取的IP地址与上位机建立通讯连接后,需要判断在预设时间内是否接收到来自上位机的写请求。若在预设时间内接收到来自上位机的写请求,则执行步骤S104;若在预设时间内没有接收到来自上位机的写请求,控制器由在线编程区直接调转到应用程序区,应用程序区执行函数读取IP地址传递区内的IP地址并初始化控制器的以太网接口后运行应用程序区内的应用程序,且当程序跳转至所述应用程序区后,若接收到上位机的写请求,则跳转到在线编程区内执行在线编程导引程序。
S104,接收所述上位机发送的更新程序。
具体地,更新程序用于对控制器中的应用程序进行升级。若控制器接收到来自上位机的写请求,则接收上位机发送的更新程序以便根据更新程序对控制器中的应用程序进行功能升级和完善。
S105,将所述更新程序写入应用程序区,升级完成。
具体地,为了对控制器内的应用程序区中的应用程序进行升级,需要将更新程序写入到对应的地址空间,以便实现对控制器中应用程序区中应用程序的在线升级。在本发明实施例中,参照图3,步骤S105的子流程示意图。步骤S105具体包括步骤S201~S202。
S201:根据所述更新程序所占用的Flash空间内扇区的大小擦除所述应用程序区中的应用程序以得到与所述更新程序相匹配的地址空间。
具体地,为了提高升级效率,根据更新程序所占用的Flash空间内扇区的大小来擦除应用程序区中的应用程序从而得到与更新程序相匹配的地址空间。Flash空间是控制器生产制造前已经规划的地址空间,扇区是Flash空间种的基本单元,更新程序在Flash空间内占用相对应的扇区进行存储。由于更新程序的大小可能并不完全为扇区大小的整数倍,但为了保证为更新程序提供足够的地址空间,优选按照该更新程序所有占据的扇区大小对应用程序区进行地址擦除。
S202:将所述更新程序写入所述应用程序区的所述地址空间。
具体地,在步骤S201从应用程序区中得到与更新程序相匹配的地址空间之后,将更新程序写入应用程序区中的相应的地址空间以便控制器下次启动后执行升级后的更新程序。
在一些其他实施例中,为了保证从上位机接收的应用程序的完整性,该方法还包括:对接收到的所述更新程序进行数据校验,若校验通过,执行步骤S105。其中,数据校验包括CRC校验和CHECKSUM检验。
在一些其他实施例中,为了及时判断在线升级过程是否完成,所述方法还包括检测是否接收到在线更新程序的完成标志,若接收到,则结束在线升级流程。其中,完成标志可以为更新程序中的结束标注等。
本发明实施例通过运行在线编程区内的在线编程导引程序,并由在线编程导引程序读取IP地址传递区中的IP地址并根据读取的IP地址初始化控制器的以太网接口以使控制器与上位机实现通讯连接,判断是否接收到来自上位机的写请求,若接收到来自上位机的写请求,接收上位机发送的更新程序,并将更新程序写入应用程序区从而完成控制器的在线程序升级。相比现有技术,本发明实施例不需要增加额外的仿真器及硬件设备,从而降低了升级成本,并藉由以太网接口的传输效率,可进一步提高程序的烧写速度。
图4是本发明第二实施例提供的一种在线升级方法的示意流程图。如图所示,该方法包括步骤S301~S307,其中,步骤S301~S302与步骤S101~S102相同,步骤S305~S307与步骤S103~S105相同,故此处不再赘述。
S301,运行所述控制器的在线编程区内的在线编程导引程序。
S302,所述在线编程导引程序读取IP地址传递区内的IP地址并初始化所述控制器的以太网接口,所述以太网接口用于连接所述控制器和上位机。
S303,判断是否接收到来自所述上位机的IP地址改请求。
具体地,IP地址改请求用于修改控制器的IP地址,若接收到来自所述上位机的IP地址改请求,执行步骤S304;若没有接收到,则继续判断。需要说明的是,当控制器运行在线编程区的在线导引程序过程中,步骤S303一直执行,知道控制器从在线编程区调转到应用编程区为止。
S304,修改IP地址并将修改后的IP地址更新至所述IP地址传递区域。
具体地,若在线编程区接收到来自所述上位机的IP地址改请求,修改IP地址并将修改后的IP地址以使控制器跳转到应用程序区后能够根据修改后的IP地址与上位机进行通讯连接,并根据修改后的IP地址更新至所述IP地址传递区域
需要说明的是,控制器IP地址的修改可能发生在一个控制器与一个上位机进行通信的模式中也可能发生在多个控制器与一个上位机进行组网通信的模式中,且IP地址改请求的发送时机可以是控制器上电启动或复位后或者执行应用程序区中的应用程序过程中。为了保证控制器IP地址修改之后在运行过程依然保证与上位机的正常通讯,在本发明实施例中,若在线编程区接收到来自所述上位机的IP地址改请求,将修改后的IP地址更新至IP地址传递区域以便程序在跳转至应用程序区或在线编程区后,能够从IP地址传递区中读取修改后的IP地址以便与上位机建立通讯连接。同时,控制器由在线编程区跳转至应用程序区后,若接收到上位机的IP地址改请求,则修改IP地址并将修改后的IP地址更新至IP地址传递区域以便程序由在线编程区跳转至应用程序区后,能够从IP地址传递区中读取修改后的IP地址以便与上位机建立通讯连接。
S305,判断是否接收到上位机的写请求。
S306,若接收到来自所述上位机的写请求,接收所述上位机发送的更新程序。
S307,将所述更新程序写入应用程序区,程序升级完成。
本发明实施例通过运行在线编程区内的在线编程导引程序,并由在线编程导引程序读取IP地址传递区中的IP地址并根据读取的IP地址初始化控制器的以太网接口以使控制器与上位机实现通讯连接,判断是否接收到来自上位机的写请求,判断是否接收到来自上位机的IP地址改请求;若接收到,修改IP地址并将修改后的IP地址更新至IP地址传递区域,若接收到来自上位机的写请求,接收上位机发送的更新程序,并将更新程序写入应用程序区从而完成控制器的在线程序升级。相比现有技术,本发明实施例不需要增加额外的仿真器及硬件设备,从而降低了升级成本,并藉由以太网接口的传输效率,可进一步提高程序的烧写速度。
参照图5,是控制器与上位机构成的组网拓扑图。如图所示,上位机通过交换机与控制器1和控制器2进行网络通讯。上位机、控制器1、及控制器2的初始默认IP地址均为192.168.1.1,即控制器1和控制器2的IP地址传递区中默认的IP地址均为192.168.1.1,此时上位机只可单独与控制器1/控制器2进行通讯连接,但不能实现组网模式。为了实现组网结构,将上位机首先控制器1通过默认的IP地址192.168.1.1建立通信连接以便将控制器1的IP地址修改为192.168.1.2,并将修改后的IP地址192.168.1.2更新保存至控制器1的IP地址传递区中;然后将上位机与控制器2通过默认的IP地址192.168.1.1建立通讯连接,并将控制器2的IP地址修改为192.168.1.3,并将修改后的IP地址192.168.1.3更新保存至控制器2中的IP地址传递区中。由于通过上位机修改控制器1或控制器2的IP地址的操作可以发生在应用程序区或在线编程区,如当控制器1中执行应用程序区的应用程序时接收到上位机对应控制器1的IP地址修改操作,并将修改后的IP地址更新保存在控制器1的IP地址传递区中,当需要跳转至在线编程区执行导引程序时,将首先从控制器1中的IP地址传递区中读取IP地址并根据获取的IP地址初始化以太网接口,以保证跳转至在线编程区之后也能与上位机建立通信连接。同理,从在线编程区跳转至应用程序区后,也需要从IP地址传递区中读取IP地址并根据获取的IP地址初始化以太网接口,以保证调转至应用程序区之后也能与上位机建立通信连接。可以理解地,当一个控制器与一个上位机进行网络通信时,通常不需要修改控制器的IP地址地址。
参照图6,是本发明第四实施例提供的一种控制器的示意框图。如图所示的本实施例中的控制器40包括在线编程区41、IP地址传递区42、及应用程序区43,所述在线编程区41、IP地址传递区42、应用程序区43均设置在所述控制器40的FLASH空间内,且互不重叠。所述在线编程区41用于存储在线编程导引程序,所述IP地址传递区42用于存储对应控制器的IP地址,所述应用程序区43用于存储应用程序,所述在线编程导引程序用于将升级程序写入所述应用程序区43。其中,参照图7,是图6中的在线编程区的结构示意图。如图所示,在线编程区41包括:
第一读取单元410,用于读取IP地址传递区内的IP地址;
第一初始化单元411,用于根据读取的IP地址初始化以太网接口,所述以太网接口用于连接所述控制器和上位机;
第一判断单元412,用于判断在预设时间内是否有上位机写请求;
接收单元413,用于若接收到来自所述上位机的写请求,接收所述上位机发送的更新程序;
写入单元414,用于将所述更新程序写入所述应用应用程序区43
第一跳转单元415,用于若未接收到来自所述上位机的写请求,调转至所述应用程序区。
进一步地,所述在线编程区41还包括:
第二判断单元416,用于判断是否接收到来自所述上位机的IP地址改请求;
第一更新单元417,用于若接收到所述上位机的IP地址改请求,修改IP地址并将修改后的IP地址更新至所述IP地址传递区42域。
参照图8,是图6中的应用程序区的结构示意图。如图所示,应用程序区43包括:
所述应用程序区43具体包括:
第二读取单元431,用于读取IP地址传递区42内的IP地址;
第二初始化单元432,用于根据读取的IP地址初始化以太网接口,所述以太网接口用于连接所述控制器和上位机;
第三判断单元433,用于判断是否接收到来自所述上位机的IP地址改请求;
第二更新单元434,用于若接收到所述上位机的IP地址改请求,修改IP地址并将修改后的IP地址更新至所述IP地址传递区;
运行单元435,用于运行所述应用程序区内的应用程序;
第二跳转单元436,用于若接收到来自所述上位机的写请求,调转至所述在线编程区。
本发明实施例通过运行在线编程区内的在线编程导引程序,并由在线编程导引程序读取IP地址传递区中的IP地址并根据读取的IP地址初始化控制器的以太网接口以使控制器与上位机实现通讯连接,判断是否接收到来自上位机的写请求,若接收到来自上位机的写请求,接收上位机发送的更新程序,并将更新程序写入应用程序区从而完成控制器的在线程序升级。相比现有技术,本发明实施例不需要增加额外的仿真器及硬件设备,从而降低了升级成本,并藉由以太网接口的传输效率,可进一步提高程序的烧写速度。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的控制器和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的控制器和方法,可以通过其它的方式实现。例如,以上所描述的装置设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置设备或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
本发明第实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例控制器中的单元可以根据实际需要进行合并、划分和删减。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明第一实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,控制器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上为发明的优选实施例,而非对发明做任何形式上的限制。本领域的技术人员可在上述实施例的基础上施以各种等同的更改和改进,凡在权利要求范围内所做的等同变化或修饰,均应落入发明的包含范围之内。

Claims (10)

1.一种在线升级方法,用于对控制器进行在线程序升级,其特征在于,所述方法包括:
运行所述控制器的在线编程区内的在线编程导引程序;
所述在线编程导引程序读取IP地址传递区内的IP地址并初始化所述控制器的以太网接口,所述以太网接口用于连接所述控制器和上位机;
判断是否接收到来自上位机的写请求;
若接收到来自所述上位机的写请求,接收所述上位机发送的更新程序;
将所述更新程序写入应用程序区,程序升级完成。
2.如权利要求1所述的方法,其特征在于,所述判断是否接收到来自上位机的写请求具体包括:
判断在预设时间内是否接收到来自所述上位机的写请求。
3.如权利要求1所述的方法,其特征在于,所述判断是否接收到来自上位机的写请求之前,所述方法还包括:
判断是否接收到来自所述上位机的IP地址改请求;
若接收到,修改IP地址并将修改后的IP地址更新至所述IP地址传递区域。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
若未接收到来自所述上位机的写请求,所述控制器由在线编程区直接调转到应用程序区,所述应用程序区执行函数读取所述IP地址传递区内的IP地址并初始化所述控制器的以太网接口后运行所述应用程序区内的应用程序。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
当程序跳转至所述应用程序区后,若接收到来自上位机的写请求,则跳转到在线编程区内执行在线编程导引程序;若接收到上位机的IP地址改请求,则修改IP地址并将修改后的IP地址更新至所述IP地址传递区域。
6.如权利要求1至5任一项所述的方法,其特征在于,所述在线编程区、IP地址传递区、应用程序区均设置在所述控制器的FLASH空间内,且互不重叠。
7.一种控制器,其特征在于,包括:
在线编程区、IP地址传递区、应用程序区,所述在线编程区用于存储在线编程导引程序,所述IP地址传递区用于存储对应控制器的IP地址,所述应用程序区用于存储应用程序,所述在线编程导引程序用于将升级程序写入所述应用程序区,其中,所述在线编程区具体包括:
第一读取单元,用于读取IP地址传递区内的IP地址;
第一初始化单元,用于根据读取的IP地址初始化以太网接口,所述以太网接口用于连接所述控制器和上位机;
第一判断单元,用于判断在预设时间内是否有上位机写请求;
接收单元,用于若接收到来自所述上位机的写请求,接收所述上位机发送的更新程序;
写入单元,用于将所述更新程序写入所述应用应用程序区
第一跳转单元,用于若未接收到来自所述上位机的写请求,调转至所述应用程序区。
8.如权利要求7所述的控制器,其特征在于,所述在线编程区还包括:
第二判断单元,用于判断是否接收到来自所述上位机的IP地址改请求;
第一更新单元,用于若接收到所述上位机的IP地址改请求,修改IP地址并将修改后的IP地址更新至所述IP地址传递区域。
9.如权利要求7所述的控制器,其特征在于,所述应用程序区具体包括:
第二读取单元,用于读取IP地址传递区内的IP地址;
第二初始化单元,用于根据读取的IP地址初始化以太网接口,所述以太网接口用于连接所述控制器和上位机;
第三判断单元,用于判断是否接收到来自所述上位机的IP地址改请求;
第二更新单元,用于若接收到所述上位机的IP地址改请求,修改IP地址并将修改后的IP地址更新至所述IP地址传递区域;
运行单元,用于运行所述应用程序区内的应用程序;
第二跳转单元,用于若接收到来自所述上位机的写请求,调转至所述在线编程区。
10.如权利要求7所述的控制器,其特征在于,所述在线编程区、IP地址传递区、应用程序区均设置在所述控制器的FLASH空间内,且互不重叠。
CN201611264703.0A 2016-12-30 2016-12-30 一种在线升级方法及控制器 Pending CN106648804A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611264703.0A CN106648804A (zh) 2016-12-30 2016-12-30 一种在线升级方法及控制器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611264703.0A CN106648804A (zh) 2016-12-30 2016-12-30 一种在线升级方法及控制器

Publications (1)

Publication Number Publication Date
CN106648804A true CN106648804A (zh) 2017-05-10

Family

ID=58837962

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611264703.0A Pending CN106648804A (zh) 2016-12-30 2016-12-30 一种在线升级方法及控制器

Country Status (1)

Country Link
CN (1) CN106648804A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109901508A (zh) * 2019-04-02 2019-06-18 北京天地玛珂电液控制系统有限公司 可编程控制器及液压支架控制系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101699398A (zh) * 2009-10-27 2010-04-28 中兴通讯股份有限公司 Rfid有源标签及其软件升级方法、系统
CN102736929A (zh) * 2012-08-03 2012-10-17 太原理工大学 液压支架电液控制系统端头控制器软件远程在线升级方法
CN103514018A (zh) * 2013-10-08 2014-01-15 上海电力学院 基于stm32f4控制器的程序远程下载的实现方法
CN103677943A (zh) * 2013-12-27 2014-03-26 浙江众邦机电科技有限公司 一种缝纫机控制器软件升级方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101699398A (zh) * 2009-10-27 2010-04-28 中兴通讯股份有限公司 Rfid有源标签及其软件升级方法、系统
CN102736929A (zh) * 2012-08-03 2012-10-17 太原理工大学 液压支架电液控制系统端头控制器软件远程在线升级方法
CN103514018A (zh) * 2013-10-08 2014-01-15 上海电力学院 基于stm32f4控制器的程序远程下载的实现方法
CN103677943A (zh) * 2013-12-27 2014-03-26 浙江众邦机电科技有限公司 一种缝纫机控制器软件升级方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109901508A (zh) * 2019-04-02 2019-06-18 北京天地玛珂电液控制系统有限公司 可编程控制器及液压支架控制系统

Similar Documents

Publication Publication Date Title
CN105573902B (zh) 一种应用程序的测试方法及系统
CN102495744B (zh) 基于can总线的电动汽车电控设备控制软件升级方法
CN104133667B (zh) 实现人工智能行为的方法、装置及人工智能编辑器
CN106951289A (zh) 一种在线升级方法、dsp控制器及升级系统
CN108664650A (zh) 一种区块链网络的事务处理方法、装置、设备及存储介质
CN103970665B (zh) 一种模拟spi flash的fpga系统及调试方法
CN107870775A (zh) 一种处理器及BootLoader程序的更新方法
CN109002310A (zh) 固件升级方法
US20120198292A1 (en) Test apparatus and test method
CN109669729A (zh) 一种处理器的启动引导方法
CN106293859A (zh) 基于控制器的软件升级或烧录方法、装置和系统
CN109491671A (zh) 诊断软件下载方法、装置、终端设备及存储介质
CN105607937B (zh) 一种热补丁方法及设备
CN107977220A (zh) 一种刷写应用程序的方法、装置及系统
CN105354059A (zh) 空调系统的控制器的升级方法及装置
CN106708584A (zh) 程序烧录方法及装置
CN109901866A (zh) 用于多模块系统的在线升级方法及旋转导向系统
CN107220194A (zh) 一种多路服务器的分区配置方法、装置及多路服务器
CN106789210A (zh) 一种基于can总线的多dsp智能节点软件在线升级方法
JP6233418B2 (ja) モータ制御プログラム転送システム、上位コントローラ、モータ制御装置及びモータ制御プログラム転送方法
CN107770299A (zh) 一种mac地址刷写方法、系统、装置及存储介质
CN106648804A (zh) 一种在线升级方法及控制器
CN108228965B (zh) 一种存储单元的仿真验证方法、装置和设备
CN101178660A (zh) 存储器数据自动更新方法
CN114115724A (zh) 一种固态硬盘安全擦除方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170510