CN107179909A - 软件升级方法、装置及计算机可读存储介质 - Google Patents
软件升级方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107179909A CN107179909A CN201710347222.4A CN201710347222A CN107179909A CN 107179909 A CN107179909 A CN 107179909A CN 201710347222 A CN201710347222 A CN 201710347222A CN 107179909 A CN107179909 A CN 107179909A
- Authority
- CN
- China
- Prior art keywords
- software
- master chip
- upgrading
- data
- new edition
- 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/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
Abstract
本发明公开一种软件升级方法,包括:主芯片在接收到主机发送的新版软件数据时将接收到的新版软件数据写入备份程序区;在接收到新版软件数据的所有数据后,主芯片重新启动;在重启后,主芯片采用备份程序区的新版软件数据替换应用程序区的旧版本软件数据,以对旧版本软件升级。本发明还公开了一种软件升级装置及计算机可读存储介质。本发明在升级过程中,将需要升级的新版软件下载到主芯片的程序备份区内,下载过程中如果出错或丢包仍然可以运行旧版本软件数据,在接收到新版软件数据的所有数据后,再将备份程序区的新版软件数据替换应用程序区的旧版本软件数据,从而保证了升级过程的稳定可靠。
Description
技术领域
本发明涉及软件升级领域,尤其涉及一种软件升级方法、软件升级装置及计算机可读存储介质。
背景技术
嵌入式芯片由于产品升级、bug修复、需求变更等等原因往往需要升级软件,每个厂家由于技术封锁,往往都要使用专用的程序烧录器,当出现问题时,往往需要拿着专用的烧录器去现场更新软件,更新过程需要专业的人员操作,包括拆机、烧录、重新安装好、调试等步骤;市场上的机器非常分散,一个个去更新将面对巨大人力、财力以及时间的浪费。
随着技术的进步,芯片逐渐支持软件的自升级功能,通过某些途径,包括但不限于使用串口通信、TCP/IP、USB接口、SD卡等方式,将烧录代码传给芯片,芯片自己将烧录代码的数据写入到芯片的flash中,完成软件的升级。这样对设备进行软件升级将会变的极为便利,不再依赖专用的烧录器,可以通过互联网、无线WIFI或是普通电脑、优盘等工具就可以对软件升级,升级时也不需要拆开设备,避免对硬件进行破坏。
目前,现有的固件(软件)升级方法均需在升级过程中,一般系统重启后,边下载新版本软件数据边采用下载的新版本软件数据替换主芯片中的旧版本软件数据,在新版本软件下载出错导致升级失败时不能够恢复主芯片中的旧版本软件数据同时新版本软件又未升级成功,导致软件无法运行,特别是升级系统软件时容易导致系统崩溃。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种软件升级方法、软件升级装置及计算机可读存储介质,旨在解决现有技术在软件升级时新版本软件下载出错导致的软件无法运行甚至系统崩溃的技术问题。
为解决上述问题,本发明提供一种软件升级方法,包括以下步骤:
主芯片在接收到主机发送的新版软件数据时,将接收到的所述新版软件数据写入备份程序区;所述备份程序区所在的存储器为非易失性存储器;
在接收到所述新版软件数据的所有数据后,所述主芯片重新启动;
在重启后,所述主芯片采用所述备份程序区的新版软件数据替换应用程序区的旧版本软件数据,以对旧版本软件升级。
优选地,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,所述软件升级方法还包括:
向主机反馈与所接收到的新版软件数据相对应的帧号信息;
其中,所述主机依次发送新版本软件数据的每一帧数据以及对应的帧号信息,并在发送每一帧新版软件数据后接收所述主芯片反馈的帧号信息;在接收到所述帧号信息后,所述主机判断接收到的帧号信息与已发送的最后一帧新版软件数据的帧号信息是否一致;若是,则向所述主芯片发送下一帧新版软件数据,直至发送完所述新版本软件数据的所有数据;若否或所述主芯片无响应时,重新发送所述新版本软件数据,直至达到重发极限次数时终止升级。
优选地,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,还包括:
所述主芯片判断当前接收到的新版软件数据的帧号信息与接收到的前一帧新版软件数据的帧号信息是否相差1;
若是,则执行所述向主机返回与所获取的此帧新版软件数据相对应的帧号信息的步骤;
若否,则向所述主机发送升级异常指令,以供所述主机在接收到所述升级异常指令时,重新发送所述新版软件数据或停止发送所述新版软件数据。
优选地,所述主芯片重新启动之前,所述软件升级方法还包括:
在接收到所述新版软件数据的所有数据后,所述主芯片获取所述主机发送的升级结束指令中包含的第一校验结果,并对所述备份程序区中写入的所述新版软件数据进行校验,生成第二校验结果,其中,在接收到所述主机发送的升级结束指令时,判定接收到所述新版软件数据的所有数据;
在所述第一校验结果与第二校验结果一致时,执行所述主芯片进行重新启动的步骤。
优选地,所述软件升级方法还包括:
在接收到主机发送的升级指令时,所述主芯片获取所述升级请求信息中的版本信息;
在所述升级请求信息中的版本信息与主芯片中运行的软件的版本信息不同时,向所述主机发送响应信息,以供所述主机根据接收到的所述响应信息向所述主芯片发送所述新版本软件数据。
优选地,所述向所述主机发送响应信息的步骤之后,所述软件升级方法还包括:
所述主芯片在接收到所述主机发送的启动升级指令时,获取所述启动升级指令中包含的新版软件数据的占用空间大小信息,其中,所述主机在接收到所述响应信息时,向所述主芯片发送占用空间大小信息;
所述主芯片在接收所述占用空间大小信息后,擦除所述备份程序区对应的存储空间,并向所述主机反馈升级应答信息,以供所述主机在接收到所述升级应答信息后,向所述主芯片发送所述新版本软件数据。
所述主芯片擦除所述备份程序区中的对应存储空间的扇区,并向所述主机反馈升级应答信息,以供所述主机在接收到所述升级应答信息后,向所述主芯片发送所述新版本软件数据。
优选地,所述升级方法还包括:
所述主芯片在接收所述主机发送的软件版本信息的查询指令时,确认所述查询请求对应的软件的版本信息并将所述版本信息发送至所述主机;
其中,在所述主机接收到所述旧版本软件的版本信息后,判断主机中软件的版本信息是否与接收到的版本信息不同;若是,则向所述主芯片发送所述新版软件数据。
此外,为解决上述问题,本发明还提供一种软件升级装置,所述软件升级装置包括存储器、网络接口、通信总线、主芯片及存储在所述存储器上并可在所述主芯片上运行的软件数据、传输程序和软件升级程序,所述软件升级程序被所述主芯片执行时实现如上述所述的软件升级方法的步骤。
此外,为解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有软件升级程序,所述软件升级程序被主芯片执行时实现如上述所述的软件升级方法的步骤。
本发明提供一种软件升级方法,在升级过程中,将需要升级的新版软件下载到主芯片的程序备份区内,下载过程中如果出错或丢包仍然可以运行旧版本软件数据,在接收到新版软件数据的所有数据后,再将备份程序区的新版软件数据替换应用程序区的旧版本软件数据,该方案就算在下载新版本软件数据的过程中出现错误,由于此时未采用新版本软件数据替换控制芯片终端中的原有软件数据,则主芯片仍可运行原有软件数据,即避免出现软件升级时软件无法运行或者系统崩溃的情况。
附图说明
图1是本发明软件升级方法实施例方案涉及的硬件运行环境的装置结构示意图;
图2为本发明软件升级方法一实施例的流程示意图;
图3为本发明软件升级方法二实施例的流程示意图;
图4为本发明软件升级方法三实施例的流程示意图;
图5为本发明软件升级方法四实施例的流程示意图;
图6为本发明软件升级方法五实施例的流程示意图;
图7为本发明软件升级方法六实施例的流程示意图;
图8为本发明软件升级方法七实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:
主芯片在接收到主机发送的新版软件数据时,将接收到的所述新版软件数据写入备份程序区;所述备份程序区所在的存储器为非易失性存储器;
在接收到所述新版软件数据的所有数据后,所述主芯片重新启动;
在重启后,所述主芯片采用所述备份程序区的新版软件数据替换应用程序区的旧版本软件数据,以对旧版本软件升级。
由于现有固件升级方法,在升级过程中,边下载新版本软件数据边采用下载的新版本软件数据替换主芯片中的旧版本软件数据,在升级出错导致升级失败时不能够恢复主芯片中的旧版本软件数据同时新版本软件又未升级成功,软件无法运行甚至系统崩溃的技术问题。
本发明提供一种解决方案,在升级过程中,在保持旧版本软件的正常运行前提下,将需要升级的新版软件写入到主芯片的程序备份区内,进而使整机在运行过程中即可实现升级数据的传输和写入,而不需要复位停机,在对新版软件接收结束后,根据需要进行系统复位重启并将备份程序区的新版软件替换应用程序区的旧版本软件,从而保证了升级过程的稳定可靠,避免了现有的固件升级方法均需在升级过程中必须先进行停机,才能进行升级,升级完成后才可以恢复系统运行的问题。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端可以是PC,也可以是智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面3)播放器、便携计算机等具有显示功能的可移动式终端设备。
可以理解的是,该终端也可用于家电例如空调器中实现空调器中运行的软件的升级,或者空调器中的固件的系统软件的升级。
如图1所示,该终端可以包括:
该终端可以包括:该终端可以包括:主芯片1001,例如CPU,网络接口1003,存储器1004,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。网络接口1003可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是flash,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1004可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1004中可以包括软件数据、传输程序以及软件升级程序。
在图1所示的终端中,网络接口1003主要用于连接主机,主芯片1001可以用于调用存储器1004中存储的软件升级程序,并执行以下操作:
步骤S10,主芯片在接收到主机发送的新版软件数据时,将接收到的所述新版软件数据写入备份程序区;所述备份程序区所在的存储器为非易失性存储器;
步骤S20,在接收到所述新版软件数据的所有数据后,所述主芯片重新启动;
步骤S30,在重启后,所述主芯片采用所述备份程序区的新版软件数据替换应用程序区的旧版本软件数据,以对旧版本软件升级。
进一步地,主芯片1001可以调用存储器1004中存储的软件升级程序,还执行以下操作:
所述将接收到的所述新版软件数据写入备份程序区的步骤之后,所述软件升级方法还包括:
步骤S40,向主机反馈与所接收到的新版软件数据相对应的帧号信息;
其中,所述主机依次发送新版本软件数据的每一帧数据以及对应的帧号信息,并在发送每一帧新版软件数据后接收所述主芯片反馈的帧号信息;在接收到所述帧号信息后,所述主机判断接收到的帧号信息与已发送的最后一帧新版软件数据的帧号信息是否一致;若是,则向所述主芯片发送下一帧新版软件数据,直至发送完所述新版本软件数据的所有数据;若否或所述主芯片无响应时,重新发送所述新版本软件数据,直至达到重发极限次数时终止升级。
进一步地,主芯片1001可以调用存储器1004中存储的软件升级程序,还执行以下操作:
所述将接收到的所述新版软件数据写入备份程序区的步骤之后,还包括:
步骤S50,所述主芯片判断当前接收到的新版软件数据的帧号信息与接收到的前一帧新版软件数据的帧号信息是否相差1;
若是,则执行所述向主机返回与所获取的此帧新版软件数据相对应的帧号信息的步骤;
步骤S60,若否,则向所述主机发送升级异常指令,以供所述主机在接收到所述升级异常指令时,重新发送所述新版软件数据或停止发送所述新版软件数据。
进一步地,主芯片1001可以调用存储器1004中存储的软件升级程序,还执行以下操作:
所述主芯片重新启动之前,所述软件升级方法还包括:
步骤S70,在接收到所述新版软件数据的所有数据后,所述主芯片获取所述主机发送的升级结束指令中包含的第一校验结果,并对所述备份程序区中写入的所述新版软件数据进行校验,生成第二校验结果,其中,在接收到所述主机发送的升级结束指令时,判定接收到所述新版软件数据的所有数据;
步骤S80,在所述第一校验结果与第二校验结果一致时,执行所述主芯片进行重新启动的步骤。
进一步地,主芯片1001可以调用存储器1004中存储的软件升级程序,还执行以下操作:
步骤S90,在接收到主机发送的升级指令时,所述主芯片获取所述升级请求信息中的版本信息;
步骤S100,在所述升级请求信息中的版本信息与主芯片中运行的软件的版本信息不同时,向所述主机发送响应信息,以供所述主机根据接收到的所述响应信息向所述主芯片发送所述新版本软件数据。
进一步地,主芯片1001可以调用存储器1004中存储的软件升级程序,还执行以下操作:
所述向所述主机发送响应信息的步骤之后,所述软件升级方法还包括:
步骤S110,所述主芯片在接收到所述主机发送的启动升级指令时,获取所述启动升级指令中包含的新版软件数据的占用空间大小信息,其中,所述主机在接收到所述响应信息时,向所述主芯片发送占用空间大小信息;
步骤S120,所述主芯片擦除所述备份程序区中的对应存储空间的扇区,并向所述主机反馈升级应答信息,以供所述主机在接收到所述升级应答信息后,向所述主芯片发送所述新版本软件数据。
进一步地,主芯片1001可以调用存储器1004中存储的软件升级程序,还执行以下操作:
步骤S130,所述主芯片在接收所述主机发送的软件版本信息的查询指令时,确认所述查询请求对应的软件的版本信息并将所述版本信息发送至所述主机;
其中,在所述主机接收到所述旧版本软件的版本信息后,判断主机中软件的版本信息是否与接收到的版本信息不同;若是,则向所述主芯片发送所述新版软件数据。
本发明提供一种软件升级方法。
参照图2,图2为本发明软件升级方法提供一种软件升级方法的一实施例的流程示意图。
在一实施例中,所述软件升级方法包括:
步骤S10,主芯片在接收到主机发送的新版软件数据时,将接收到的所述新版软件数据写入备份程序区;所述备份程序区所在的存储器为非易失性存储器;
在本发明中,主芯片支持对flash的读写操作,可通过外部接口获取主机(外部设备)发送的新版本软件数据进行烧录。主芯片的接口是与主机进行数据交换的通道,可以包括但不限于USB、UART、CAN和以太网等主芯片支持的可进行软件升级的接口。外部设备通过接口与主芯片进行通讯连接,可以为进行请求升级的设备或被动升级的主芯片的下一级子部件。主芯片内部划分为多个扇区,用于软件数据的存储,在本实施例中,主芯片进行操作的flash包括备份程序区,用于临时存储所接受到外部设备发送的新版软件。开始升级后,主芯片首先对外部设备所发送的新版软件进行接收,并将所接收到的新版软件写入flash的备份程序区。备份程序区用于接收和下载新版本软件数据,与正在运行的当前版本软件数据的其他区同时运行,当下载新版软件数据的过程中出现丢包、下载失败的情况,由于新版软件数据所下载的空间属于区别于当前版软件间数据的备份程序区,所以不会对当前版本软件数据的运行造成影响。
步骤S20,在接收到所述新版软件数据的所有数据后,所述主芯片重新启动;
步骤S30,在重启后,所述主芯片采用所述备份程序区的新版软件数据替换应用程序区的旧版本软件数据,以对旧版本软件升级。
主芯片所控制的flash划分为多个区域,包括应用程序区、备份程序区和bootloader等,其中应用程序区,用于保存原有的旧版本软件的bin文件,备份程序区用于保存新收到的新版软件的bin文件,而bootloader负责加载和引导,即复制新版软件替换旧版本软件通过bootloader完成的。在应用程序在运行过程中,主芯片接收到升级命令,会将新版本软件数据,逐条写入到备份程序区的flash,此时应用程序区内的旧版本软件保持正常运行不需要进行停机操作,加载完成后,主芯片进行系统复位,重启进入bootloader;bootloader校验备份程序区与应用程序区的新版软件和旧版本软件,当校验通过后,此时,由于刚刚结束对主芯片的升级和加载,可获知备份程序区的新版软件是相对于旧版本软件的新版,bootloader将备份程序区的新版软件复制到应用程序区,替代旧版本软件,开始运行新版软件完成新版本的激活。如果加载过程中,出现掉电复位情况,导致加载的数据异常,bootloader将应用程序复制至此区域,保持原有版本软件数据的运行。
在本实施例中,升级时将需要升级的新版软件下载到主芯片的程序备份区内,下载过程中如果出错或丢包仍然可以运行旧版本软件数据,在接收到新版软件数据的所有数据后,再将备份程序区的新版软件数据替换应用程序区的旧版本软件数据,从而保证了升级过程的稳定可靠,避免了现有固件升级方法均需重启后,边下载新版本软件数据边采用下载的新版本软件数据替换主芯片中的旧版本软件数据,在升级出错导致升级失败时不能够恢复主芯片中的旧版本软件数据同时新版本软件又未升级成功,导致软件无法运行,特别是升级系统软件时容易导致系统崩溃的问题。
参照图3,图3为本发明软件升级方法的第二实施例流程示意图。
基于上述一实施例,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,所述软件升级方法还包括:
步骤S40,向主机反馈与所接收到的新版软件数据相对应的帧号信息;
其中,所述主机依次发送新版本软件数据的每一帧数据以及对应的帧号信息,并在发送每一帧新版软件数据后接收所述主芯片反馈的帧号信息;在接收到所述帧号信息后,所述主机判断接收到的帧号信息与已发送的最后一帧新版软件数据的帧号信息是否一致;若是,则向所述主芯片发送下一帧新版软件数据,直至发送完所述新版本软件数据的所有数据;若否或所述主芯片无响应时,重新发送所述新版本软件数据,直至达到重发极限次数时终止升级。
开始升级后,主机开始向主芯片逐帧发送新版软件,在主芯片接收到主机逐帧发送的新版软件时,每获取一帧新版软件,即向主机返回与所获取的此帧新版软件相对应的帧号信息,提示主机此帧数据已经收到,以便主机进行对主芯片获取到的此帧的新版软件的帧号信息进行确认。在主机获取到主芯片发送的帧号信息后,将该帧号信息与向主芯片发送的新版软件的帧号信息进行比对,判断二者是否一致,如果主机判断主芯片返回的帧号信息与主机发送的此帧新版软件的帧号信息一致,则可继续向主芯片发送下一帧的新版软件,并将此帧的新版软件写入备份程序区。如果主机判断二者不一致或未收到主芯片发送的帧号信息,则可以启动重发机制,重复进行对主芯片进行此帧新版软件的发送并对主芯片返回的帧号信息的接收,以及对帧号信息是否一致的判断过程,当多次出现无应答的情况以至于重复发送达到一定的预设极限次数仍然无正常相应时,判定升级异常,终止升级。
在本实施例中,通过主机对主芯片返回的帧号信息与所发送的新版软件对应的帧号信息进行对比,通过判断二者是否一致,确认主机端发送的此帧新版软件与主芯片端接收到的新版软件相同,从而确认主芯片接收的此帧新版软件的正确性,当判断二者相同,则向主芯片发送下一帧数据,如二者不同则判断升级异常,启动重发机制或退出升级。主机根据帧号信息的比对结果判断是否发送下一帧数据,提高了数据在传输过程中的准确性。
参照图4,图4为本发明软件升级方法的第三实施例的流程示意图。
基于上述的二实施例,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,还包括:
步骤S50,所述主芯片判断当前接收到的新版软件数据的帧号信息与接收到的前一帧新版软件数据的帧号信息是否相差1;
在主芯片接收到一帧的主机发送的新版软件后,随即对所接收到的此帧的新版软件的帧号信息进行确认,将此帧新版软件的帧号信息与所接收到的前一帧的新版软件的帧号信息进行比对,判断是否与前一帧新版软件的帧号信息相差为1,通过对帧号信息的差额的判断,确认主芯片在接收新版软件的过程中是否丢包,接收数据是否完整。
若是,则执行所述向主机返回与所获取的此帧新版软件数据相对应的帧号信息的步骤。
步骤S60,若否,则向所述主机发送升级异常指令,以供所述主机在接收到所述升级异常指令时,重新发送所述新版软件数据或停止发送所述新版软件数据;
帧号信息为从0开始,每一帧的软件数据则在前一帧的帧号信息基础上增加1。需要说明的是,帧号信息×帧长度即为每一帧数据应该写入的地址。通过判断接收到的新版软件的帧号信息是否依次加1,确认主机逐帧发送的新版软件是否完整,中间有无丢包现象。主芯片在逐条对接收到的新版软件写入备份程序区时,如果中间某一帧数据检测到编号缺失,则主芯片认定通信丢帧,进而向主机返回异常数据,终止升级。通过对帧号信息的核对,从而确认所接收的数据的连续和完整,当出现数据丢包、接受数据异常时,在保持原有的旧版本软件正常运行的基础上,进行中止升级或进行重新获取,保证了系统在升级过程中的稳定性。
参照图5,图5为软件升级方法的四实施例的流程示意图。
基于上述一实施例,所述主芯片重新启动之前,所述软件升级方法还包括:
步骤S70,在接收到所述新版软件数据的所有数据后,所述主芯片获取所述主机发送的升级结束指令中包含的第一校验结果,并对所述备份程序区中写入的所述新版软件数据进行校验,生成第二校验结果,其中,在接收到所述主机发送的升级结束指令时,判定接收到所述新版软件数据的所有数据;
在升级过程中,当主机端的新版软件发送完成后,主机向主芯片发送升级结束指令,告知主芯片升级完成。其中,升级结束指令包括主机对新版软件进行CRC校验的第一校验结果,将此校验结果向主芯片发送,以便于主芯片对该校验结果进行进一步的校验。主芯片接收到升级结束指令后,根据新版软件的大小对新版软件进行CRC32和CRC16校验,并将校验结果写到flash扇区末尾的程序信息区,从而生成了主芯片端对所获取到的新版软件的第二校验结果。
步骤S80,在所述第一校验结果与第二校验结果一致时,执行所述主芯片进行重新启动的步骤。
在主机向主芯片对新版软件的发送完成后,主芯片对已接收到的新版软件进行的CRC校验结果与主机对发送的新版软件的CRC校验结果进行对比,通过校验结果的比对判断主芯片接收数据是否异常。通过比对主机和主芯片分别对新版软件的校验结果的异同,从而判断主芯片所接收到的新版软件与主机发送的新版软件的一致性,进一步保证了主芯片在升级过程中的接收数据的正确和完整。此外,如果第一校验结果与第二校验结果不一致,则可进行向所述主机发送升级异常指令,以供主机向所述主芯片重新发送所述新版软件的步骤。
参照图6,图6软件升级方法的五实施例的流程示意图。
基于上述的一实施例,所述软件升级方法还包括:
步骤S90,在接收到主机发送的升级指令时,所述主芯片获取所述升级请求信息中的版本信息;
步骤S100,在所述升级请求信息中的版本信息与主芯片中运行的软件的版本信息不同时,向所述主机发送响应信息,以供所述主机根据接收到的所述响应信息向所述主芯片发送所述新版本软件数据。
当有升级需求时,主机向主芯片发送升级请求信息,进行升级请求。其中,升级请求信息包括新版软件的程序名称、版本号等新版软件版本信息。主芯片在接收到升级请求信息后,读取程序信息区的当期前版本软件数据的版本信息(0x0003ffe0ul地址),将所接收到的升级请求信息中的新版软件的版本信息与当前软件数据的版本信息进行对比,从而判断主机的新版软件的版本是否比当前软件数据的版本新。如果主芯片判断升级请求信息中的版本信息与当前软件版本信息不同,则判定可以进行升级,向主机发送启动升级的应答提示主机可以进行进一步的升级;如果版本信息相同,则判定主机端的新版软件与主芯片的旧版本软件版本相同,判定不需要进行升级,向主机返回无需升级的反馈信息;进而主机根据接收到的反馈信息进行判断是否进行升级,如果接收到启动升级应答,则开始进行升级,如果接收到无需升级的反馈信息,则不进行升级。此外,因为程序的版本信息保存在程序信息区,主机可随时向主芯片请求查询当前版本软件信息的版本信息,而主芯片读取flash信息后向主机回复反馈信息,随时根据版本信息判断是否新版软件的版本是否高于旧版本软件,如果判定新版软件的版本高于旧版本软件的版本,则立即进行下一步的升级过程。
此外,在主芯片确认新版软件的版本信息与旧版本软件的版本信息不同后,可通过主机向主芯片发送是否通过远程进行升级的判定。如果使用烧录器对主芯片进行烧录,则只能对应用程序区进行烧录。进而在应用程序区和备份程序区都校验通过后,此时若检测到是否升级的提示指令,且地址为0时,则判定应用程序区为新版本软件数据,而备份程序区为旧版本软件数据。如果是通过远程升级的方式对主芯片进行升级,在升级完成的时候会将远程升级的提示指令写入非零数据,从而使芯片复位后进入bootloader,当应用程序区和备份程序区都校验通过后,由于远程升级的提示指令是非零,就会将备份程序区复制到应用程序区,并把是否升级的提示指令这个地址清零。
在本实施例中,通过比较对新版软件的版本信息与旧版本软件的版本信息是否相同,判断新版软件的版本是否比旧版本软件的版本新,进而决定是否进行升级。主机随时对主芯片的版本信息进行查询和确认,可使主芯片端的旧版本软件在主机的具有版本高于旧版本软件的新版软件版时,立即进行升级。保证了主芯片端的旧版本软件即时进行更新升级,提高升级效率。
参照图7,图7为本发明软件升级方法的六实施例的流程示意图。
基于上述的五实施例,所述向所述主机发送启动升级应答,以供所述主机向所述主芯片发送新版软件的步骤之后,所述软件升级方法还包括:
步骤S110,所述主芯片在接收到所述主机发送的启动升级指令时,获取所述启动升级指令中包含的新版软件数据的占用空间大小信息,其中,所述主机在接收到所述响应信息时,向所述主芯片发送占用空间大小信息;
当主机接收到主芯片可以进行升级的启动升级应答后,主机随即向主芯片发送启动升级的指令。其中,启动升级指令包含与新版软件相对应的新版软件的数据包的占用空间大小信息、以及其他通讯协定等所有与新版软件相关的特征信息。
步骤S120,所述主芯片擦除所述备份程序区中的对应存储空间的扇区,并向所述主机反馈升级应答信息,以供所述主机在接收到所述升级应答信息后,向所述主芯片发送所述新版本软件数据。
主芯片在接收到启动升级指令后,确认其中与新版软件相对应的占用空间大小信息,即确认即将升级所需要的新版软件的数据包的大小,以及其他通讯协议等特征信息,对以上信息进行确认后,根据与新版软件相对应的占用空间大小信息进行进一步的CRC校验;主芯片擦除备份程序区相应的存储区域的扇区。主芯片内部分为多个扇区,芯片本身的库文件会提供扇区擦除API(应用程序接口)和全芯片参数。在对扇区的擦除过程中,主芯片将备份程序区擦除,flash变为空,之后即可逐条按地址写入新程序。此外,获取新版本程序大小的目的主要是用于对新版本程序进行crc校验,crc校验的传入参数为程序的起始地址和大小两个参数,据此可以算出crc校验结果。例如当主芯片接收到启动升级指令后,确认需要进行升级的新版软件的特征信息,进而确认新版软件所需要占用的空间为150k,而备份程序区的大小为256k,则可进行升级,进而擦除备份程序区,以便预留出备份程序区内的足够空间进行升级。
在本实施例中,通过主芯片对于将要进行升级的新版软件的占用空间大小信息等特征信息进行确认,进而根据占用空间大小信息判断待写入新版软件的备份程序区空间是否满足升级的需求,进一步的根据特征信息擦除备份程序区,从而为升级预留写入空间。升级前进行写入备份程序区空间大小的确认,为主芯片进一步进行升级的稳定提供了保障,避免了升级过程中由于备份程序区空间不足导致的升级失败或系统崩溃。
参照图8,图8为本发明软件升级方法的七实施例的流程示意图。
基于上述的一实施例,所述升级方法还包括:
步骤S130,所述主芯片在接收所述主机发送的软件版本信息的查询指令时,确认所述查询请求对应的软件的版本信息并将所述版本信息发送至所述主机;
其中,在所述主机接收到所述旧版本软件的版本信息后,判断主机中软件的版本信息是否与接收到的版本信息不同;若是,则向所述主芯片发送所述新版软件数据。
在主机向主芯片发送升级请求信息之前,主机需要对主芯片的软件版本进行查询,通过确认主芯片的当前软件版本信息,从而判断主芯片是否需要进行进一步的升级。主芯片接收到主机发送的查询请求信息后,根据查询请求信息,对程序信息区内保存的当前软件版本信息进行获取,并将获取到的当前软件版本信息向主机发送,主机在接收到主芯片所发送的与旧版本软件相对应的当前软件版本信息后,对当前软件版本信息进行确认,在新版软件信息的版本与当前软件版本不同时,则判断可进行升级,即可向主芯片发送升级请求信息。此外,主机对主芯片的当前软件版本信息的查询,可在升级前后任意时刻随时进行查询请求,例如,每间隔一段时间即进行一次对当前软件版本信息的查询,如果确认新版软件的版本与当前软件版本信息不同,则即可进行升级并向主芯片发送升级请求信息。通过主机对主芯片随时进行版本信息的查询,可使主芯片随时进行即时升级过程,即只要出现版本不同的情况,主机在查询后立即可进行升级,提高了升级的效率和时效性。
此外,本发明还提供一种软件升级装置,所述软件升级装置包括存储器、网络接口、通信总线、主芯片及存储在所述存储器上并可在所述主芯片1001上运行的软件数据、传输程序和软件升级程序,所述软件升级程序被所述主芯片执行时实现如下操作:
主芯片在接收到主机发送的新版软件数据时,将接收到的所述新版软件数据写入备份程序区;所述备份程序区所在的存储器为非易失性存储器;
在接收到所述新版软件数据的所有数据后,所述主芯片重新启动;
在重启后,所述主芯片采用所述备份程序区的新版软件数据替换应用程序区的旧版本软件数据,以对旧版本软件升级。
进一步地,所述软件升级程序被主芯片执行时还实现如下操作:
优选地,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,所述软件升级方法还包括:
向主机反馈与所接收到的新版软件数据相对应的帧号信息;
其中,所述主机依次发送新版本软件数据的每一帧数据以及对应的帧号信息,并在发送每一帧新版软件数据后接收所述主芯片反馈的帧号信息;在接收到所述帧号信息后,所述主机判断接收到的帧号信息与已发送的最后一帧新版软件数据的帧号信息是否一致;若是,则向所述主芯片发送下一帧新版软件数据,直至发送完所述新版本软件数据的所有数据;若否或所述主芯片无响应时,重新发送所述新版本软件数据,直至达到重发极限次数时终止升级。
优选地,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,还包括:
所述主芯片判断当前接收到的新版软件数据的帧号信息与接收到的前一帧新版软件数据的帧号信息是否相差1;
若是,则执行所述向主机返回与所获取的此帧新版软件数据相对应的帧号信息的步骤;
若否,则向所述主机发送升级异常指令,以供所述主机在接收到所述升级异常指令时,重新发送所述新版软件数据或停止发送所述新版软件数据。
优选地,所述主芯片重新启动之前,所述软件升级方法还包括:
在接收到所述新版软件数据的所有数据后,所述主芯片获取所述主机发送的升级结束指令中包含的第一校验结果,并对所述备份程序区中写入的所述新版软件数据进行校验,生成第二校验结果,其中,在接收到所述主机发送的升级结束指令时,判定接收到所述新版软件数据的所有数据;
在所述第一校验结果与第二校验结果一致时,执行所述主芯片进行重新启动的步骤。
优选地,所述软件升级方法还包括:
在接收到主机发送的升级指令时,所述主芯片获取所述升级请求信息中的版本信息;
在所述升级请求信息中的版本信息与主芯片中运行的软件的版本信息不同时,向所述主机发送响应信息,以供所述主机根据接收到的所述响应信息向所述主芯片发送所述新版本软件数据。
优选地,所述向所述主机发送响应信息的步骤之后,所述软件升级方法还包括:
所述主芯片在接收到所述主机发送的启动升级指令时,获取所述启动升级指令中包含的新版软件数据的占用空间大小信息,其中,所述主机在接收到所述响应信息时,向所述主芯片发送占用空间大小信息;
所述主芯片擦除所述备份程序区中的对应存储空间的扇区,并向所述主机反馈升级应答信息,以供所述主机在接收到所述升级应答信息后,向所述主芯片发送所述新版本软件数据。
优选地,所述升级管理方法还包括:
所述主芯片在接收所述主机发送的软件版本信息的查询指令时,确认所述查询请求对应的软件的版本信息并将所述版本信息发送至所述主机;
其中,在所述主机接收到所述旧版本软件的版本信息后,判断主机中软件的版本信息是否与接收到的版本信息不同;若是,则向所述主芯片发送所述新版软件数据。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有软件升级程序,所述软件升级程序被主芯片执行时实现如下操作:
主芯片在接收到主机发送的新版软件数据时,将接收到的所述新版软件数据写入备份程序区;所述备份程序区所在的存储器为非易失性存储器;
在接收到所述新版软件数据的所有数据后,所述主芯片重新启动;
在重启后,所述主芯片采用所述备份程序区的新版软件数据替换应用程序区的旧版本软件数据,以对旧版本软件升级。
进一步地,所述软件升级程序被主芯片执行时还实现如下操作:
优选地,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,所述软件升级方法还包括:
向主机反馈与所接收到的新版软件数据相对应的帧号信息;
其中,所述主机依次发送新版本软件数据的每一帧数据以及对应的帧号信息,并在发送每一帧新版软件数据后接收所述主芯片反馈的帧号信息;在接收到所述帧号信息后,所述主机判断接收到的帧号信息与已发送的最后一帧新版软件数据的帧号信息是否一致;若是,则向所述主芯片发送下一帧新版软件数据,直至发送完所述新版本软件数据的所有数据;若否或所述主芯片无响应时,重新发送所述新版本软件数据,直至达到重发极限次数时终止升级。
优选地,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,还包括:
所述主芯片判断当前接收到的新版软件数据的帧号信息与接收到的前一帧新版软件数据的帧号信息是否相差1;
若是,则执行所述向主机返回与所获取的此帧新版软件数据相对应的帧号信息的步骤;
若否,则向所述主机发送升级异常指令,以供所述主机在接收到所述升级异常指令时,重新发送所述新版软件数据或停止发送所述新版软件数据。
优选地,所述主芯片重新启动之前,所述软件升级方法还包括:
在接收到所述新版软件数据的所有数据后,所述主芯片获取所述主机发送的升级结束指令中包含的第一校验结果,并对所述备份程序区中写入的所述新版软件数据进行校验,生成第二校验结果,其中,在接收到所述主机发送的升级结束指令时,判定接收到所述新版软件数据的所有数据;
在所述第一校验结果与第二校验结果一致时,执行所述主芯片进行重新启动的步骤。
优选地,所述软件升级方法还包括:
在接收到主机发送的升级指令时,所述主芯片获取所述升级请求信息中的版本信息;
在所述升级请求信息中的版本信息与主芯片中运行的软件的版本信息不同时,向所述主机发送响应信息,以供所述主机根据接收到的所述响应信息向所述主芯片发送所述新版本软件数据。
优选地,所述向所述主机发送响应信息的步骤之后,所述软件升级方法还包括:
所述主芯片在接收到所述主机发送的启动升级指令时,获取所述启动升级指令中包含的新版软件数据的占用空间大小信息,其中,所述主机在接收到所述响应信息时,向所述主芯片发送占用空间大小信息;
所述主芯片擦除所述备份程序区中的对应存储空间的扇区,并向所述主机反馈升级应答信息,以供所述主机在接收到所述升级应答信息后,向所述主芯片发送所述新版本软件数据。
优选地,所述升级管理方法还包括:
所述主芯片在接收所述主机发送的软件版本信息的查询指令时,确认所述查询请求对应的软件的版本信息并将所述版本信息发送至所述主机;
其中,在所述主机接收到所述旧版本软件的版本信息后,判断主机中软件的版本信息是否与接收到的版本信息不同;若是,则向所述主芯片发送所述新版软件数据。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种软件升级方法,其特征在于,包括以下步骤:
主芯片在接收到主机发送的新版软件数据时,将接收到的所述新版软件数据写入备份程序区;所述备份程序区所在的存储器为非易失性存储器;
在接收到所述新版软件数据的所有数据后,所述主芯片重新启动;
在重启后,所述主芯片采用所述备份程序区的新版软件数据替换应用程序区的旧版本软件数据,以对旧版本软件升级。
2.如权利要求1所述软件升级方法,其特征在于,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,所述软件升级方法还包括:
向主机反馈与所接收到的新版软件数据相对应的帧号信息;
其中,所述主机依次发送新版本软件数据的每一帧数据以及对应的帧号信息,并在发送每一帧新版软件数据后接收所述主芯片反馈的帧号信息;在接收到所述帧号信息后,所述主机判断接收到的帧号信息与已发送的最后一帧新版软件数据的帧号信息是否一致;若是,则向所述主芯片发送下一帧新版软件数据,直至发送完所述新版本软件数据的所有数据;若否或所述主芯片无响应时,重新发送所述新版本软件数据,直至达到重发极限次数时终止升级。
3.如权利要求2所述软件升级方法,其特征在于,所述将接收到的所述新版软件数据写入备份程序区的步骤之后,还包括:
所述主芯片判断当前接收到的新版软件数据的帧号信息与接收到的前一帧新版软件数据的帧号信息是否相差1;
若是,则执行所述向主机返回与所获取的此帧新版软件数据相对应的帧号信息的步骤;
若否,则向所述主机发送升级异常指令,以供所述主机在接收到所述升级异常指令时,重新发送所述新版软件数据或停止发送所述新版软件数据。
4.如权利要求1-3任一项所述软件升级方法,其特征在于,所述主芯片重新启动之前,所述软件升级方法还包括:
在接收到所述新版软件数据的所有数据后,所述主芯片获取所述主机发送的升级结束指令中包含的第一校验结果,并对所述备份程序区中写入的所述新版软件数据进行校验,生成第二校验结果,其中,在接收到所述主机发送的升级结束指令时,判定接收到所述新版软件数据的所有数据;
在所述第一校验结果与第二校验结果一致时,执行所述主芯片进行重新启动的步骤。
5.如权利要求1-3任一项所述软件升级方法,其特征在于,所述软件升级方法还包括:
在接收到主机发送的升级指令时,所述主芯片获取所述升级请求信息中的版本信息;
在所述升级请求信息中的版本信息与主芯片中运行的软件的版本信息不同时,向所述主机发送响应信息,以供所述主机根据接收到的所述响应信息向所述主芯片发送所述新版本软件数据。
6.如权利要求5所述软件升级方法,其特征在于,所述向所述主机发送响应信息的步骤之后,所述软件升级方法还包括:
所述主芯片在接收到所述主机发送的启动升级指令时,获取所述启动升级指令中包含的新版软件数据的占用空间大小信息,其中,所述主机在接收到所述响应信息时,向所述主芯片发送占用空间大小信息;
所述主芯片擦除所述备份程序区中的对应存储空间的扇区,并向所述主机反馈升级应答信息,以供所述主机在接收到所述升级应答信息后,向所述主芯片发送所述新版本软件数据。
7.如权利要求1-3任一项所述软件升级方法,其特征在于,所述升级方法还包括:
所述主芯片在接收所述主机发送的软件版本信息的查询指令时,确认所述查询请求对应的软件的版本信息并将所述版本信息发送至所述主机;
其中,在所述主机接收到所述旧版本软件的版本信息后,判断主机中软件的版本信息是否与接收到的版本信息不同;若是,则向所述主芯片发送所述新版软件数据。
8.一种软件升级装置,其特征在于,所述软件升级装置包括存储器、网络接口、通信总线、主芯片及存储在所述存储器上并可在所述主芯片上运行的软件数据、传输程序和软件升级程序,所述软件升级程序被所述主芯片执行时实现如权利要求1至7中任一项所述的软件升级方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有软件升级程序,所述软件升级程序被主芯片执行时实现如权利要求1至7中任一项所述的软件升级方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710347222.4A CN107179909B (zh) | 2017-05-16 | 2017-05-16 | 软件升级方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710347222.4A CN107179909B (zh) | 2017-05-16 | 2017-05-16 | 软件升级方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107179909A true CN107179909A (zh) | 2017-09-19 |
CN107179909B CN107179909B (zh) | 2021-04-27 |
Family
ID=59831526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710347222.4A Active CN107179909B (zh) | 2017-05-16 | 2017-05-16 | 软件升级方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107179909B (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562493A (zh) * | 2017-10-24 | 2018-01-09 | 厦门市福工动力技术有限公司 | 芯片在线升级方法及计算机可读存储介质 |
CN108874422A (zh) * | 2018-06-15 | 2018-11-23 | 合肥美的电冰箱有限公司 | 一种冰箱电控板的软件在线升级方法、冰箱电控板和冰箱 |
CN109491683A (zh) * | 2018-10-25 | 2019-03-19 | 陕西航空电气有限责任公司 | 一种用于航空电源系统发电机控制器软件在线加载方法 |
CN109800565A (zh) * | 2017-11-16 | 2019-05-24 | 深圳市优必选科技有限公司 | 软件升级方法及终端设备 |
CN110058865A (zh) * | 2019-03-07 | 2019-07-26 | 埃斯倍风电科技(青岛)有限公司 | 一种单片机的程序烧写及运行方法 |
CN110134415A (zh) * | 2019-04-12 | 2019-08-16 | 深圳市致宸信息科技有限公司 | 一种控制器及其软件升级方法和装置 |
CN110780910A (zh) * | 2019-10-29 | 2020-02-11 | 苏州长光华医生物医学工程有限公司 | 下位机软件更新方法及系统、计算机可读存储介质 |
CN110874237A (zh) * | 2019-12-30 | 2020-03-10 | 深圳市英博超算科技有限公司 | 软件升级方法、装置、终端以及可读存储介质 |
CN111211921A (zh) * | 2019-12-26 | 2020-05-29 | 深圳市深蓝电子股份有限公司 | 模块机组的远程升级方法、系统及计算机可读存储介质 |
WO2020113451A1 (zh) * | 2018-12-05 | 2020-06-11 | 北京比特大陆科技有限公司 | 程序烧写方法、装置、设备、存储介质及程序产品 |
CN111679981A (zh) * | 2020-06-05 | 2020-09-18 | 广州探途网络技术有限公司 | 应用软件发布方法、系统及电子设备 |
CN111770169A (zh) * | 2020-06-29 | 2020-10-13 | 百度在线网络技术(北京)有限公司 | 设备固件升级的方法、装置、设备以及存储介质 |
CN112181466A (zh) * | 2020-09-08 | 2021-01-05 | 上海深聪半导体有限责任公司 | 一种语音空调固件云端升级方法及系统 |
CN112254284A (zh) * | 2020-09-02 | 2021-01-22 | 海信(山东)空调有限公司 | 一种空调及空调远程升级方法 |
CN112685053A (zh) * | 2019-10-18 | 2021-04-20 | 航天科工惯性技术有限公司 | 单片机程序远程升级控制方法 |
CN112882731A (zh) * | 2021-01-08 | 2021-06-01 | 北京锦鸿希电信息技术股份有限公司 | 嵌入式软件升级方法和装置 |
CN113094211A (zh) * | 2021-04-23 | 2021-07-09 | 北京天空卫士网络安全技术有限公司 | 一种备份数据处理的方法和装置 |
CN113157295A (zh) * | 2021-04-25 | 2021-07-23 | 华帝股份有限公司 | 一种用于集排烟机的自动升级方法及集排烟机系统 |
CN114047715A (zh) * | 2021-09-30 | 2022-02-15 | 黄冈普赫氢能商用车有限公司 | Ecu应用层软件更新时外围器件的控制方法和存储介质 |
CN114978898A (zh) * | 2022-05-12 | 2022-08-30 | 泽景(西安)汽车电子有限责任公司 | 数据传输控制方法、装置、抬头显示器和存储介质 |
CN116360831A (zh) * | 2023-05-31 | 2023-06-30 | 中国第一汽车股份有限公司 | 一种应用程序升级方法、装置、电子设备及存储介质 |
CN113094211B (zh) * | 2021-04-23 | 2024-04-23 | 北京天空卫士网络安全技术有限公司 | 一种备份数据处理的方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101196823A (zh) * | 2007-12-24 | 2008-06-11 | 杭州华三通信技术有限公司 | 一种开放应用架构中软件在线升级的方法、系统及设备 |
CN105978937A (zh) * | 2016-04-26 | 2016-09-28 | 江苏惠通集团有限责任公司 | 一种蓝牙从设备及其升级方法 |
CN106648726A (zh) * | 2016-09-13 | 2017-05-10 | 武汉海翼科技有限公司 | 一种变风量空调末端设备软件在线升级方法 |
-
2017
- 2017-05-16 CN CN201710347222.4A patent/CN107179909B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101196823A (zh) * | 2007-12-24 | 2008-06-11 | 杭州华三通信技术有限公司 | 一种开放应用架构中软件在线升级的方法、系统及设备 |
CN105978937A (zh) * | 2016-04-26 | 2016-09-28 | 江苏惠通集团有限责任公司 | 一种蓝牙从设备及其升级方法 |
CN106648726A (zh) * | 2016-09-13 | 2017-05-10 | 武汉海翼科技有限公司 | 一种变风量空调末端设备软件在线升级方法 |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562493A (zh) * | 2017-10-24 | 2018-01-09 | 厦门市福工动力技术有限公司 | 芯片在线升级方法及计算机可读存储介质 |
CN109800565A (zh) * | 2017-11-16 | 2019-05-24 | 深圳市优必选科技有限公司 | 软件升级方法及终端设备 |
CN108874422A (zh) * | 2018-06-15 | 2018-11-23 | 合肥美的电冰箱有限公司 | 一种冰箱电控板的软件在线升级方法、冰箱电控板和冰箱 |
CN108874422B (zh) * | 2018-06-15 | 2022-03-01 | 合肥美的电冰箱有限公司 | 一种冰箱电控板的软件在线升级方法、冰箱电控板和冰箱 |
CN109491683A (zh) * | 2018-10-25 | 2019-03-19 | 陕西航空电气有限责任公司 | 一种用于航空电源系统发电机控制器软件在线加载方法 |
WO2020113451A1 (zh) * | 2018-12-05 | 2020-06-11 | 北京比特大陆科技有限公司 | 程序烧写方法、装置、设备、存储介质及程序产品 |
CN110058865A (zh) * | 2019-03-07 | 2019-07-26 | 埃斯倍风电科技(青岛)有限公司 | 一种单片机的程序烧写及运行方法 |
CN110134415A (zh) * | 2019-04-12 | 2019-08-16 | 深圳市致宸信息科技有限公司 | 一种控制器及其软件升级方法和装置 |
CN112685053A (zh) * | 2019-10-18 | 2021-04-20 | 航天科工惯性技术有限公司 | 单片机程序远程升级控制方法 |
CN110780910A (zh) * | 2019-10-29 | 2020-02-11 | 苏州长光华医生物医学工程有限公司 | 下位机软件更新方法及系统、计算机可读存储介质 |
CN111211921A (zh) * | 2019-12-26 | 2020-05-29 | 深圳市深蓝电子股份有限公司 | 模块机组的远程升级方法、系统及计算机可读存储介质 |
CN110874237A (zh) * | 2019-12-30 | 2020-03-10 | 深圳市英博超算科技有限公司 | 软件升级方法、装置、终端以及可读存储介质 |
CN111679981B (zh) * | 2020-06-05 | 2023-08-29 | 广州探途网络技术有限公司 | 应用软件发布方法、系统及电子设备 |
CN111679981A (zh) * | 2020-06-05 | 2020-09-18 | 广州探途网络技术有限公司 | 应用软件发布方法、系统及电子设备 |
CN111770169A (zh) * | 2020-06-29 | 2020-10-13 | 百度在线网络技术(北京)有限公司 | 设备固件升级的方法、装置、设备以及存储介质 |
CN111770169B (zh) * | 2020-06-29 | 2023-05-09 | 百度在线网络技术(北京)有限公司 | 设备固件升级的方法、装置、设备以及存储介质 |
CN112254284A (zh) * | 2020-09-02 | 2021-01-22 | 海信(山东)空调有限公司 | 一种空调及空调远程升级方法 |
CN112181466B (zh) * | 2020-09-08 | 2024-04-16 | 深聪半导体(江苏)有限公司 | 一种语音空调固件云端升级方法及系统 |
CN112181466A (zh) * | 2020-09-08 | 2021-01-05 | 上海深聪半导体有限责任公司 | 一种语音空调固件云端升级方法及系统 |
CN112882731A (zh) * | 2021-01-08 | 2021-06-01 | 北京锦鸿希电信息技术股份有限公司 | 嵌入式软件升级方法和装置 |
CN113094211A (zh) * | 2021-04-23 | 2021-07-09 | 北京天空卫士网络安全技术有限公司 | 一种备份数据处理的方法和装置 |
CN113094211B (zh) * | 2021-04-23 | 2024-04-23 | 北京天空卫士网络安全技术有限公司 | 一种备份数据处理的方法和装置 |
CN113157295A (zh) * | 2021-04-25 | 2021-07-23 | 华帝股份有限公司 | 一种用于集排烟机的自动升级方法及集排烟机系统 |
CN114047715B (zh) * | 2021-09-30 | 2023-11-03 | 黄冈普赫氢能商用车有限公司 | Ecu应用层软件更新时外围器件的控制方法和存储介质 |
CN114047715A (zh) * | 2021-09-30 | 2022-02-15 | 黄冈普赫氢能商用车有限公司 | Ecu应用层软件更新时外围器件的控制方法和存储介质 |
CN114978898B (zh) * | 2022-05-12 | 2024-04-12 | 泽景(西安)汽车电子有限责任公司 | 数据传输控制方法、装置、抬头显示器和存储介质 |
CN114978898A (zh) * | 2022-05-12 | 2022-08-30 | 泽景(西安)汽车电子有限责任公司 | 数据传输控制方法、装置、抬头显示器和存储介质 |
CN116360831A (zh) * | 2023-05-31 | 2023-06-30 | 中国第一汽车股份有限公司 | 一种应用程序升级方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107179909B (zh) | 2021-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107179909A (zh) | 软件升级方法、装置及计算机可读存储介质 | |
CN110096294B (zh) | 一种可任意断点无线升级mcu应用程序的方法 | |
US20110004871A1 (en) | Embedded electronic device and firmware updating method thereof | |
CN108021410A (zh) | 一种智能家电设备的固件升级方法及系统 | |
CN110730104A (zh) | 一种mesh网络设备的多设备批量固件升级的方法 | |
CN106406935A (zh) | 一种蓝牙芯片ota升级的方法和蓝牙芯片 | |
CN102004657B (zh) | 一种电子设备及其升级方法 | |
CN111813428A (zh) | 终端固件的升级方法、装置、电子设备及存储介质 | |
CN101695162A (zh) | 一种移动终端空中固件升级方法及装置 | |
WO2011006378A1 (zh) | 无线数据卡的升级方法和系统 | |
CN108509215B (zh) | 一种系统软件的更换方法、装置、终端设备及存储介质 | |
CN108170457A (zh) | 固件升级方法、装置及vr头戴式显示器 | |
CN107908417B (zh) | 固件升级方法及电子设备 | |
CN112882734B (zh) | 升级方法及装置、计算机设备和介质 | |
CN101883254A (zh) | 互动电视机顶盒的ip点播载入升级装置及升级方法 | |
WO2011088701A1 (zh) | 一种跨平台版本在线升级的方法及装置 | |
CN112925679A (zh) | 固件升级方法、非易失性存储器、计算机存储介质及终端 | |
WO2017016282A1 (zh) | 软件升级方法及装置、计算机存储介质 | |
CN115840579A (zh) | Fpga远程更新方法、系统、贴片机及存储介质 | |
CN112416411B (zh) | 升级方法及装置、设备端、服务器、计算机可读介质 | |
WO2018049798A1 (zh) | 一种缓存分区重构的方法和装置 | |
WO2024078218A1 (zh) | 系统启动方法及电子设备 | |
US20050010914A1 (en) | Method for upgrading firmware | |
CN109871334B (zh) | 电缆调制解调器及操作方法 | |
CN102169445B (zh) | 一种BootRom的安全升级方法 |
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 |