CN109358887A - 一种单片机程序的在线升级方法、装置及系统 - Google Patents
一种单片机程序的在线升级方法、装置及系统 Download PDFInfo
- Publication number
- CN109358887A CN109358887A CN201811545123.8A CN201811545123A CN109358887A CN 109358887 A CN109358887 A CN 109358887A CN 201811545123 A CN201811545123 A CN 201811545123A CN 109358887 A CN109358887 A CN 109358887A
- Authority
- CN
- China
- Prior art keywords
- zone bit
- bit information
- upgrading
- data
- program
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种单片机程序的在线升级方法、装置及系统,其中的方法包括:首先接收升级开始指令,MCU控制器划分为三个区域,并将第一标志位信息和第二标志位信息进行修改,并执行软件复位;接着根据第二标志位信息,判断是否需要进行在线升级;并当需要进行在线升级时,接收数据更新指令,然后接收升级结束指令,根据引导加载程序中的预设设备特征值修改对应的第一标志位信息后,控制从引导加载程序跳转至执行应用程序,再判断修改后的第一标志位信息对应的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。本发明实现了在线升级以及提高升级的可靠性的技术效果。
Description
技术领域
本发明涉及电子技术领域,具体涉及一种单片机程序的在线升级方法、装置及系统。
背景技术
单片机以其集成度高、体积小、功能强、功耗低、可靠性高等特点,被广泛地应用到工业设备中,甚至一款设备内部,可能会用到多个单片机,并且用于执行不同的功能。
现有技术中,对单片机的在线升级,主要是通过启动加载程序中的在线升级功能代码来完成,使单片机从应用程序复位并运行在线升级功能后,由该功能代码将接收到的待更新程序文件数据覆盖写入到程序Flash区中用于存储应用程序数据的区域,从而达到更新单片机程序的目的。
本发明申请人在实施本发明的过程中,发现现有技术中至少存在如下技术问题:
由于设备内的单片机的数量多、种类不一,在对不同的单片机的程序进行升级时,会出现其他单片机对应的程序文件升级到另一不同功能的单片机的情况,从而导致升级失败或者异常。
由此可知,现有技术中的方法存在由于单片机程序在线升级时易导致异常的技术问题。
发明内容
有鉴于此,本发明实施例提供了一种单片机程序的在线升级方法、装置及系统,用以解决或者至少部分解决现有技术中存在由于单片机程序在线升级时易导致异常的技术问题。
为了解决上述技术问题,本发明第一方面提供了一种单片机程序的在线升级方法,包括:
MCU控制器接收控制端发送的升级开始指令,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级;
在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位;
根据第二标志位信息,判断是否需要进行在线升级;
当需要进行在线升级时,接收控制端发送的数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,将待升级的单片机程序数据更新至程序数据区;
接收控制端发送的升级结束指令,根据引导加载程序中的预设设备特征值修改对应的第一标志位信息,使修改后的第一标志位信息表示更新完成的状态;
判断修改后的第一标志位信息表示的信息是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
在一种实施方式中,当修改后的第一标志位信息与应用程序中的预设设备特征值对应的状态不匹配时,所述方法还包括:
则中止应用程序的运行。
在一种实施方式中,在中止应用程序的运行之后,所述方法还包括:
待设备重新上电后,根据第二标志位信息,判断是否需要进行在线升级。
在一种实施方式中,数据更新指令中的待升级的单片机程序数据由控制端分段下发至MCU控制器。
在一种实施方式中,所述待升级的单片机程序数据包括CRC校验值、起始地址、数据段数据长度信息,MCU控制器接收到待升级的单片机程序数据之后,所述方法还包括:
对待升级的单片机程序数据进行CRC校验;
若校验成功,根据起始地址、数据段数据长度信息,将对应的程序数据更新至程序数据区中对应的位置。
在一种实施方式中,当校验不成功时,所述方法还包括:
将数据更新失败的信息返回至控制端。
基于同样的发明构思,本发明第二方面提供了一种单片机程序的在线升级方法,包括:
当需要进行在线升级时,控制端生成升级开始指令;
将所述升级开始指令发送至MCU控制器,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级,使得MCU控制器在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位,再根据第二标志位信息,判断是否需要进行在线升级;
当第二标志位信息表示需要进行在线升级的状态时,向MUC控制发送数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,使得在线升级模块将待升级的单片机程序数据更新至程序数据区;
生成升级结束指令,并发送至MCU控制器,使得控制器根据引导加载程序中的预设设备特征值修改对应的第一标志位信息,其中,修改后的第一标志位信息表示更新完成的状态,然后控制从引导加载程序跳转至执行应用程序,再判断修改后的第一标志位信息表示的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
基于同样的发明构思,本发明第三方面提供了一种单片机程序的在线升级装置,所述升级装置为MCU控制器,包括:
接收模块,用于接收控制端发送的升级开始指令,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级;
业务处理模块,用于在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位;
启动跳转模块,用于根据第二标志位信息,判断是否需要进行在线升级;
在线升级模块,用于当需要进行在线升级时,接收控制端发送的数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,将待升级的单片机程序数据更新至程序数据区;以及接收控制端发送的升级结束指令,根据预设设备特征值修改对应的第一标志位信息,使修改后的第一标志位信息表示更新完成的状态;
控制模块,用于控制从引导加载程序跳转至执行应用程序;
特征值匹配模块,用于判断修改后的第一标志位信息表示的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
基于同样的发明构思,本发明第四方面提供了一种单片机程序的在线升级装置,所述装置为控制端,包括:
升级开始指令生成模块,用于当需要进行在线升级时,生成升级开始指令;
升级开始指令发送模块,用于将所述升级开始指令发送至MCU控制器,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级,使得MCU控制器在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位,再根据第二标志位信息,判断是否需要进行在线升级;
数据更新指令发送模块,用于当第二标志位信息表示需要进行在线升级的状态时,向MUC控制发送数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,使得在线升级模块将待升级的单片机程序数据更新至程序数据区;
升级结束指令发送模块,用于将生成的升级结束指令发送至MCU控制器,使得控制器根据引导加载程序中的预设设备特征值修改对应的第一标志位信息,其中,修改后的第一标志位信息表示更新完的状态,然后控制从引导加载程序跳转至执行应用程序,再判断修改后的第一标志位信息是否与应用程序中的预设设备特征值对应的更新完成的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
基于同样的发明构思,本发明第五方面提供了一种单片机程序的在线升级系统,包括第三方面所述的MCU控制器和第四方面所述的控制端。
本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:
本发明公开的方法,通过将MCU控制器的内部程序Flash进行分区,第一区域用于存储引导加载程序,第二区域用于存储应用程序,第三区域用于存储标志位信息,与现有技术中内部程序Flash中仅用来存储应用程序,单片机本身不具备在线升级能力相比,本发明可以通过应用程序来执行与升级和其他功能,引导加载程序用来根据第二标志位信息的内容选择是否进行在线升级,并将待更新的程序数据更新至程序数据区,进行分区以后,使得单片机即可以运行具有在线升级功能的程序,也能运行应用程序;通过在线升级功能程序,对自身的应用程序进行在线升级。
并且,在引导加载程序和应用程序中预设设备特征值,这样一来,每一类单片机程序都有各自对应的特征值,当某一类单片机在更新完数据以后,会向第一标志位信息写入与该特征值相对应的内容;对应地,只有选取了正确且匹配的应用程序文件进行升级,应用程序才能正确匹配第一标志位信息的内容,从而完成在线升级最后一步,即改写第二标志位信息的内容,使其表征不需要进行在线升级的状态,从而可以保证升级正常完成,避免由于不匹配造成的异常情况,保证了升级的可靠性。
进一步地,当程序文件不匹配,则掉电重启后,系统不会跳转到执行应用程序,会继续停留在线升级的状态,等待更新正确匹配的程序文件,从而避免数据有误时造成的升级异常。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种单片机程序的在线升级方法的流程图;
图2为本发明实施例中另一种单片机程序的在线升级方法的流程图;
图3为本发明实施例中一种单片机程序的在线升级装置的结构框图;
图4为本发明实施例中另一种单片机程序的在线升级装置的结构框图;
图5为本发明实施例中一种单片机程序的在线升级系统的结构框图;
图6为图5中的系统的工作流程图。
具体实施方式
本发明实施例提供了一种单片机程序的在线升级方法、装置及系统,用以改善现有技术中存在由于单片机程序在线升级时易导致异常的技术问题。
为了达到上述技术效果,本发明的总体思路如下:
本发明提供了一种单片机程序的在线升级方法,通过对单片机的内部程序Flash进行分区,使得单片机即可以运行具有在线升级功能的程序,也能运行应用程序;通过在线升级功能程序,对自身的应用程序进行在线升级。并且在引导加载程序和应用程序中预设设备特征值,从而每一类单片机程序都有各自对应的特征值,在进行在线升级时,则可以通过预设设备特征值来选择匹配的程序进行更新,从而防止将其他单片机对应的程序文件升级到另一不同功能的单片机的情况发生。能够有效避免程序文件不匹配、升级过程异常中断、以及程序文件数据错误等问题所造成的升级异常情况的发生,保证了升级的可靠性。并且,本发明提供的在线升级系统及方法可用于不同类型的单片机上,具有良好的兼容性。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本实施例提供了一种单片机程序的在线升级方法,执行主体为MCU控制器,请参见图1,该方法包括:
首先执行步骤S101:MCU控制器接收控制端发送的升级开始指令,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级。
具体来说,控制端为单片机在线升级控制端,可以是设备的上位机软件,也可以是另外的单片机等控制器件。控制端与待升级程序的MCU之间,可以采用I2C、RS232等通信链路。引导加载程序为接收到升级开始指令后,首先执行的程序,主要包括跳转和在线升级的功能。应用程序主要包括其他相关业务处理(例如开关电、切图等)和特征值匹配的功能。作为可选,引导加载程序具体可以包括启动跳转模块和在线升级模块,应用程序还可以包括特征值匹配模块和业务处理模块。
第一标志位信息为程序数据更新完成的标志,其内容只能由引导加载程序中的在线升级功能模块进行改写,在更新完全部程序数据到应用程序的程序数据区后,在线升级功能模块会根据设备特征值,将该标志位的值更新为表征数据更新完成的值。第二标志位信息为跳转标志位。引导加载程序运行起来以后,通过判断该标志位的值,决定是要运行在线升级功能,还是直接运行应用程序中的业务处理流程。
设备特征值为不同设备、不同类型以及不同用途的单片机器件,分别设定不同的设备特征值,并将它们应用到配套程序文件中;配套程序中的引导加载程序和应用程序,所使用的特征值为相同特征值。设备特征值不同,在线升级功能模块在更新完应用程序区的数据后,向第一标志位信息内写入的值(用以表征数据更新完成)也不同。设备特征值的建立,以及设备特征值与数据更新完成的状态值之间的对应关系,可预先设计好,并且后续可以根据实际情况进行增加,在此不做具体限定。
然后执行步骤S102:在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位。
具体来说,在接收到升级开始指令后,会通过引导加载程序中的业务处理模块来执行相关的操作。第一标志信息的内容包括两种,第一种表示对应的单片机程序更新完成状态,第二种表示更新未完成状态。第二标志位信息的内容也有两种,第一种表示需要进行在线升级,例如值为0xFFFFFFFF,第二种表示需要进行在线升级,值为0x55AA55AA。复位后,单片机再次从引导加载程序开始运行。
接下来执行步骤S103:根据第二标志位信息,判断是否需要进行在线升级。
具体来说,通过启动跳转模块来进行判断,然后进行相关的跳转,由于前述步骤中,第二标志位信息的内容已经修改为需要在线升级的状态,那么在判断第二标志位信息的内容后,即知道需要进行在线升级,转而运行在线升级功能模块。
接着执行步骤S104:当需要进行在线升级时,接收控制端发送的数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,将待升级的单片机程序数据更新至程序数据区。
具体来说,通过应用程序的在线升级模块完成程序文件的在线升级。从上一级控制端接收待升级的程序文件,并更新到应用程序的程序数据区,覆盖原来的程序数据,从而达到在线升级程序的效果。
再执行步骤S105:接收控制端发送的升级结束指令,根据引导加载程序中的预设设备特征值修改对应的第一标志位信息,使修改后的第一标志位信息表示更新完成的状态。
具体来说,在更新完程序数据区的数据后,再根据引导加载程序中的预设设备特征值,更新对应的第一标志位信息的内容,供应用程序使用。
接下来执行步骤S106:控制从引导加载程序跳转至执行应用程序。
具体来说,当更新完第一标志位信息的内容后,此时数据程序区已经更新完成,引导加载程序的功能已经完成,则跳转至执行应用程序。
最后执行步骤S107:判断修改后的第一标志位信息表示的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
具体来说,可以通过应用程序中预设的设备特征值,去判断修改后的第一标志位信息的值是否和与该设备特征值对应的表示数据更新完成的值相同。如果相同即匹配通过,不同即匹配失败。当匹配成功时,则将第二标志位信息的内容修改为表征不需要在线升级的状态(0x55AA55AA),从而完成在线升级的流程。
在一种实施方式中,当修改后的第一标志位信息表示的状态与应用程序中的预设设备特征值对应的状态不匹配时,所述方法还包括:
则中止应用程序的运行。
具体来说,如果特征值匹配功能模块判断匹配失败,则不会修改第二标志位信息的值,此时应用程序中止运行,等待重新上电。
在一种实施方式中,在中止应用程序的运行之后,所述方法还包括:
待设备重新上电后,根据第二标志位信息,判断是否需要进行在线升级。
具体来说,重新上电后,还是通过启动跳转模块来判断是否需要进行在线升级,由于,第二标志位信息未作修改,即仍然为0xFFFFFFFF,则表明需要进行在线升级。此时将会停留在在线升级的状态,所以之前所升级的数据并不会造成致命的影响,也不会造成异常,进一步保证了升级的可靠性。
在一种实施方式中,数据更新指令中的待升级的单片机程序数据由控制端分段下发至MCU控制器。
具体来说,为了保证数据的传输,上一级控制端将选定的待更新的程序文件数据逐段下发至MCU控制器。
具体地,所述待升级的单片机程序数据包括CRC校验值、起始地址、数据段数据长度信息,MCU控制器接收到待升级的单片机程序数据之后,所述方法还包括:
对待升级的单片机程序数据进行CRC校验;
若校验成功,根据起始地址、数据段数据长度信息,将对应的程序数据更新至程序数据区中对应的位置。
具体来说,在接收到数据更新指令后,同样也对其中的程序数据段进行CRC校验,并与指令中的CRC校验值进行比对,二者相同才认为是合格的程序数据。然后根据起始地址、数据段数据长度等信息,将该段程序数据写入到应用程序区的对应位置。
在一种实施方式中,当校验不成功时,所述方法还包括:
将数据更新失败的信息返回至控制端。
具体来说,如果校验值不同,则舍弃该段程序数据,并向控制端返回数据更新失败的状态信息。MCU控制器持续接收控制端下发的程序数据,直到程序文件数据全部成功下发完成。而如果控制端在任意一段数据的下发过程中,收到单片机返回的数据更新失败的状态,则立即停止数据更新流程。
基于同一发明构思,本申请还提供了一种单片机程序的在线升级方法,详见实施例二。
实施例二
请参见图2,本实施例提供了一种单片机程序的在线升级方法,其执行主体为控制端,该方法包括:
S201:当需要进行在线升级时,控制端生成升级开始指令;
S202:将所述升级开始指令发送至MCU控制器,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级,使得MCU控制器在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位,再根据第二标志位信息,判断是否需要进行在线升级;
S203:当第二标志位信息表示需要进行在线升级的状态时,向MUC控制发送数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,使得在线升级模块将待升级的单片机程序数据更新至程序数据区;
S204:生成升级结束指令,并发送至MCU控制器,使得控制器根据引导加载程序中的预设设备特征值修改对应的第一标志位信息,其中,修改后的第一标志位信息表示更新完成的状态,然后控制从引导加载程序跳转至执行应用程序,再判断修改后的第一标志位信息表示的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
具体来说,由于实施例一中已经详细介绍控制端生成升级开始指令、生成数据更新指令以及生成升级结束指令的具体实施方式,在本实施例中不再赘述,凡是本发明实施例一的方法所包含的实施方式都属于本发明所欲保护的范围。
基于同一发明构思,本申请还提供了与实施例一中单片机程序的在线升级方法对应的装置,详见实施例三。
实施例三
本实施例提供了一种单片机程序的在线升级装置,所述装置为MCU控制器,请参见图3,该MCU控制器包括:
接收模块301,用于接收控制端发送的升级开始指令,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级;
业务处理模块302,用于在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位;
启动跳转模块303,用于根据第二标志位信息,判断是否需要进行在线升级;
在线升级模块304,用于当需要进行在线升级时,接收控制端发送的数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,将待升级的单片机程序数据更新至程序数据区;以及接收控制端发送的升级结束指令,根据预设设备特征值修改对应的第一标志位信息;
控制模块305,用于控制从引导加载程序跳转至执行应用程序;
特征值匹配模块306,用于判断修改后的第一标志位信息表示的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
在一种实施方式中,当修改后的第一标志位信息表示的状态与应用程序中的预设设备特征值对应的更新完成的状态不匹配时,特征值匹配模块还用于:
则中止应用程序的运行。
在一种实施方式中,在中止应用程序的运行之后,启动跳转模块还用于:
待设备重新上电后,根据第二标志位信息,判断是否需要进行在线升级。
在一种实施方式中,数据更新指令中的待升级的单片机程序数据由控制端分段下发至MCU控制器。
在一种实施方式中,所述待升级的单片机程序数据包括CRC校验值、起始地址、数据段数据长度信息,MCU控制器接收到待升级的单片机程序数据之后,所述在线升级模块还用于:
对待升级的单片机程序数据进行CRC校验;
若校验成功,根据起始地址、数据段数据长度信息,将对应的程序数据更新至程序数据区中对应的位置。
在一种实施方式中,当校验不成功时,所述在线升级模块还用于:
将数据更新失败的信息返回至控制端。
由于本发明实施例三所介绍的装置,为实施本发明实施例一中单片机程序的在线升级方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。
基于同一发明构思,本申请还提供了与实施例一中单片机程序的在线升级方法对应的装置,详见实施例四。
实施例四
本实施例提供了一种单片机程序的在线升级装置,所述装置为控制端,请参见图4,该控制端具体包括:
升级开始指令生成模块,用于当需要进行在线升级时,生成升级开始指令;
升级开始指令发送模块,用于将所述升级开始指令发送至MCU控制器,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级,使得MCU控制器在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位,再根据第二标志位信息,判断是否需要进行在线升级;
数据更新指令发送模块,用于当第二标志位信息表示需要进行在线升级的状态时,向MUC控制发送数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,使得在线升级模块将待升级的单片机程序数据更新至程序数据区;
升级结束指令发送模块,用于将生成的升级结束指令发送至MCU控制器,使得控制器根据引导加载程序中的预设设备特征值修改对应的第一标志位信息,其中,修改后的第一标志位信息表示更新完的状态,然后控制从引导加载程序跳转至执行应用程序,并判断修改后的第一标志位信息表示的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
由于本发明实施例四所介绍的装置,为实施本发明实施例二中单片机程序的在线升级方法所采用的装置,故而基于本发明实施例二所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例二的方法所采用的装置都属于本发明所欲保护的范围。
基于同一发明构思,本申请还提供了一种单片机程序的在线升级系统,详见实施例五。
实施例五
本实施例提供了一种单片机程序的在线升级系统,请参见图5,包括实施例三所述的MCU控制器和实施例四所述的控制端。
本实施例提供的在线升级系统,具体包括以下三种状态:
以下结合图5和图6所示,对系统的几个主要工作状态的具体处理流程进行说明。
第一:正常加载状态
对于程序已经固化好的设备,每次上电后,都会先执行引导加载程序,然后跳转到执行应用程序,之后进入到正常的业务处理流程之中。其具体过程如下:
1、系统上电,首先执行引导加载程序;引导加载程序判断第二标志位信息的内容,此时它的值是0x55AA55AA(表示不需要进行在线升级),于是直接跳转到执行应用程序;
2、运行特征值匹配模块中的代码,读取并判断第二标志位信息的内容,如果是0x55AA55AA(表示不需要进行在线升级),则接下来运行业务处理模块中的代码;
3、单片机程序开始工作,等待接收上一级的各项指令并处理。
第二、在线升级流程
单片机应用程序稳定工作以后,可以进行在线升级的操作,步骤如下:
1、上一级控制端向单片机下发升级开始指令,通信链路可以是RS232、也可以是I2C总线等;
2、单片机接收到升级开始指令后,首先,擦除第一标志位信息以及第二标志位信息的内容,然后执行软件复位,单片机程序将重新加载运行;
3、复位后,单片机再次从引导加载程序开始运行,由于此前第二标志位信息的内容已经擦除,引导加载程序在判断第二标志位信息的内容后,即知道需要进行在线升级,转而运行在线升级功能模块的代码;
4、上一级控制端继续发送程序数据擦除指令,控制单片机擦除应用程序区数据,为后面的程序文件更新做准备;
5、擦除成功后,上一级控制端将选定的待更新的程序文件数据逐段下发。在下发的完整数据中,还会加入该段程序数据的CRC校验值、起始地址、数据段数据长度等信息;
6、单片机接收到数据更新指令后,同样也对其中的程序数据段进行CRC校验,并与指令中的CRC校验值进行比对,二者一样才认为是合格的程序数据。然后根据起始地址、数据段数据长度等信息,将该段程序数据写入到应用程序区的对应位置;
反之,如果校验值不同,则舍弃该段程序数据,并向上一级控制端返回数据更新失败的状态信息。
7、重复5~6步骤,直到程序文件数据全部成功下发完成。而如果控制端在任意一段数据的下发过程中,收到单片机返回的数据更新失败的状态,则立即停止数据更新流程。并稍后再次控制执行以上4~6步骤中的在线升级流程;
8、控制端下发升级完成指令,单片机接收到该指令后,根据引导加载程序中预设的设备特征值,将与之对应的表示数据更新完成的值,写到第一标志位信息;
9、单片机更新完第一标志位信息的内容后,此时应用程序也已经更新完成;单片机控制跳转到执行应用程序;
10.应用程序运行起来后,会首先执行特征值匹配功能模块的代码,去判断第二标志位信息的值。此时检测到第二标志位信息的值不是0x55AA55AA(在升级开始的时候,该标志位的值被擦除掉),接着去匹配第一标志位信息的内容;
11、特征值匹配功能模块根据应用程序中预设的设备特征值,去判断第一标志位信息的值是否和与该特征值对应的表示数据更新完成的值相同。相同即匹配通过,不同即匹配失败;
12、如果特征值匹配功能模块的代码判断匹配成功,则会完成在线升级的最后一步,将第二标志位信息的值置为0x55AA55AA。之后单片机运行业务处理流程模块的代码,此为正常的在线升级流程;
13、如果特征值匹配功能模块的代码判断匹配失败,则不会设置第二标志位信息的值,应用程序中止运行,等待重新上电。重新上电后,引导加载程序在判断完第二标志位信息的值以后,将会停留在在线升级的状态,因而之前所升级的数据并不会造成致命的影响。
当所选取的待升级文件,与该单片机不匹配时,会判断为匹配失败。另外即使所选的待升级文件,是一份无用的数据文件,也不会造成异常,因为在线升级的最后一步无法完成,掉电重启后仍旧停留在在线升级的状态。
总体来说,本发明提供的在线升级系统,可以兼容不同的单片机;并且可以有效防止升级的程序文件不匹配或者数据有误等情况造成的在线升级异常问题。
本发明实施例提供的系统,为基于实施例三和四所介绍的装置而形成的系统,故而基于前述实施例所介绍的相关装置,本领域所属人员能够了解该系统的具体结构及变形,故而在此不再赘述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种单片机程序的在线升级方法,其特征在于,包括:
MCU控制器接收控制端发送的升级开始指令,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级;
在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位;
根据第二标志位信息,判断是否需要进行在线升级;
当需要进行在线升级时,接收控制端发送的数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,将待升级的单片机程序数据更新至程序数据区;
接收控制端发送的升级结束指令,根据引导加载程序中预设设备特征值修改对应的第一标志位信息,使修改后的第一标志位信息表示更新完成的状态;
控制从引导加载程序跳转至执行应用程序;
判断修改后的第一标志位信息表示的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
2.如权利要求1所述的方法,其特征在于,当修改后的第一标志位信息表示的状态与应用程序中的预设设备特征值对应的更新完成的状态不匹配时,所述方法还包括:
则中止应用程序的运行。
3.如权利要求2所述的方法,其特征在于,在中止应用程序的运行之后,所述方法还包括:
待设备重新上电后,根据第二标志位信息,判断是否需要进行在线升级。
4.如权利要求1所述的方法,其特征在于,数据更新指令中的待升级的单片机程序数据由控制端分段下发至MCU控制器。
5.如权利要求4所述的方法,其特征在于,所述待升级的单片机程序数据包括CRC校验值、起始地址、数据段数据长度信息,MCU控制器接收到待升级的单片机程序数据之后,所述方法还包括:
对待升级的单片机程序数据进行CRC校验;
若校验成功,根据起始地址、数据段数据长度信息,将对应的程序数据更新至程序数据区中对应的位置。
6.如权利要求5所述的方法,其特征在于,当校验不成功时,所述方法还包括:
将数据更新失败的信息返回至控制端。
7.一种单片机程序的在线升级方法,其特征在于,包括:
当需要进行在线升级时,控制端生成升级开始指令;
将所述升级开始指令发送至MCU控制器,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且在引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序中预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级,使得MCU控制器在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位,再根据第二标志位信息,判断是否需要进行在线升级;
当第二标志位信息表示需要进行在线升级的状态时,向MUC控制发送数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,使得在线升级模块将待升级的单片机程序数据更新至程序数据区;
生成升级结束指令,并发送至MCU控制器,使得控制器根据引导加载程序中的预设设备特征值修改对应的第一标志位信息,其中,修改后的第一标志位信息表示更新完成的状态,然后控制从引导加载程序跳转至执行应用程序,再判断修改后的第一标志位信息对应的状态是否与应用程序中的预设设备特征值对应的的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
8.一种单片机程序的在线升级装置,其特征在于,所述升级装置为MCU控制器,包括:
接收模块,用于接收控制端发送的升级开始指令,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区,且应用程序预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级;
业务处理模块,用于在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位;
启动跳转模块,用于根据第二标志位信息,判断是否需要进行在线升级;
在线升级模块,用于当需要进行在线升级时,接收控制端发送的数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,将待升级的单片机程序数据更新至程序数据区;以及接收控制端发送的升级结束指令,根据引导加载程序中的预设设备特征值修改对应的第一标志位信息,使修改后的第一标志位信息表示更新完成的状态;
控制模块,用于控制从引导加载程序跳转至执行应用程序;
特征值匹配模块,用于判断修改后的第一标志位信息表示的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
9.一种单片机程序的在线升级装置,其特征在于,所述装置为控制端,包括:
升级开始指令生成模块,用于当需要进行在线升级时,生成升级开始指令;
升级开始指令发送模块,用于将所述升级开始指令发送至MCU控制器,其中,MCU控制器预先划分为三个区域,其中,第一区域用于存储引导加载程序,且引导加载程序中预设有设备特征值,设备特征值用以表征不同的单片机器件,第二区域用于存储应用程序,应用程序包括程序数据区且应用程序预设有设备特征值,第三区域用于存储标志位信息,标志位信息包括第一标志位信息和第二标志位信息,第一标志位信息用以表示单片机程序的数据是否更新完成,第二标志位信息用以表示是否进行在线升级,使得MCU控制器在接收到升级开始指令后,将第一标志位信息修改为更新未完成的状态,将第二标志位信息修改为需要在线升级的状态,并执行软件复位,再根据第二标志位信息,判断是否需要进行在线升级;
数据更新指令发送模块,用于当第二标志位信息表示需要进行在线升级的状态时,向MUC控制发送数据更新指令,其中,数据更新指令中包括待升级的单片机程序数据,使得在线升级模块将待升级的单片机程序数据更新至程序数据区;
升级结束指令发送模块,用于将生成的升级结束指令发送至MCU控制器,使得控制器根据引导加载程序中的预设设备特征值修改对应的第一标志位信息,其中,修改后的第一标志位信息表示更新完的状态,然后控制从引导加载程序跳转至执行应用程序,再判断修改后的第一标志位信息表示的状态是否与应用程序中的预设设备特征值对应的状态匹配,如果匹配,则将第二标志位信息修改为不需要进行在线升级的状态。
10.一种单片机程序的在线升级系统,其特征在于,包括如权利要求8所述的MCU控制器和权利要求9所述的控制端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811545123.8A CN109358887B (zh) | 2018-12-17 | 2018-12-17 | 一种单片机程序的在线升级方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811545123.8A CN109358887B (zh) | 2018-12-17 | 2018-12-17 | 一种单片机程序的在线升级方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109358887A true CN109358887A (zh) | 2019-02-19 |
CN109358887B CN109358887B (zh) | 2021-10-22 |
Family
ID=65329048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811545123.8A Active CN109358887B (zh) | 2018-12-17 | 2018-12-17 | 一种单片机程序的在线升级方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109358887B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110286932A (zh) * | 2019-06-28 | 2019-09-27 | 海信(广东)空调有限公司 | 一种程序下载方法及装置 |
CN110837389A (zh) * | 2019-11-01 | 2020-02-25 | 北京云迹科技有限公司 | 设备升级方法、装置、物联网设备和存储介质 |
CN111427602A (zh) * | 2020-04-10 | 2020-07-17 | 扬州万方电子技术有限责任公司 | 一种vpx机箱的智能平台管理控制器在线升级固件的方法 |
CN111913728A (zh) * | 2019-05-08 | 2020-11-10 | 杰克缝纫机股份有限公司 | 一种用于缝纫设备上的程序升级方法 |
CN112527341A (zh) * | 2019-09-19 | 2021-03-19 | 合肥杰发科技有限公司 | 一种车机系统升级方法、车机系统及计算机存储介质 |
CN113407218A (zh) * | 2021-07-07 | 2021-09-17 | 广州医软智能科技有限公司 | 一种在线升级程序的方法和电子设备 |
CN113741943A (zh) * | 2021-11-08 | 2021-12-03 | 湘投云储科技有限公司 | 一种嵌入式设备程序升级系统及方法 |
CN116185461A (zh) * | 2023-04-28 | 2023-05-30 | 广东华芯微特集成电路有限公司 | 固件升级方法及架构 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110158644A1 (en) * | 2007-08-30 | 2011-06-30 | Fabio Cavaliere | In or relating to multicarrier communication |
CN103577214A (zh) * | 2012-08-09 | 2014-02-12 | 罗森伯格(上海)通信技术有限公司 | 应用程序更新方法和装置 |
CN104156237A (zh) * | 2014-07-23 | 2014-11-19 | 武汉精测电子技术股份有限公司 | 单片机的在线升级方法 |
CN105786510A (zh) * | 2016-02-29 | 2016-07-20 | 深圳市美贝壳科技有限公司 | 一种单片机的升级分区系统和安全升级方法 |
CN107678765A (zh) * | 2017-10-12 | 2018-02-09 | 北方电子研究院安徽有限公司 | 一种基于c8051f系列单片机的在线升级方法 |
CN109240730A (zh) * | 2018-08-29 | 2019-01-18 | 武汉光迅科技股份有限公司 | 一种单片机在线升级方法和系统 |
-
2018
- 2018-12-17 CN CN201811545123.8A patent/CN109358887B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110158644A1 (en) * | 2007-08-30 | 2011-06-30 | Fabio Cavaliere | In or relating to multicarrier communication |
CN103577214A (zh) * | 2012-08-09 | 2014-02-12 | 罗森伯格(上海)通信技术有限公司 | 应用程序更新方法和装置 |
CN104156237A (zh) * | 2014-07-23 | 2014-11-19 | 武汉精测电子技术股份有限公司 | 单片机的在线升级方法 |
CN105786510A (zh) * | 2016-02-29 | 2016-07-20 | 深圳市美贝壳科技有限公司 | 一种单片机的升级分区系统和安全升级方法 |
CN107678765A (zh) * | 2017-10-12 | 2018-02-09 | 北方电子研究院安徽有限公司 | 一种基于c8051f系列单片机的在线升级方法 |
CN109240730A (zh) * | 2018-08-29 | 2019-01-18 | 武汉光迅科技股份有限公司 | 一种单片机在线升级方法和系统 |
Non-Patent Citations (1)
Title |
---|
陈良勇等: "CAN总线分布式嵌入式系统的升级设计", 《单片机与嵌入式应用系统》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111913728A (zh) * | 2019-05-08 | 2020-11-10 | 杰克缝纫机股份有限公司 | 一种用于缝纫设备上的程序升级方法 |
CN110286932A (zh) * | 2019-06-28 | 2019-09-27 | 海信(广东)空调有限公司 | 一种程序下载方法及装置 |
CN112527341A (zh) * | 2019-09-19 | 2021-03-19 | 合肥杰发科技有限公司 | 一种车机系统升级方法、车机系统及计算机存储介质 |
CN112527341B (zh) * | 2019-09-19 | 2024-03-01 | 合肥杰发科技有限公司 | 一种车机系统升级方法、车机系统及计算机存储介质 |
CN110837389A (zh) * | 2019-11-01 | 2020-02-25 | 北京云迹科技有限公司 | 设备升级方法、装置、物联网设备和存储介质 |
CN111427602A (zh) * | 2020-04-10 | 2020-07-17 | 扬州万方电子技术有限责任公司 | 一种vpx机箱的智能平台管理控制器在线升级固件的方法 |
CN111427602B (zh) * | 2020-04-10 | 2021-08-06 | 扬州万方电子技术有限责任公司 | 一种vpx机箱的智能平台管理控制器在线升级固件的方法 |
CN113407218A (zh) * | 2021-07-07 | 2021-09-17 | 广州医软智能科技有限公司 | 一种在线升级程序的方法和电子设备 |
CN113741943A (zh) * | 2021-11-08 | 2021-12-03 | 湘投云储科技有限公司 | 一种嵌入式设备程序升级系统及方法 |
CN113741943B (zh) * | 2021-11-08 | 2022-03-18 | 湘投云储科技有限公司 | 一种嵌入式设备程序升级系统及方法 |
CN116185461A (zh) * | 2023-04-28 | 2023-05-30 | 广东华芯微特集成电路有限公司 | 固件升级方法及架构 |
CN116185461B (zh) * | 2023-04-28 | 2023-07-25 | 广东华芯微特集成电路有限公司 | 固件升级方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109358887B (zh) | 2021-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109358887A (zh) | 一种单片机程序的在线升级方法、装置及系统 | |
CN102520948B (zh) | 应用程序维护更新方法和装置 | |
CN105930236A (zh) | 一种基于BMS Bootloader升级的应用程序版本回退方法 | |
CN104572141A (zh) | 车用电控单元ecu的引导程序的在线更新方法 | |
CN105159718B (zh) | 固件升级方法及装置 | |
CN107465539A (zh) | 固件的升级方法、终端及固件的升级系统 | |
CN107333181A (zh) | Linux系统智能电视软件升级方法 | |
CN105607937B (zh) | 一种热补丁方法及设备 | |
CN111240720A (zh) | 引导程序升级方法、装置及存储介质 | |
CN107704258A (zh) | Uboot升级方法、系统及终端设备 | |
CN106406955A (zh) | RSU设备bootloader程序升级的方法、装置 | |
CN107301070A (zh) | 一种升级方法及终端 | |
CN107220060A (zh) | 一种同时支持多个ota升级包升级的方法及系统 | |
CN109189486B (zh) | 显示屏驱动的加载方法、装置、终端及存储介质 | |
CN110188004A (zh) | 一种终端设备的双备份软件系统管理方法及系统 | |
CN108255735A (zh) | 关联环境测试方法、电子装置及计算机可读存储介质 | |
CN105652115A (zh) | 主板测试方法及其系统、主板程序安装方法及其系统 | |
CN101178660A (zh) | 存储器数据自动更新方法 | |
CN110515635A (zh) | 主板vr固件升级方法、装置、服务器及可读存储介质 | |
CN102508676A (zh) | 嵌入式系统启动方法及装置 | |
CN108845823A (zh) | 一种基于f2812芯片的软件在线升级方法 | |
CN116431186A (zh) | 一种车载ecu的升级方法、装置及介质 | |
CN103793231A (zh) | 一种移动终端参数处理方法及系统 | |
CN110458989A (zh) | 支持主备倒换的智能锁系统以及主备倒换的启动方法 | |
CN105975322A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |