CN102622253B - 一种单片机及其在线升级的方法 - Google Patents
一种单片机及其在线升级的方法 Download PDFInfo
- Publication number
- CN102622253B CN102622253B CN201210061151.9A CN201210061151A CN102622253B CN 102622253 B CN102622253 B CN 102622253B CN 201210061151 A CN201210061151 A CN 201210061151A CN 102622253 B CN102622253 B CN 102622253B
- Authority
- CN
- China
- Prior art keywords
- code
- chip microcomputer
- upgrading
- upgraded
- identification information
- 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.)
- Active
Links
Landscapes
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种单片机及其在线升级的方法,涉及单片机技术领域。本发明公开的单片机在线升级的方法包括:单片机接收升级数据包,该升级数据包中包含待升级的代码及其对应的升级标识信息,所述单片机从该升级数据包中获取升级标识信息,若所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码时,则将所述升级数据包中待升级的代码存储到片外指定位置;单片机重启后,将片外指定位置中存储的代码加载至单片机用户区。本发明还公开了一种单片机。本申请技术方案实现了单片机的在线升级,使得不会影响程序的正常功能的执行。并且实现了用户代码的安全快速升级,提高了单片机升级的可靠性。
Description
技术领域
本发明涉及单片机技术领域,具体涉及一种单片机及其在线升级的方法。
背景技术
现在的电子产品越来越广泛的采用单片机,应用广泛的单片机主要有ARM7,Cortex-M3,8051等处理器。应用软件在上面运行来完成产品各种各样的功能,电子产品销售到客户手中后,厂家要对产品进行维护与升级,这就需要对CPU内的软件在客户现场就能进行下载,并且尽量不影响产品的正常工作。
而传统的单片机软件升级主要是在接收到升级请求后,软件进入一个升级模式,只处理与升级相关的任务,不能运行正常的产品功能。升级完成软件后才能运行正常的用户程序的功能,升级过程中没有增加十分有效的安全机制来防止升级错误程序,通讯产生误码等问题的发生,经常导致现场或是远程升级后的程序不能正常的运行。
发明内容
本发明所要解决的技术问题是,提供一种单片机及其在线升级的方法,以实现单片机在线升级。
为了解决上述技术问题,本发明公开了一种单片机在线升级的方法,包括:
单片机接收升级数据包,该升级数据包中包含待升级的代码及其对应的升级标识信息,所述单片机从该升级数据包中获取升级标识信息,若所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码时,则将所述升级数据包中待升级的代码存储到片外指定位置;
单片机重启后,将片外指定位置中存储的代码加载至单片机用户区。
较佳地,上述方法中,所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码指:
所述获取的升级标识信息包括升级代码类型和升级代码适用的单片机标识,当所述获取的升级标识信息中的升级代码类型为用户代码,升级代码适用的单片机标识为本单片机标识时,确定该升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码。
较佳地,上述方法还包括,当所述获取的升级标识信息中的升级代码类型为引导代码,升级代码适用的单片机标识为本单片机标识时,确定该升级标识信息指示其对应的待升级的代码为本单片机升级的引导代码,则在本单片机在线工作同时,直接将所述升级数据包中待升级的代码写入单片机引导区。
较佳地,上述方法中,所述单片机将所述升级数据包中待升级的代码存储到片外指定位置后,直接重启,或者在本单片机空闲时重启。
较佳地,上述方法中,在所述单片机运行本单片机用户区中的用户代码过程中,由运行的用户代码接收所述升级数据包,从该升级数据包中获取升级标识信息,若所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码时,运行的用户代码将所述升级数据包中待升级的代码存储到片外指定位置;
所述单片机重启后,运行本单片机引导区中的引导代码,由运行的引导代码将片外指定位置中存储的代码加载至单片机用户区。
较佳地,上述方法中,运行的用户代码将所述升级数据包中待升级的代码存储到片外指定位置后,还设置所述片外指定位置的标志为有用户代码升级请求;
所述单片机重启后,运行的引导代码读取所述片外指定位置的标志,当所读取的标志为用户代码升级请求,则将所述片外指定位置中的代码写入单片机用户区,并在写入操作结束后,清除所述片外指定位置的标志。
本发明还公开了一种单片机,包括:
接收模块,接收升级数据包,从中获取升级标识信息;
备份模块,在所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码时,将所述升级数据包中待升级的代码存储到片外指定位置;
升级模块,单片机重启后,将片外指定位置中存储的用户代码加载至单片机用户区。
较佳地,上述单片机中,所述升级模块,在所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的引导代码时,直接将所述升级数据包中待升级的代码写入单片机引导区。
较佳地,上述单片机中,所述备份模块将所述升级数据包中待升级的代码存储到片外指定位置后,直接重启本单片机,或者在本单片机空闲时重启本单片机。
较佳地,上述单片机中,所述升级模块,将所述升级数据包中待升级的代码存储到片外指定位置后,设置所述片外指定位置的标志为有用户代码升级请求,在单片机重启后,读取所述片外指定位置的标志,当所读取的标志为用户代码升级请求,则将所述片外指定位置中的用户代码写入单片机用户区,在写入操作结束后,清除所述片外指定位置的标志。
本申请技术方案实现了单片机的在线升级,使得不会影响程序的正常功能的执行。并且,本申请技术方案针对用户代码的升级采用了先备份后载入的方式,从而实现了用户代码的安全快速升级,提高了单片机升级的可靠性。
附图说明
图1为本实施例中提供的单片机在线升级的流程图;
图2为本实施例中提供的具体应用中的单片机在线升级的流程图;
图3为本实施例中升级程序的数据包结构示意图;
图4为本实施例中数据包编号与帧方向字节的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文将结合附图对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
实施例1
申请人考虑到单片机升级过程中主要分为引导代码(Bootloadercode)和用户代码(Usercode)的升级。其中,用户代码是最重要的部分,对用户代码的升级要保证其安全,并且一般用户代码比较多,升级时间较长,因此,申请人提出先接收用户代码,经过校验存入片外指定位置(如片外指定存储器)中,等一切接收正确后再使单片机重启,将新升级的用户代码写入单片机用户区即可。而引导代码一般很短,升级时间短,且引导代码的升级并不影响单片机的正常运行,故申请人提出采用直接接收,校验并写入单片机引导区的升级方式。这样,就实现了单片机的在线升级。需要说明的是,本文所称在线升级是指单片机正常运行用户代码的同时进行升级。
下面介绍本实施例提供的一种单片机在线升级的过程,该过程包括如下步骤:
步骤100,单片机接收升级数据包,该升级数据包中包含待升级的代码及其对应的升级标识信息;
该步骤中,单片机可按照现有方式从网络侧或本地接收到上述升级数据包。例如,可以在单片机运行本单片机用户区中的用户代码的过程中,接收上述升级数据包。但本申请不限于此种方式。
步骤200,单片机从上述升级数据包中获取升级标识信息;
本实施例中,上述升级标识信息包括升级代码类型和升级代码适用的单片机标识。而升级代码类型包括引导代码和用户代码。具体地,可在升级数据包的包头中携带该升级标识信息。需要说明的是升级标识信息中的升级代码适用的单片机标识是为了保证单片机只接收适用于本单片机的升级数据包,避免错误接收了其他近似产品的升级包。而升级标识信息中的升级代码类型则是为了区别不同类型的升级代码的升级方式。例如,升级代码类型为用户代码时,基于用户代码升级时间过长的特点,就可以采用先备份后载入的升级方式,即保持单片机在线工作的同时,在片外对所要升级的用户代码进行备份,直到备份完成后再载入升级的用户代码。这样,无论备份用户代码的时间有多长均不会影响单片机的正常运行,而备份完成后的载入时间比较短的,也不会影响单片机的运行。但升级标识信息的实现形式并不限于本实施例提供的上述形式,也可采用其他任意实现形式,只要通过该升级标识信息可以确定所收到的数据包是否为本单片机升级的用户代码或引导代码即可。例如,可事先设置本单片机升级的用户代码或引导代码的名称(或标识),这样,单片机获取升级标识信息后,若判断升级标识信息指示的名称(或标识)与事先设置的名称(或标识)一致,即确定所收到的数据包为本单片机升级的用户代码或引导代码。
另外,还可以在包头中携带校验码,以确保单片机在确定了本产品的升级代码后,还可以根据校验码保证升级的代码在传输过程中的正确性,防止由于通信异常导致的接收到错误数据,从而保证单片机升级操作的安全可靠。
步骤300,根据所获取的升级标识信息确定其对应的待升级的代码是本单片机升级的用户代码,则将升级数据包中的用户代码存储到片外指定位置;
具体地,本实施例中片外指定位置是单片机片外存储器中所开辟的一段空间,其用于存储所收到的升级用的用户代码。
步骤400,单片机重启后,将片外指定位置中所存储的代码加载至单片机用户区,以完成单片机升级。
其中,单片机的重启,可以是在将升级数据包中的用户代码存储到片外指定位置后,直接重启本单片机,或者在本单片机空闲时重启本单片机即可。具体地,上述步骤中,单片机重启后,会运行单片机引导区中的引导代码,再由运行的引导代码将片外指定位置中所存储的代码加载至单片机用户区。
另外,在上述流程的基础上,单片机升级还可以包括如下步骤,即根据所获取的升级标识信息确定其对应的待升级的代码是本单片机升级的引导代码时,保持本单片机在线工作,并直接将升级数据包中的引导代码写入单片机引导区。而之所以如此操作是因为引导代码的升级过程中内容较少,升级时间短,且引导代码仅在单片机启动时运行一次后即跳转到用户代码的运行了,故采用直接接收引导代码并写单片机引导区的方式即快速又完全不会影响到单片机的在线运行。而且,在上述升级过程中,同一个升级数据包中可以只包含引导代码或用户代码,也可以同时包含引导代码和用户代码。
下面以具体应用场景为例,结合附图1详细说明上述升级过程。
首先说明一下单片机内主要包括有引导代码和用户代码。其中,引导代码主要用于引导用户代码的启动,并且实现对用户代码的更新升级。而用户代码则主要实现产品的全部功能,并在其中实现单片机的在线升级功能。
单片机正常工作时,先运行引导代码,运行的引导代码会读取片外存储器中的用户代码标志(CodeFlag)(本实施例中用户代码标志占用一个字大小的存储空间,采用32位表示,0xAA55AA55表示有用户代码升级请求,0xFFFFFFFF表示无用户代码升级请求)。当用户代码标志为0xAA55AA55,说明有用户代码升级请求(即需要进行户代码升级操作),运行的引导代码首选擦除单片机内用户代码区(Usercode)然后读取片外存储器中备份的用户代码(Codebackup)写入单片机用户区。当完成所有的写入操作后,运行的引导代码还会清除用户程序标志即把用户程序标志改写成0xFFFFFFFF,然后跳转到用户代码区运行。如果单片机启动后读取到的片外用户程序标志为0xFFFFFFFF,那么运行的引导代码就会直接跳转到用户代码的运行。如图2上半部分所示。
在用户代码运行过程中,不断接收来自串口的数据,从接收到的数据中分析有无升级请求,当收到升级请求后,首先接收第一包数据即程序头(也可称为数据包包头),从中提取升级标识信息(本实施例中称为升级代码名称)与校验码,如果代码名称是用户代码名称(即表示数据包中携带了本单片机待升级的用户代码),那就把接收的数据存储在片外存储空间中的备份用户代码区(Codebackup),并且计算校验码,校验码(Checkcode)可采用计算所有程序数据字节(不包括程序名称与校验码)的异或值,即Checkcode=Byte1^Byte2^Byte3^...ByteN,到代码接收完成并且校验码正确后,在片外存储空间中设置用户代码标志为0xAA55AA55,表示有用户代码升级请求,然后重新启动单片机更新用户代码,并且运行新的用户代码。如果提取的代码名称是引导代码名称(即表示数据包中携带了本单片机待升级的引导代码),那就把接收的数据直接写入单片机引导代码区(Bootloadercode)中,并且计算校验码,到代码接收完成并且校验正确后,完成了引导代码的升级,继续运行原来的用户代码,在下一次重新启动单片机后就会运行新的引导代码。如图2下半部分所示。
在上文中提到收到升级请求后,会开始接收数据包,即所要升级的代码,而本实施例中,所收到的要升级的代码的数据包的格式如图3所示,包括代码头和代码内容。代码头由代码名称、分隔符、校验码三部分组成。代码名称采用ASCII码字符表示,占用多个字节的长度,具体取决于代码的名称长度。分隔符采用一个非ASCII码的十六进行制的字节0xE3表示。校验码用一个16进制单字节数据表示。而在单片机内事先配置有适用于本单片机升级的代码名称,故当接收解析出的代码头中的代码名称与事先配置的代码名称相符时,即可确定此升级数据包即为本单片机的引导代码或用户代码的升级。
另外,在接收引导代码与用户代码中可能会出现错误,此时,单片机内的用户代码将继续重新开始接收要升级的代码,以保证代码的可靠更新升级。这是因为,为了保证传输程序的可靠准确,本实施例中的升级的代码是分包进行传输的,在每包数据中定义了数据包编号与帧方向字节,如图4所示,数据编号用于表示传输的是第几包数据,编号从1开始,通过此编号升级程序可以发现数据包在传输过程中是否发生了丢失,帧方向字节表示数据包的传输方向,0x00表示由其他设备发送到单片机,0x01表示由单片机发送到其他设备,使用帧方向字节可以有效的防止由于通信线缆短路造成的升级错误代码。
实施例2
本实施例介绍一种单片机,可实现上述实施例1的升级方案,该单片机至少包括接收模块、备份模块和升级模块。
接收模块,接收升级数据包,从中获取升级标识信息;
上述升级数据包包括待升级的代码及其对应的升级标识信息,升级标识信息至少包括升级代码类型和升级代码适用的单片机标识。其中,之所以包含升级代码适用的单片机标识是因为一般的电子产品有很多功能相近型号不同的产品,这些产品之间的代码的差异往往很小。对于现场人员很容易将别的型号产品代码写入,造成产品运行不正常,而按照本实施例技术方案携带升级代码适用的单片机标识后,根据此信息就可以确认是否为本产品的升级代码,从而避免误写操作。而升级标识信息中包含升级代码类型是因为针对不同类型的升级代码的特点可采用对应高效的升级方式。例如,升级代码类型为用户代码时,其升级代码的内容比较多,造成数据接收时间较长,针对此特点,就可以采用先备份后载入的升级方式,即保持单片机在线工作的同时,在片外对所要升级的用户代码进行备份,直到备份完成后再载入升级的用户代码。这样,无论备份用户代码的时间有多长均不会影响单片机的正常运行,而备份完成后的载入时间比较短的,也不会影响单片机的运行。升级代码类型为引导代码时,其升级代码的内容较少,升级时间短,且引导代码仅在单片机启动时运行一次后即跳转到用户代码的运行了,故针对引导代码的升级特点,采用的升级方式是直接接收引导代码并写单片机引导区。可见,本实施例中采用的引导代码的升级方式,完全不会影响到单片机的在线运行。
另外,有些方案中,升级数据包中还可以包括校验码,以确保单片机在确定了本产品的升级代码后,还可以根据校验码保证升级的代码在传输过程中的正确性,防止由于通信异常导致的接收到错误数据,从而保证单片机升级操作的安全可靠。
备份模块,当所获取的升级标识信息指示其对应的升级的代码为本单片机升级的用户代码时,将升级数据包中的用户代码存储到片外指定位置;
备份模块将升级数据包中的用户代码存储到片外指定位置后,可直接重启本单片机,或者在本单片机空闲时重启本单片机。
升级模块,在单片机重启后,执行引导代码,将存储的本单片机的用户代码加载至单片机用户区。
具体地,备份模块在存储操作完成后,在片外存储空间中设置用户代码标志为有用户代码升级请求,这样,升级模块在单片机重启后,执行引导代码,读取片外存储空间中用户代码标志为有用户代码升级请求,则擦除片内用户代码区,读取片外存储器中备份用户代码区的用户代码并写入片内代码空间的用户区,在完成所有的写入操作后,清除片外存储空间中用户代码标志,跳转到片内代码空间的用户区运行。其中,升级模块对本单片机的引导代码以及用户代码的具体操作细节可参见实施例1,在此不再赘述。
另外,升级模块,在所获取的升级标识信息指示其对应的升级的代码为本单片机升级的引导代码时,在本单片机在线工作的同时,直接将升级数据包中的引导代码写入单片机引导区。
从上述实施例可以看出,本申请技术方案将升级代码分为用户代码与引导代码,并通过升级标识信息指示出待升级的代码类型以及是否适用于本单片机,这样,由升级标识信息确定为本单片机的用户代码升级时,即可采用备份的方式升级,即等正确接收并存储完所有升级用的用户代码后,在单片机重启时,再运行升级的用户代码,从而避免将其他型号产品的升级代码误作为本单片机的升级代码进行升级操作,提高了单片机升级的可靠性,且在不影响单片机正常工作的基础上,去掉了接收用户代码的时间,从而实现快速在线升级。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种单片机在线升级的方法,其特征在于,该方法包括:
单片机接收升级数据包,该升级数据包中包含待升级的代码及其对应的升级标识信息,所述单片机从该升级数据包中获取升级标识信息,若所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码时,则将所述升级数据包中待升级的代码存储到片外指定位置;
单片机重启后,将片外指定位置中存储的代码加载至单片机用户区;
其中,所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码指:
所述获取的升级标识信息包括升级代码类型和升级代码适用的单片机标识,当所述获取的升级标识信息中的升级代码类型为用户代码,升级代码适用的单片机标识为本单片机标识时,确定该升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码;
所述方法还包括:当所述获取的升级标识信息中的升级代码类型为引导代码,升级代码适用的单片机标识为本单片机标识时,确定该升级标识信息指示其对应的待升级的代码为本单片机升级的引导代码,则在本单片机在线工作同时,直接将所述升级数据包中待升级的代码写入单片机引导区。
2.如权利要求1所述的方法,其特征在于,
所述单片机将所述升级数据包中待升级的代码存储到片外指定位置后,直接重启,或者在本单片机空闲时重启。
3.如权利要求2所述的方法,其特征在于,
在所述单片机运行本单片机用户区中的用户代码过程中,由运行的用户代码接收所述升级数据包,从该升级数据包中获取升级标识信息,若所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码时,运行的用户代码将所述升级数据包中待升级的代码存储到片外指定位置;
所述单片机重启后,运行本单片机引导区中的引导代码,由运行的引导代码将片外指定位置中存储的代码加载至单片机用户区。
4.如权利要求3所述的方法,其特征在于,
运行的用户代码将所述升级数据包中待升级的代码存储到片外指定位置后,还设置所述片外指定位置的标志为有用户代码升级请求;
所述单片机重启后,运行的引导代码读取所述片外指定位置的标志,当所读取的标志为有用户代码升级请求,则将所述片外指定位置中的代码写入单片机用户区,并在写入操作结束后,清除所述片外指定位置的标志。
5.一种单片机,其特征在于,包括:
接收模块,用于接收升级数据包,该升级数据包中包含待升级的代码及其对应的升级标识信息,从该升级数据包中获取升级标识信息;
备份模块,用于在所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码时,将所述升级数据包中待升级的代码存储到片外指定位置;
升级模块,用于在单片机重启后,将片外指定位置中存储的待升级的代码加载至单片机用户区;
其中,所述备份模块所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码指:
所述获取的升级标识信息包括升级代码类型和升级代码适用的单片机标识,当所述获取的升级标识信息中的升级代码类型为用户代码,升级代码适用的单片机标识为本单片机标识时,确定该升级标识信息指示其对应的待升级的代码为本单片机升级的用户代码;
所述升级模块,还用于在所获取的升级标识信息指示其对应的待升级的代码为本单片机升级的引导代码时,升级代码适用的单片机标识为本单片机标识时,确定该升级标识信息指示其对应的待升级的代码为本单片机升级的引导代码,则在本单片机在线工作同时,直接将所述升级数据包中待升级的代码写入单片机引导区。
6.如权利要求5所述的单片机,其特征在于,
所述备份模块,还用于将所述升级数据包中待升级的代码存储到片外指定位置后,直接重启本单片机,或者在本单片机空闲时重启本单片机。
7.如权利要求6所述的单片机,其特征在于,
所述升级模块,还用于在所述备份模块将所述升级数据包中待升级的代码存储到片外指定位置后,设置所述片外指定位置的标志为有用户代码升级请求,在单片机重启后,读取所述片外指定位置的标志,当所读取的标志为有用户代码升级请求,则将所述片外指定位置中的待升级的代码写入单片机用户区,在写入操作结束后,清除所述片外指定位置的标志。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210061151.9A CN102622253B (zh) | 2012-03-09 | 2012-03-09 | 一种单片机及其在线升级的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210061151.9A CN102622253B (zh) | 2012-03-09 | 2012-03-09 | 一种单片机及其在线升级的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102622253A CN102622253A (zh) | 2012-08-01 |
CN102622253B true CN102622253B (zh) | 2015-11-18 |
Family
ID=46562183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210061151.9A Active CN102622253B (zh) | 2012-03-09 | 2012-03-09 | 一种单片机及其在线升级的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102622253B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102945173B (zh) * | 2012-10-31 | 2016-06-29 | 青岛海信宽带多媒体技术有限公司 | 用户程序在线升级系统和升级方法 |
CN102945174A (zh) * | 2012-11-08 | 2013-02-27 | 大连捷成实业发展有限公司 | 通过接着片外Flash实现单片机程序升级的方法 |
CN103838587B (zh) * | 2012-11-20 | 2018-03-16 | 贵阳铝镁设计研究院有限公司 | 基于gprs的控制系统远程升级方法及装置 |
CN103473088B (zh) * | 2013-08-30 | 2018-01-02 | 北京远特科技股份有限公司 | 一种单片机在线升级方法和系统 |
CN104102486A (zh) * | 2014-07-17 | 2014-10-15 | 福建升腾资讯有限公司 | 一种基于外部存储模块实现mcu程序空间扩容的方法 |
CN104375855A (zh) * | 2014-09-24 | 2015-02-25 | 深圳市航盛电子股份有限公司 | 一种基于车载多mcu通过存储设备升级固件的装置及方法 |
CN106293797A (zh) * | 2015-06-11 | 2017-01-04 | 中兴通讯股份有限公司 | 一种在线更新单片机程序的方法及系统 |
CN105068831A (zh) * | 2015-07-30 | 2015-11-18 | 深圳市创凯电子有限公司 | 程序升级方法及装置 |
CN105808298B (zh) * | 2016-03-08 | 2019-02-12 | 大连楼兰科技股份有限公司 | 一种单片机下模块的动态加载方法 |
CN105975312A (zh) * | 2016-05-12 | 2016-09-28 | 苏州联视泰电子信息技术有限公司 | 一种信号采集传输系统中链路节点的代码更新方法 |
CN106371871A (zh) * | 2016-08-30 | 2017-02-01 | 深圳市沃特玛电池有限公司 | 一种防止升级不匹配的bin文件的方法 |
CN106569833B (zh) * | 2016-11-14 | 2020-04-10 | 积成电子股份有限公司 | 一种具有二级boot的dsp程序在线升级方法 |
CN106776119A (zh) * | 2016-11-24 | 2017-05-31 | 北京小米移动软件有限公司 | 服务实例的重启方法、装置及服务器 |
CN106708592B (zh) * | 2017-01-25 | 2021-12-03 | 北京鸿智电通科技有限公司 | 一种微控制器以及用于微控制器的代码烧录方法 |
CN109683940A (zh) * | 2018-11-23 | 2019-04-26 | 中国船舶重工集团公司第七0七研究所 | 一种基于国产处理器的嵌入式系统程序的安全下载方法 |
CN111124461B (zh) * | 2019-12-12 | 2023-08-18 | 青岛海尔科技有限公司 | 用于单片机ota升级的方法、装置和单片机 |
CN111651186B (zh) * | 2020-05-29 | 2023-10-03 | 歌尔科技有限公司 | 耳机及其程序升级方法、控制装置和可读存储介质 |
CN112505607B (zh) * | 2020-12-22 | 2023-07-04 | 昆明自动化成套集团股份有限公司 | 一种带定位功能支持远程升级的电压监测装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858702A (zh) * | 2005-07-22 | 2006-11-08 | 上海华为技术有限公司 | 单片机升级方法 |
CN101206575A (zh) * | 2006-12-19 | 2008-06-25 | 大唐移动通信设备有限公司 | 一种软件补丁在线升级方法、单板及系统 |
CN101207699A (zh) * | 2006-12-22 | 2008-06-25 | 深圳市同洲电子股份有限公司 | 一种机顶盒升级的方法 |
CN101329633A (zh) * | 2008-07-25 | 2008-12-24 | 北大方正集团有限公司 | 一种软件升级的方法和软件升级装置 |
CN101576828A (zh) * | 2009-06-01 | 2009-11-11 | 中兴通讯股份有限公司 | 软件版本升级方法及装置、服务器 |
CN101615128A (zh) * | 2009-07-31 | 2009-12-30 | 北京华环电子股份有限公司 | 一种单片机在线升级的方法及装置 |
CN101902762A (zh) * | 2009-05-27 | 2010-12-01 | 上海华为技术有限公司 | 下载控制方法及其系统,以及相关设备 |
CN102110005A (zh) * | 2011-02-28 | 2011-06-29 | 上海华为技术有限公司 | 软件升级方法、装置及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011193434A (ja) * | 2009-10-28 | 2011-09-29 | Panasonic Corp | パリティパケットを用いた通信方法、通信装置及び中継器 |
-
2012
- 2012-03-09 CN CN201210061151.9A patent/CN102622253B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858702A (zh) * | 2005-07-22 | 2006-11-08 | 上海华为技术有限公司 | 单片机升级方法 |
CN101206575A (zh) * | 2006-12-19 | 2008-06-25 | 大唐移动通信设备有限公司 | 一种软件补丁在线升级方法、单板及系统 |
CN101207699A (zh) * | 2006-12-22 | 2008-06-25 | 深圳市同洲电子股份有限公司 | 一种机顶盒升级的方法 |
CN101329633A (zh) * | 2008-07-25 | 2008-12-24 | 北大方正集团有限公司 | 一种软件升级的方法和软件升级装置 |
CN101902762A (zh) * | 2009-05-27 | 2010-12-01 | 上海华为技术有限公司 | 下载控制方法及其系统,以及相关设备 |
CN101576828A (zh) * | 2009-06-01 | 2009-11-11 | 中兴通讯股份有限公司 | 软件版本升级方法及装置、服务器 |
CN101615128A (zh) * | 2009-07-31 | 2009-12-30 | 北京华环电子股份有限公司 | 一种单片机在线升级的方法及装置 |
CN102110005A (zh) * | 2011-02-28 | 2011-06-29 | 上海华为技术有限公司 | 软件升级方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102622253A (zh) | 2012-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102622253B (zh) | 一种单片机及其在线升级的方法 | |
CN104090796B (zh) | 一种嵌入式设备程序更新方法和系统 | |
CN112579130B (zh) | 一种交互式的iap升级方法 | |
CN109189445B (zh) | 一种物联网设备程序升级的方法 | |
CN104102518B (zh) | 一种双cpu系统及其程序升级方法 | |
CN106569847A (zh) | 一种用于车载系统基于移动网络实现iap远程升级的方法 | |
CN102419713B (zh) | 基于nandflash的机顶盒的软件升级方法 | |
CN105677398A (zh) | 一种通用的嵌入式计算机软件在线升级方法 | |
CN105260215A (zh) | 一种u盘升级车载行车记录仪终端的方法 | |
CN109240720B (zh) | 一种安卓系统的固件升级方法及一种存储设备 | |
CN103745167B (zh) | 单片机的iap方法及装置 | |
CN103761122A (zh) | 一种芯片固件的升级方法和系统 | |
CN109284117A (zh) | 基于闪存微控制器的固件升级方法和系统及闪存微控制器 | |
CN106506649A (zh) | 一种车载控制终端的远程在线升级方法及装置 | |
US20150154028A1 (en) | Methods for accessing baseboard management controller | |
WO2016078060A1 (zh) | 用于多系统终端的系统升级方法、升级装置和终端 | |
CN103136002A (zh) | 一种基于UBoot的自动升级的控制方法及系统 | |
CN107844305A (zh) | 嵌入式设备的软件升级方法及嵌入式设备 | |
CN102243591B (zh) | 采用双标志位提高机顶盒Loader升级稳定性的方法 | |
CN112181444B (zh) | 一种基于1553b总线的dsp多核数据烧写方法 | |
CN111352764B (zh) | 一种芯片修复的方法、装置、设备及存储介质 | |
CN115102855B (zh) | 智能水表嵌入式软件在线升级方法及系统 | |
CN104394466B (zh) | 高安全机顶盒生产方法 | |
CN116301995A (zh) | 基于bootloader架构的固件升级方法 | |
CN115357274A (zh) | 远程io设备固件升级方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |