掌桥专利:专业的专利平台
掌桥专利
首页

嵌入式系统在线编程升级方法及系统

文献发布时间:2023-06-19 18:58:26


嵌入式系统在线编程升级方法及系统

技术领域

本发明属于软件升级技术领域,涉及一种升级系统,尤其涉及一种嵌入式系统在线编程ISP升级方法及系统。

背景技术

如今市面有很多使用UART或USB升级的设备,需要使用有线电缆连接到PC更新程序,典型的升级场景如图1所示。

一般情况下,嵌入式系统程序中的BOOT程序需要判断启动应用程序还是进入下载模式。一种典型的做法是通过BOOT脚启动电平检测判断进入的模式;例如,高电平进入启动应用固件模式,低电平进入下载模式。在这种场景下,需要将BOOT脚在嵌入式设备上引出,一般以按键的形式体现。

另外一种典型的做法是通过BOOT程序开机时检测上位机的握手信号来判断是否进入下载模式,需要先操作上位机下载程序开始不停地发送握手信号,再让嵌入式设备上电开机,BOOT程序中检测握手信号。这种做法的缺点是:(1)需要提供专用的下载器,以保证在上电前下载使用的UART/USB已经在PC上正确枚举,嵌入式设备上电时连接到这个设备,而不是重新枚举;(2)需要有重新上电的动作,产线升级时会浪费时间成本。

有鉴于此,如今迫切需要设计一种新的升级方式,以便克服现有升级方式存在的上述至少部分缺陷。

发明内容

本发明提供一种嵌入式系统在线编程升级方法及系统,可节省烧录成本,同时减少烧录需要的工序,增加烧录的成功率。

为解决上述技术问题,根据本发明的一个方面,采用如下技术方案:

一种嵌入式系统在线编程升级方法,所述嵌入式系统在线编程升级方法包括:

步骤S1、嵌入式终端开机,启动第一引导程序BOOT,第二引导程序BOOT2启动应用程序;嵌入式终端在接收到上位机发送的让其重启的设定命令后,嵌入式终端重新启动;转至步骤S2;

步骤S2、嵌入式终端启动在线编程ISP程序;转至步骤S3;

步骤S3、嵌入式终端判断是否检测到来自上位机的握手信号;若是,转至步骤S4;否则,转至步骤S6;

步骤S4、嵌入式终端向上位机发送握手应答信号;转至步骤S5;

步骤S5、嵌入式终端等待上位机握手信号发送停止,等待设定第一时间段;转至步骤S6;

步骤S6、嵌入式终端判断设定第二时间段内是否收到超时设置信号;若是,转至步骤S7;否则,转至步骤S8;

步骤S7、嵌入式终端进入下载模式下载数据,完成数据下载,转至步骤S1;

步骤S8、嵌入式终端启动应用程序;转至步骤S9;

步骤S9、嵌入式终端判断是否收到重启命令;若是,转至步骤S1。

作为本发明的一种实施方式,所述在线编程升级方法进一步包括:上位机向嵌入式终端发送让其重启的命令。

作为本发明的一种实施方式,所述在线编程升级方法进一步包括:嵌入式终端启动在线编程ISP程序后,嵌入式终端向上位机发送的握手应答信号包含有在线编程ISP请求。

作为本发明的一种实施方式,所述在线编程升级方法进一步包括:上位机在接收到嵌入式终端包含在线编程ISP请求的握手应答信号后,停止连续发送连续握手信号,仅发送握手信号;嵌入式终端向上位机发送握手应答信号。

作为本发明的一种实施方式,所述在线编程升级方法进一步包括:上位机在收到嵌入式终端握手应答信号后,发送重启信号;嵌入式终端向上位机发送重启应答信号。

根据本发明的另一个方面,采用如下技术方案:一种嵌入式系统在线编程升级系统,所述嵌入式系统在线编程升级系统包括:上位机及至少一嵌入式终端;

所述嵌入式终端包括主控单元、BOOT单元、ISP单元、握手信号检测单元、握手应答信号发送单元及数据下载单元;

所述主控单元用以控制BOOT单元、ISP单元运行,用以控制握手信号检测单元检测上位机是否发送握手信号,用以在检测到上位机发送握手信号后控制所述握手应答信号发送单元发送握手应答信号;

所述主控单元还用以判断设定时间内是否收到超时设置信号,若收到超时设置信号,则控制数据下载单元下载数据,完成数据下载。

作为本发明的一种实施方式,所述上位机用以向嵌入式终端发送让其重启的命令。

作为本发明的一种实施方式,嵌入式终端启动在线编程程序后,嵌入式终端向上位机发送的握手应答信号包含有在线编程请求;

上位机在接收到嵌入式终端包含在线编程请求的握手应答信号后,停止连续发送连续握手信号,仅发送握手信号;嵌入式终端向上位机发送握手应答信。

作为本发明的一种实施方式,所述上位机用以在收到嵌入式终端握手应答信号后,发送重启信号;嵌入式终端向上位机发送重启应答信号。

本发明的有益效果在于:本发明提出的嵌入式系统在线ISP升级方法及系统,可节省烧录成本,同时减少烧录需要的工序,增加烧录的成功率。

附图说明

图1为现有嵌入式系统升级方式的示意图。

图2为需要进行ISP程序升级的嵌入式系统升级方式的示意图。

图3为本发明一实施例中嵌入式系统在线编程ISP升级系统的组成示意图。

图4为本发明一实施例中嵌入式系统在线编程ISP升级方法的流程图(嵌入式终端部分)。

图5为本发明一实施例中嵌入式系统在线编程ISP升级方法的流程图。

具体实施方式

下面结合附图详细说明本发明的优选实施例。

为了进一步理解本发明,下面结合实施例对本发明优选实施方案进行描述,但是应当理解,这些描述只是为进一步说明本发明的特征和优点,而不是对本发明权利要求的限制。

该部分的描述只针对几个典型的实施例,本发明并不仅局限于实施例描述的范围。相同或相近的现有技术手段与实施例中的一些技术特征进行相互替换也在本发明描述和保护的范围内。

说明书中各个实施例中的步骤的表述只是为了方便说明,本申请的实现方式不受步骤实现的顺序限制。

说明书中的“连接”既包含直接连接,也包含间接连接。

本发明揭示了一种嵌入式系统在线编程ISP升级方法,图4、图5为本发明一实施例中嵌入式系统在线编程ISP升级方法的流程图;请参阅图4、图5,所述嵌入式系统在线编程ISP升级方法包括:

步骤S1、嵌入式终端开机,启动第一引导程序BOOT,第二引导程序BOOT2启动应用程序;嵌入式终端在接收到上位机发送的让其重启的设定命令后,嵌入式终端重新启动;转至步骤S2;

步骤S2、嵌入式终端启动在线编程ISP程序;转至步骤S3;

步骤S3、嵌入式终端判断是否检测到来自上位机的握手信号;若是,转至步骤S4;否则,转至步骤S6;

步骤S4、嵌入式终端向上位机发送握手应答信号;转至步骤S5;

步骤S5、嵌入式终端等待上位机握手信号发送停止,等待设定第一时间段;转至步骤S6;

步骤S6、嵌入式终端判断设定第二时间段内是否收到超时设置信号;若是,转至步骤S7;否则,转至步骤S8;

步骤S7、嵌入式终端进入下载模式下载数据,完成数据下载,转至步骤S1;

步骤S8、嵌入式终端启动应用程序;转至步骤S9;

步骤S9、嵌入式终端判断是否收到重启命令;若是,转至步骤S1。

所述在线编程升级方法进一步包括:上位机向嵌入式终端发送让其重启的命令(如可以为\r\nreboot\r\n)。

作为本发明的一种实施方式,所述在线编程升级方法进一步包括:嵌入式终端启动在线编程ISP程序后,嵌入式终端向上位机发送的握手应答信号包含有在线编程ISP请求。

作为本发明的一种实施方式,所述在线编程升级方法进一步包括:上位机在接收到嵌入式终端包含在线编程ISP请求的握手应答信号后,停止连续发送连续握手信号,仅发送握手信号;嵌入式终端向上位机发送握手应答信号。

作为本发明的一种实施方式,所述在线编程升级方法进一步包括:上位机在收到嵌入式终端握手应答信号后,发送重启信号;嵌入式终端向上位机发送重启应答信号。

本发明进一步揭示一种嵌入式系统在线编程ISP升级系统,图3为本发明一实施例中嵌入式系统在线编程ISP升级系统的组成示意图;请参阅图3,所述嵌入式系统在线编程升级系统包括:上位机及至少一嵌入式终端(如图2所示)。所述嵌入式终端包括主控单元1、BOOT单元2、ISP单元3、握手信号检测单元4、握手应答信号发送单元5及数据下载单元6。

所述主控单元1用以控制BOOT单元2、ISP单元3运行,用以控制握手信号检测单元4检测上位机是否发送握手信号,用以在检测到上位机发送握手信号后控制所述握手应答信号发送单元5发送握手应答信号。所述主控单元1还用以判断设定时间内是否收到超时设置信号,若收到超时设置信号,则控制数据下载单元下载数据,完成数据下载。

在本发明的一实施例中,所述上位机用以向嵌入式终端发送让其重启的命令(如可以为\r\nreboot\r\n)。

在本发明的一实施例中,嵌入式终端启动在线编程程序后,嵌入式终端向上位机发送的握手应答信号包含有在线编程请求;上位机在接收到嵌入式终端包含在线编程请求的握手应答信号后,停止连续发送连续握手信号,仅发送握手信号;嵌入式终端向上位机发送握手应答信号。所述上位机用以在收到嵌入式终端握手应答信号后,发送重启信号;嵌入式终端向上位机发送重启应答信号。

综上所述,本发明提出的嵌入式系统在线编程ISP升级方法及系统,可节省烧录成本的同时,减少烧录需要的工序,增加烧录的成功率。

需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施;例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中;例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现;例如,作为与处理器配合从而执行各个步骤或功能的电路。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

这里本发明的描述和应用是说明性的,并非想将本发明的范围限制在上述实施例中。实施例中所涉及的效果或优点可因多种因素干扰而可能不能在实施例中体现,对于效果或优点的描述不用于对实施例进行限制。这里所披露的实施例的变形和改变是可能的,对于那些本领域的普通技术人员来说实施例的替换和等效的各种部件是公知的。本领域技术人员应该清楚的是,在不脱离本发明的精神或本质特征的情况下,本发明可以以其它形式、结构、布置、比例,以及用其它组件、材料和部件来实现。在不脱离本发明范围和精神的情况下,可以对这里所披露的实施例进行其它变形和改变。

相关技术
  • 实现在线编程的嵌入式系统、编程器及方法
  • 实现在线编程的嵌入式系统、编程器及方法
技术分类

06120115752987