CN108572839A - 智能冰箱***升级方法、***、智能冰箱和云端服务器 - Google Patents
智能冰箱***升级方法、***、智能冰箱和云端服务器 Download PDFInfo
- Publication number
- CN108572839A CN108572839A CN201810762754.9A CN201810762754A CN108572839A CN 108572839 A CN108572839 A CN 108572839A CN 201810762754 A CN201810762754 A CN 201810762754A CN 108572839 A CN108572839 A CN 108572839A
- Authority
- CN
- China
- Prior art keywords
- upgrade
- sent
- cloud server
- upgrade procedure
- external
- 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
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
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
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
本发明提供了智能冰箱***升级方法、***、智能冰箱和云端服务器,应用于智能冰箱的方法,包括:接收外部云端服务器发送的升级指令;根据运行状态确定是否下载所述升级指令对应的升级程序;如果是,向所述外部云端服务器发送下载请求;接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序;检测存储的所述升级程序是否有效;如果是,执行所述升级程序。本方案能够简化智能冰箱***升级过程。
Description
技术领域
本发明涉及智能家居技术领域,特别涉及智能冰箱***升级方法、***、智能冰箱和云端服务器。
背景技术
伴随着互联网、智能家居的兴起,智能冰箱作为家电领域的重要组成部分,已经成为人们生活中不可缺少的产品。智能冰箱在使用过程中,用户往往能发现其内部***的缺陷,这样智能冰箱就面临着需要升级***的需求。
目前,智能冰箱的***是在单片机上运行的,如需升级***,需要先对智能冰箱进行断电处理,再取下单片机升级***。
综上可见,现有技术需要对智能冰箱进行断电处理才能对***升级,导致智能冰箱***升级过程繁琐。
发明内容
本发明实施例提供了智能冰箱***升级方法、***、智能冰箱和云端服务器,能够简化智能冰箱***升级过程。
第一方面,本发明实施例提供了一种智能冰箱***升级方法,应用于智能冰箱,包括:
接收外部云端服务器发送的升级指令;
根据运行状态确定是否下载所述升级指令对应的升级程序;
如果是,向所述外部云端服务器发送下载请求;
接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序;
检测存储的所述升级程序是否有效;
如果是,执行所述升级程序。
优选地,所述根据运行状态确定是否下载所述升级指令对应的升级程序,包括:
检测运行状态是否为上电状态或复位状态;
如果是,执行所述向所述外部云端服务器发送下载请求;
在所述向所述外部云端服务器发送下载请求之后,进一步包括:
当所述升级程序为所述应用程序时;
通过现有BootLoader程序擦除flash存储区域中,从地址2000H至地址7FFHH内的现有应用程序;
所述接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序,包括:
接收所述外部云端服务器根据所述下载请求发送的所述应用程序;
将所述应用程序从所述地址2000H开始,写入到所述flash存储区域中的应用程序区域内;
所述检测存储的所述升级程序是否有效,包括:
检测写入的所述应用程序是否有效。
优选地,所述接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序,包括:
当所述升级程序为BootLoader程序时,
通过所述现有BootLoader程序将所述BootLoader程序从地址1000H开始,写入到所述flash存储区域中的Boot cluster1区域内;
所述检测存储的所述升级程序是否有效,如果是,执行所述升级程序,包括:
检测写入的所述BootLoader程序是否有效,
如果是,通过所述BootLoader程序擦除所述flash存储区域中,Boot cluster0区域内的所述现有BootLoader程序,并从地址0000H开始移动至所述Boot cluster0区域内。
优选地,在所述接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序之后,进一步包括:
接收所述外部云端服务器发送的原始哈希值;
所述检测存储的所述升级程序是否有效,包括:
S0:对所述升级程序进行哈希计算,获得现有哈希值;
S1:确定所述现有哈希值是否与所述原始哈希值相同,如果是,执行S2,否则,执行S3;
S2:执行所述升级程序;
S3:向所述外部云端服务器发送重新下载请求,并接收所述外部云端服务器根据所述重新下载请求发送的所述升级程序,返回S0。
第二方面,本发明实施例提供了一种智能冰箱***的升级方法,应用于云端服务器,包括:
获取外部智能终端发送的升级指令和所述升级指令对应的升级程序;
将所述升级指令发送给外部智能冰箱;
在接收到所述外部冰箱根据所述升级指令发送的下载请求时,将所述升级程序发送给所述外部智能冰箱。
优选地,在所述将所述升级指令发送给外部智能冰箱之后,进一步包括:
对所述升级程序进行哈希计算,获得原始哈希值;
将获得的所述原始哈希值发送给所述外部智能冰箱。
第三方面,本发明实施例提供了一种智能冰箱,包括:
物联网模块,用于接收外部云端服务器发送的升级指令;当校验模块确定下载所述升级指令对应的所述升级程序时,向所述外部云端服务器发送下载请求;接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序;
所述校验模块,用于根据运行状态确定是否下载所述物联网模块接收的所述升级指令对应的升级程序;
更新模块,用于检测所述物联网模块存储的所述升级程序是否有效;如果是,执行所述升级程序。
优选地,所述校验模块,用于检测运行状态是否为上电状态或复位状态;如果是,擦除现有程序;
所述物联网模块,用于当所述校验模块擦除现有程序时,执行所述向所述外部云端服务器发送下载请求;
所述更新模块,进一步用于将所述升级程序写入到flash区域中,所述升级程序对应的至少一个block块内。
第四方面,本发明实施例提供了一种云端服务器,包括:
服务器处理模块,用于获取外部智能终端发送的升级指令和所述升级指令对应的升级程序;
服务器交互模块,用于将所述服务器处理模块接收的所述升级指令发送给外部智能冰箱;在接收到所述外部冰箱根据所述升级指令发送的下载请求时,将所述升级程序发送给所述外部智能冰箱。
第五方面,本发明实施例提供了一种智能升级管理***,包括:至少一个智能终端、至少一个第三方面所述智能冰箱,以及权第四方面所述的云端服务器,其中,
每一个所述智能冰箱均与所述云端服务器相连;
每一个所述智能终端均与所述云端服务器相连;
所述智能终端,用于接收用户发送的升级指令和所述升级指令对应的升级程序,并将接收的所述升级指令和所述升级程序发送给所述云端服务器。
在本发明实施例中,智能冰箱在接收到外部云端服务器发送的升级指令时,需要先确定智能冰箱的运行状态,当且仅当智能冰箱的运行状态允许时才下载升级程序,而下载升级程序后还需要检测升级程序的有效性,避免在执行升级程序时,因升级程序无效而导致智能冰箱无法正常运行,从而可以使得智能冰箱的***升级更安全可靠。综上可见,智能冰箱在接收到外部云端服务器发送的升级指令时,即可确定运行状态是否允许***升级,当且仅当运行状态允许时即可进行***升级,而无需用户对智能冰箱进行断电处理再进行***升级,因此能够简化智能冰箱***升级的过程。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种智能冰箱***升级方法的流程图;
图2是本发明一实施例提供的另一种智能冰箱***升级方法的流程图;
图3是本发明一实施例提供的一种智能冰箱的结构示意图;
图4是本发明一实施例提供的一种云端服务器的结构示意图;
图5是本发明一实施例提供的一种智能升级管理***的结构示意图;
图6是本发明一实施例提供的另一种智能升级管理***的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种智能冰箱***升级方法,应用于智能冰箱,包括:
步骤101:接收外部云端服务器发送的升级指令;
步骤102:根据运行状态确定是否下载所述升级指令对应的升级程序;
步骤103:如果是,向所述外部云端服务器发送下载请求,接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序;
步骤104:检测存储的所述升级程序是否有效;
步骤105:如果是,执行所述升级程序。
在本发明实施例中,智能冰箱在接收到外部云端服务器发送的升级指令时,需要先确定智能冰箱的运行状态,当且仅当智能冰箱的运行状态允许时才下载升级程序,而下载升级程序后还需要检测升级程序的有效性,避免在执行升级程序时,因升级程序无效而导致智能冰箱无法正常运行,从而可以使得智能冰箱的***升级更安全可靠。综上可见,智能冰箱在接收到外部云端服务器发送的升级指令时,即可确定运行状态是否允许***升级,当且仅当运行状态允许时即可进行***升级,而无需用户对智能冰箱进行断电处理再进行***升级,因此能够简化智能冰箱***升级的过程。
在本发明一实施例中,所述根据运行状态确定是否下载所述升级指令对应的升级程序,包括:
检测运行状态是否为上电状态或复位状态;
如果是,执行所述向所述外部云端服务器发送下载请求;
在所述向所述外部云端服务器发送下载请求之后,进一步包括:
当所述升级程序为所述应用程序时;
通过现有BootLoader程序擦除flash存储区域中,从地址2000H至7FFHH内的现有应用程序;
所述接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序,包括:
接收所述外部云端服务器根据所述下载请求发送的所述应用程序;
将所述应用程序从所述地址2000H开始,写入到所述flash存储区域中的应用程序区域内;
所述检测存储的所述升级程序是否有效,包括:
检测写入的所述应用程序是否有效。
在本发明实施例中,智能冰箱在接收到升级指令时,需要先确定运行状态是否为上电状态或复位状态,如果是上电状态或复位状态时再从外部云端服务器下载升级程序,否则需要维持现有运行,避免在稳定运行时升级***而导致运行异常,从而使得***升级更安全可靠。而智能冰箱的***升级可以是应用程序升级,还可以是BootLoader程序升级,在升级程序为应用程序时,需要通过现有BootLoader程序擦除地址2000H至地址7FFHH内的现有应用程序,以使确定地址2000H至地址7FFHH内为空白区域,有助于将应用程序从地址2000H开始写入该空白区域内。
在本发明一实施例中,所述接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序,包括:
当所述升级程序为BootLoader程序时,
通过所述现有BootLoader程序将所述BootLoader程序从地址1000H开始,写入到所述flash存储区域中的Boot cluster1区域内;
所述检测存储的所述升级程序是否有效,如果是,执行所述升级程序,包括:
检测写入的所述BootLoader程序是否有效,
如果是,通过所述BootLoader程序擦除所述flash存储区域中,Boot cluster0区域内的所述现有BootLoader程序,并从地址0000H开始移动至所述Boot cluster0区域内。
在本发明实施例中,智能冰箱的***升级可以是应用程序升级,还可以是BootLoader程序升级,当升级程序为BootLoader程序时,需要通过现有BootLoader程序将外部云端服务器发送的BootLoader程序,写入到flash存储区域中的Boot cluster1区域内,再对BootLoader程序进行检测,以使确定接收的BootLoader程序的有效性,避免在执行BootLoader程序时,因BootLoader程序无效而导致智能冰箱无法正常运行,从而使得BootLoader程序的升级更安全可靠。当确定BootLoader程序有效时,即可执行该BootLoader程序,即通过BootLoader程序删除flash存储区域中的Boot cluster0区域内的现有BootLoader程序,再移动至Boot cluster0区域内,以便于***再次进行BootLoader程序将新升级的写入至Boot cluster1区域内。
在本发明一实施例中,在所述接收所述外部云端服务器根据所述下载请求发送的所述升级程序之后,进一步包括:
接收所述外部云端服务器发送的原始哈希值;
所述检测所述升级程序是否有效,包括:
S0:对所述升级程序进行哈希计算,获得现有哈希值;
S1:确定所述现有哈希值是否与所述原始哈希值相同,如果是,执行S2,否则,执行S3;
S2:执行所述升级程序;
S3:向所述外部云端服务器发送重新下载请求,并接收所述外部云端服务器根据所述重新下载请求发送的所述升级程序,返回S0。
在本发明实施例中,在接收到外部云端服务器发送的升级程序后,需要确定升级程序的有效性,即将升级程序的现有哈希值与将外部云端服务器发送的原始哈希值进行比较,通过现有哈希值与原始哈希值确定升级程序的完整性和准确性,避免在执行升级程序时,因升级程序异常而导致智能冰箱无法正常运行,从而能够提高智能冰箱***升级的安全性。
如图2所示,本发明实施例提供了一种智能冰箱***的升级方法,应用于云端服务器,包括:
步骤201:获取外部智能终端发送的升级指令和所述升级指令对应的升级程序;
步骤202:将所述升级指令发送给外部智能冰箱;
步骤203:在接收到所述外部冰箱根据所述升级指令发送的下载请求时,将所述升级程序发送给所述外部智能冰箱。
在本发明实施例中,云端服务器在获取到外部智能终端发送的升级指令和升级程序时,不是直接将升级指令和升级程序全部发送给外部智能冰箱,而是仅将升级指令发送给外部智能冰箱,以使外部智能冰箱确定运行状态是否允许下载升级程序,当且仅当在接收到外部智能冰箱方的下载请求时,将升级程序发送给外部智能冰箱,以使外部智能冰箱利用升级程序完成***升级,而无需用户对智能冰箱进行断电处理,再进行***升级,因此能够简化智能冰箱***升级的过程。
在本发明一实施例中,在所述将所述升级指令发送给外部智能冰箱之后,进一步包括:
对所述升级程序进行哈希计算,获得原始哈希值;
将获得的所述原始哈希值发送给所述外部智能冰箱。
在本发明实施例中,为了便于外部智能冰箱确定升级程序的完整性和准确性,需要对升级程序进行哈希计算,确定升级程序的原始哈希值,以使外部智能冰箱根据原始哈希值,确定接收到的升级程序是否与云端服务器发送的升级程序一致,避免智能冰箱在执行异常的升级程序后导致***无法运行。
如图3所示,本发明实施提供了一种智能冰箱,包括:
物联网模块301,用于接收外部云端服务器发送的升级指令;当校验模块302确定下载所述升级指令对应的所述升级程序时,向所述外部云端服务器发送下载请求;接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序;
所述校验模块302,用于根据运行状态确定是否下载所述物联网模块301接收的所述升级指令对应的升级程序;
更新模块303,用于检测所述物联网模块302存储的所述升级程序是否有效;如果是,执行所述升级程序。
在本发明实施例中,物联网模块在接收到外部云端服务器发送的升级指令时,校验模块需要先确定智能冰箱的运行状态,当且仅当智能冰箱的运行状态允许时物联网模块才下载升级程序,而下载升级程序后更新模块还需要检测升级程序的有效性,避免在执行升级程序时,因升级程序无效而导致智能冰箱无法正常运行,从而可以使得智能冰箱的***升级更安全可靠。综上可见,智能冰箱在接收到外部云端服务器发送的升级指令时,即可确定运行状态是否允许***升级,当且仅当运行状态允许时即可进行***升级,而无需用户对智能冰箱进行断电处理,再进行***升级,因此能够简化智能冰箱***升级的过程。
在本发明一实施例中,所述校验模块,用于检测运行状态是否为上电状态或复位状态;如果是,擦除现有程序;
所述物联网模块,用于当所述校验模块擦除现有程序时,执行所述向所述外部云端服务器发送下载请求;
所述更新模块,进一步用于将所述升级程序写入到flash区域中,所述升级程序对应的至少一个block块内。
如图4所示,本发明实时提供了一种云端服务器,包括:
服务器处理模块401,用于获取外部智能终端发送的升级指令和所述升级指令对应的升级程序;
服务器交互模块402,用于将所述服务器处理模块401接收的所述升级指令发送给外部智能冰箱;在接收到所述外部冰箱根据所述升级指令发送的下载请求时,将所述升级程序发送给所述外部智能冰箱。
在本发明实施例中,服务器处理模块在获取到外部智能终端发送的升级指令和升级程序时,服务器交互模块不是直接将升级指令和升级程序全部发送给外部智能冰箱,而是仅将升级指令发送给外部智能冰箱,以使外部智能冰箱确定运行状态是否允许下载升级程序,当且仅当在接收到外部智能冰箱方的下载请求时,将升级程序发送给外部智能冰箱,以使外部智能冰箱利用升级程序完成***升级,而无需用户对智能冰箱进行断电处理再进行***升级,因此能够简化智能冰箱***升级的过程。
如图5所示,本发明实施提供了一种智能升级管理***,包括:至少一个智能终端501、至少一个图3所述智能冰箱502,以及图4所述的云端服务器503,其中,
每一个所述智能冰箱502均与所述云端服务器503相连;
每一个所述智能终端501均与所述云端服务器503相连;
所述智能终端501,用于接收用户发送的升级指令和所述升级指令对应的升级程序,并将接收的所述升级指令和所述升级程序发送给所述云端服务器503。
在本发明实施例中,用户如需对智能冰箱的***进行升级,只需将升级指令和对应的升级程序发送给智能终端即可,智能终端即可将升级指令和升级程序发送给云端服务器,再通过云端服务器将升级指令和升级程序发送给智能冰箱,即完成智能冰箱的***升级,而无需用户对智能冰箱进行断电处理再进行***升级,因此能够简化智能冰箱***升级的过程。
为了更加清楚的说明本发明的技术方案及优点,下面以升级指令为Boot升级指令、升级程序为BootLoader程序为例,对利用智能升级管理***如何对智能冰箱的***升级进行详细说明,如图6所示,包括:
智能终端601,用于接收用户发送的Boot升级指令和Boot升级指令对应的BootLoader程序,并将升级指令和升级程序发送给云端服务器602。
具体地,用户如需对智能冰箱的Boot程序升级,只需向智能终端发送Boot升级指令和Boot升级指令对应的BootLoader程序,以使通过云端服务器602将Boot升级指令和BootLoader程序发送给云端服务器。
举例来说,用户向智能终端手机发送的Boot升级指令和Boot升级指令对应的BootLoader程序,并将Boot升级指令和BootLoader程序发送给云端服务器。
云端服务器602,用于在接收到智能终端601发送的Boot升级指令和BootLoader程序时,将Boot升级指令发送给智能冰箱603,并对BootLoader程序进行哈希计算,获得原始哈希值。
具体地,云端服务器在接收到智能终端发送的Boot升级指令和BootLoader程序时,不是将BootLoader程序直接发送给智能冰箱,而是先将Boot升级指令发送给智能冰箱,以使智能冰箱根据运行状态,确定是否下载BootLoader程序,避免智能冰箱在正常运行状态下,更新BootLoader程序导致智能冰箱无法正常运行。
举例来说,云端服务器接收手机发送的Boot升级指令和BootLoader程序,并将Boot升级指令发送给智能冰箱。
智能冰箱603,用于在接收到云端服务器602发送的Boot升级指令时,检测运行状态是否为上电状态或复位状态,如果是,向云端服务器602发送下载请求,并通过现有BootLoader程序将BootLoader程序从地址1000H开始,写入到flash存储区域中的Bootcluster1区域内。
具体地,智能冰箱在接收到云端服务器发送的Boot升级指令,需要对运行状态进行检测,确定是否为上电状态或复位状态,避免在正常运行状态下更新BootLoader程序导致运行异常。而在确定运行状态是否为上电状态或复位状态时,即可向云端服务器发送下载请求,同时需要通过现有BootLoader程序将BootLoader程序写入到flash存储区域中的Boot cluster1区域内,即从地址1000H至地址1999H。
举例来说,智能冰箱在接收到云端服务器发送的Boot升级指令时,检测运行状态,当运行状态为上电状态或复位状态时,向云端服务器发送下载请求,并接收云端服务器发送的BootLoader程序,通过现有BootLoader程序从地址1000H开始,将BootLoader程序写入到flash存储区域中的Boot cluster1区域内。
云端服务器602,用于在接收到智能冰箱603发送的下载请求时,将BootLoader程序,以及原始哈希值发送给智能冰箱603。
具体地,云端服务器在接收到智能冰箱发送的下载请求时,即可确定智能冰箱的运行状态为上电状态或复位状态,进而即可将BootLoader程序和BootLoader程序对应的原始哈希值发送给智能冰箱,以使智能冰箱根据原始哈希值检测BootLoader程序的完整性和准确性。
举例来说,云端服务器在接收到智能冰箱发送的下载请求时,将BootLoader程序和原始哈希值565453发送给智能冰箱。
智能冰箱603,用于在接收到云端服务器602发送的BootLoader程序和原始哈希值时,通过现有BootLoader程序,将应用程序从地址2000H开始,写入到flash存储区域中的应用程序区域内,并执行:
S0:通过现有BootLoader程序对BootLoader程序进行哈希计算,获得现有哈希值。
S1:确定现有哈希值是否与原始哈希值相同,如果是,执行S2,否则,执行S3;
S2:通过BootLoader程序擦除flash存储区域中,Boot cluster0区域内的现有BootLoader程序,并从地址0000H开始移动至所述Boot cluster0区域内。
S3:向云端服务器602发送重新下载请求,并接收云端服务器602根据重新下载请求发送的BootLoader程序,返回S0。
具体地,智能冰箱在接收到云端服务器发送的BootLoader程序和原始哈希值时,需要确定是否接收到全部的BootLoader程序,以使确定BootLoader程序的完整性,在确定BootLoader程序的有效性后,即可执行BootLoader程序,通过BootLoader程序将flash存储区域中的Boot cluster0区域内的现有BootLoader程序擦除,以使Boot cluster0区域为空白区域,便于BootLoader程序的移动。
举例来说,智能冰箱在接收到云端服务器发送的BootLoader程序和原始哈希值565453时,对BootLoader程序进行哈希计算,获得现有哈希值565453,将原始哈希值565453与现有哈希值565453进行对比,确定BootLoader程序传输完整,即可执行BootLoader程序,通过BootLoader程序擦除地址0000H至地址0999H内的现有BootLoader程序,并从地址0000H开始移动至Boot cluster0区域内。
可以理解的是,当升级程序为应用程序时,智能冰箱在向云端服务器发送下载请求后,需要通过现有BootLoader程序擦除flash存储区域中,从地址2000H至地址7FFHH内的现有应用程序,以使该地址2000H至地址7FFHH内的区域为空白区域,以便于接收到云端服务器发送的BootLoader程序时,将BootLoader程序写入到该空白区域内,即flash存储区域中的应用程序区域,避免影响BootLoader程序的运行。
本发明各个实施例至少具有如下有益效果:
1、在本发明一实施例中,智能冰箱在接收到外部云端服务器发送的升级指令时,需要先确定智能冰箱的运行状态,当且仅当智能冰箱的运行状态允许时才下载升级程序,而下载升级程序后还需要检测升级程序的有效性,避免在执行升级程序时,因升级程序无效而导致智能冰箱无法正常运行,从而可以使得智能冰箱的***升级更安全可靠。综上可见,智能冰箱在接收到外部云端服务器发送的升级指令时,即可确定运行状态是否允许***升级,当且仅当运行状态允许时即可进行***升级,而无需用户对智能冰箱进行断电处理再进行***升级,因此能够简化智能冰箱***升级的过程。
2、在本发明一实施例中,智能冰箱在接收到升级指令时,需要先确定运行状态是否为上电状态或复位状态,如果是上电状态或复位状态时再从外部云端服务器下载升级程序,否则需要维持现有运行,避免在稳定运行时升级***而导致运行异常,从而使得***升级更安全可靠。而智能冰箱的***升级可以是应用程序升级,还可以是BootLoader程序升级,在升级程序为应用程序时,需要通过现有BootLoader程序擦除地址2000H至地址7FFHH内的现有应用程序,以使确定地址2000H至地址7FFHH内为空白区域,有助于将应用程序从地址2000H开始写入该空白区域内。
3、在本发明一实施例中,智能冰箱的***升级可以是应用程序升级,还可以是BootLoader程序升级,当升级程序为BootLoader程序时,需要通过现有BootLoader程序将外部云端服务器发送的BootLoader程序,写入到flash存储区域中的Boot cluster1区域内,再对BootLoader程序进行检测,以使确定接收的BootLoader程序的有效性,避免在执行BootLoader程序时,因BootLoader程序无效而导致智能冰箱无法正常运行,从而使得BootLoader程序的升级更安全可靠。当确定BootLoader程序有效时,即可执行该BootLoader程序,即通过BootLoader程序删除flash存储区域中的Boot cluster0区域内的现有BootLoader程序,再移动至Boot cluster0区域内,以便于***再次进行BootLoader程序将新升级的写入至Boot cluster1区域内。
4、在本发明一实施例中,在接收到外部云端服务器发送的升级程序后,需要确定升级程序的有效性,即将升级程序的现有哈希值与将外部云端服务器发送的原始哈希值进行比较,通过现有哈希值与原始哈希值确定升级程序的完整性和准确性,避免在执行升级程序时,因升级程序异常而导致智能冰箱无法正常运行,从而能够提高智能冰箱***升级的安全性。
5、在本发明一实施例中,云端服务器在获取到外部智能终端发送的升级指令和升级程序时,不是直接将升级指令和升级程序全部发送给外部智能冰箱,而是仅将升级指令发送给外部智能冰箱,以使外部智能冰箱确定运行状态是否允许下载升级程序,当且仅当在接收到外部智能冰箱方的下载请求时,将升级程序发送给外部智能冰箱,以使外部智能冰箱利用升级程序完成***升级,而无需用户对智能冰箱进行断电处理,再进行***升级,因此能够简化智能冰箱***升级的过程。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种智能冰箱***升级方法,其特征在于,应用于智能冰箱,包括:
接收外部云端服务器发送的升级指令;
根据运行状态确定是否下载所述升级指令对应的升级程序;
如果是,向所述外部云端服务器发送下载请求;
接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序;
检测存储的所述升级程序是否有效;
如果是,执行所述升级程序。
2.根据权利要求1所述的方法,其特征在于,
所述根据运行状态确定是否下载所述升级指令对应的升级程序,包括:
检测运行状态是否为上电状态或复位状态;
如果是,执行所述向所述外部云端服务器发送下载请求;
在所述向所述外部云端服务器发送下载请求之后,进一步包括:
当所述升级程序为所述应用程序时;
通过现有BootLoader程序擦除flash存储区域中,从地址2000H至地址7FFHH内的现有应用程序;
所述接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序,包括:
接收所述外部云端服务器根据所述下载请求发送的所述应用程序;
将所述应用程序从所述地址2000H开始,写入到所述flash存储区域中的应用程序区域内;
所述检测存储的所述升级程序是否有效,包括:
检测写入的所述应用程序是否有效。
3.根据权利要求2所述的方法,其特征在于,
所述接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序,包括:
当所述升级程序为BootLoader程序时,
通过所述现有BootLoader程序将所述BootLoader程序从地址1000H开始,写入到所述flash存储区域中的Boot cluster1区域内;
所述检测存储的所述升级程序是否有效,如果是,执行所述升级程序,包括:
检测写入的所述BootLoader程序是否有效,
如果是,通过所述BootLoader程序擦除所述flash存储区域中,Boot cluster0区域内的所述现有BootLoader程序,并从地址0000H开始移动至所述Boot cluster0区域内。
4.根据权利要求1至3所述的方法,其特征在于,
在所述接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序之后,进一步包括:
接收所述外部云端服务器发送的原始哈希值;
所述检测存储的所述升级程序是否有效,包括:
S0:对所述升级程序进行哈希计算,获得现有哈希值;
S1:确定所述现有哈希值是否与所述原始哈希值相同,如果是,执行S2,否则,执行S3;
S2:执行所述升级程序;
S3:向所述外部云端服务器发送重新下载请求,并接收所述外部云端服务器根据所述重新下载请求发送的所述升级程序,返回S0。
5.一种智能冰箱***的升级方法,其特征在于,应用于云端服务器,包括:
获取外部智能终端发送的升级指令和所述升级指令对应的升级程序;
将所述升级指令发送给外部智能冰箱;
在接收到所述外部冰箱根据所述升级指令发送的下载请求时,将所述升级程序发送给所述外部智能冰箱。
6.根据权利要求5所述的方法,其特征在于,
在所述将所述升级指令发送给外部智能冰箱之后,进一步包括:
对所述升级程序进行哈希计算,获得原始哈希值;
将获得的所述原始哈希值发送给所述外部智能冰箱。
7.一种智能冰箱,其特征在于,包括:
物联网模块,用于接收外部云端服务器发送的升级指令;当校验模块确定下载所述升级指令对应的所述升级程序时,向所述外部云端服务器发送下载请求;接收并存储所述外部云端服务器根据所述下载请求发送的所述升级程序;
所述校验模块,用于根据运行状态确定是否下载所述物联网模块接收的所述升级指令对应的升级程序;
更新模块,用于检测所述物联网模块存储的所述升级程序是否有效;如果是,执行所述升级程序。
8.根据权利要求7所述的智能冰箱,其特征在于,
所述校验模块,用于检测运行状态是否为上电状态或复位状态;如果是,擦除现有程序;
所述物联网模块,用于当所述校验模块擦除现有程序时,执行所述向所述外部云端服务器发送下载请求;
所述更新模块,进一步用于将所述升级程序写入到flash区域中,所述升级程序对应的至少一个block块内。
9.一种云端服务器,其特征在于,包括:
服务器处理模块,用于获取外部智能终端发送的升级指令和所述升级指令对应的升级程序;
服务器交互模块,用于将所述服务器处理模块接收的所述升级指令发送给外部智能冰箱;在接收到所述外部冰箱根据所述升级指令发送的下载请求时,将所述升级程序发送给所述外部智能冰箱。
10.一种智能升级管理***,其特征在于,包括:至少一个智能终端、至少一个权利要求7或8所述智能冰箱,以及权利要求9所述的云端服务器,其中,
每一个所述智能冰箱均与所述云端服务器相连;
每一个所述智能终端均与所述云端服务器相连;
所述智能终端,用于接收用户发送的升级指令和所述升级指令对应的升级程序,并将接收的所述升级指令和所述升级程序发送给所述云端服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810762754.9A CN108572839A (zh) | 2018-07-12 | 2018-07-12 | 智能冰箱***升级方法、***、智能冰箱和云端服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810762754.9A CN108572839A (zh) | 2018-07-12 | 2018-07-12 | 智能冰箱***升级方法、***、智能冰箱和云端服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108572839A true CN108572839A (zh) | 2018-09-25 |
Family
ID=63571635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810762754.9A Pending CN108572839A (zh) | 2018-07-12 | 2018-07-12 | 智能冰箱***升级方法、***、智能冰箱和云端服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108572839A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109595858A (zh) * | 2018-12-03 | 2019-04-09 | 四川虹美智能科技有限公司 | 智能变频冰箱、控制智能变频冰箱压缩机的***及方法 |
CN110134419A (zh) * | 2019-05-20 | 2019-08-16 | 深圳市丰巢科技有限公司 | 一种双面柜的***升级方法、装置、设备及存储介质 |
CN110162488A (zh) * | 2018-11-15 | 2019-08-23 | 深圳乐信软件技术有限公司 | 缓存一致性校验方法、装置、服务器和存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090217257A1 (en) * | 2008-02-27 | 2009-08-27 | Mstar Semiconductor, Inc. | Apparatus and Method for Firmware Update |
CN102591676A (zh) * | 2010-11-12 | 2012-07-18 | 歌乐株式会社 | 车载机的在线更新方法 |
CN102855151A (zh) * | 2012-08-21 | 2013-01-02 | 武汉电信器件有限公司 | 不打断业务的光模块固件在应用升级方法 |
CN103312786A (zh) * | 2013-05-17 | 2013-09-18 | 广州市雄兵汽车电器有限公司 | 车载终端远程升级方法及车联网*** |
CN103995712A (zh) * | 2014-04-16 | 2014-08-20 | 潍柴动力股份有限公司 | 一种自动更新的bootloader装置及更新方法 |
CN104469278A (zh) * | 2013-09-25 | 2015-03-25 | 浙江大华技术股份有限公司 | 一种监控***升级方法及装置 |
WO2015102278A1 (ko) * | 2013-12-30 | 2015-07-09 | 어보브반도체 주식회사 | 단일 광 포트 통신을 이용한 펌웨어 업데이트 방법 및 펌웨어 업데이트가 가능한 마이크로 컨트롤러 |
CN105591824A (zh) * | 2016-01-14 | 2016-05-18 | 杭州赫智电子科技有限公司 | 一种固件升级的方法、*** |
CN105677363A (zh) * | 2016-02-03 | 2016-06-15 | 四川长虹电器股份有限公司 | Ota升级*** |
US20160291940A1 (en) * | 2014-07-07 | 2016-10-06 | Symphony Teleca Corporation | Remote Embedded Device Update Platform Apparatuses, Methods and Systems |
CN106371872A (zh) * | 2016-08-30 | 2017-02-01 | 无锡小天鹅股份有限公司 | 洗衣机程序升级方法和升级*** |
-
2018
- 2018-07-12 CN CN201810762754.9A patent/CN108572839A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090217257A1 (en) * | 2008-02-27 | 2009-08-27 | Mstar Semiconductor, Inc. | Apparatus and Method for Firmware Update |
CN102591676A (zh) * | 2010-11-12 | 2012-07-18 | 歌乐株式会社 | 车载机的在线更新方法 |
CN102855151A (zh) * | 2012-08-21 | 2013-01-02 | 武汉电信器件有限公司 | 不打断业务的光模块固件在应用升级方法 |
CN103312786A (zh) * | 2013-05-17 | 2013-09-18 | 广州市雄兵汽车电器有限公司 | 车载终端远程升级方法及车联网*** |
CN104469278A (zh) * | 2013-09-25 | 2015-03-25 | 浙江大华技术股份有限公司 | 一种监控***升级方法及装置 |
WO2015102278A1 (ko) * | 2013-12-30 | 2015-07-09 | 어보브반도체 주식회사 | 단일 광 포트 통신을 이용한 펌웨어 업데이트 방법 및 펌웨어 업데이트가 가능한 마이크로 컨트롤러 |
CN103995712A (zh) * | 2014-04-16 | 2014-08-20 | 潍柴动力股份有限公司 | 一种自动更新的bootloader装置及更新方法 |
US20160291940A1 (en) * | 2014-07-07 | 2016-10-06 | Symphony Teleca Corporation | Remote Embedded Device Update Platform Apparatuses, Methods and Systems |
CN105591824A (zh) * | 2016-01-14 | 2016-05-18 | 杭州赫智电子科技有限公司 | 一种固件升级的方法、*** |
CN105677363A (zh) * | 2016-02-03 | 2016-06-15 | 四川长虹电器股份有限公司 | Ota升级*** |
CN106371872A (zh) * | 2016-08-30 | 2017-02-01 | 无锡小天鹅股份有限公司 | 洗衣机程序升级方法和升级*** |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110162488A (zh) * | 2018-11-15 | 2019-08-23 | 深圳乐信软件技术有限公司 | 缓存一致性校验方法、装置、服务器和存储介质 |
CN110162488B (zh) * | 2018-11-15 | 2022-02-11 | 深圳乐信软件技术有限公司 | 缓存一致性校验方法、装置、服务器和存储介质 |
CN109595858A (zh) * | 2018-12-03 | 2019-04-09 | 四川虹美智能科技有限公司 | 智能变频冰箱、控制智能变频冰箱压缩机的***及方法 |
CN110134419A (zh) * | 2019-05-20 | 2019-08-16 | 深圳市丰巢科技有限公司 | 一种双面柜的***升级方法、装置、设备及存储介质 |
CN110134419B (zh) * | 2019-05-20 | 2023-03-21 | 深圳市丰巢科技有限公司 | 一种双面柜的***升级方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105487980B (zh) | 修复应用程序运行异常的方法及装置 | |
CN106648669B (zh) | 产品设备远程固件升级方法及*** | |
CN108572839A (zh) | 智能冰箱***升级方法、***、智能冰箱和云端服务器 | |
US9928053B2 (en) | Joint acquisition of update software for multiple devices | |
CN102571940B (zh) | 应用程序远程安装***、方法、智能终端、应用服务器 | |
US20130254527A1 (en) | Bios firmware updating method and electronic device | |
CN104391862A (zh) | 一种缓存数据更新方法及装置 | |
CN105517015A (zh) | 一种wifi产品空中下载OTA升级方法、装置及终端 | |
CN104954394A (zh) | 软件差分包制作、升级方法及服务器、终端、升级*** | |
CN106648781B (zh) | 通信设备远程固件升级方法及*** | |
WO2017049550A1 (zh) | 适配器和适配器升级的方法 | |
CN104765628A (zh) | 一种移动终端更新触摸屏固件的方法及*** | |
CN103164247B (zh) | ***应用自动修复的方法及装置 | |
CN103268239B (zh) | 移动终端中应用程序的管理方法、装置和移动终端 | |
CN113064619A (zh) | 一种固件升级方法、装置、***、设备和存储介质 | |
CN104021218A (zh) | 一种信息显示方法及装置 | |
CN103634665A (zh) | 一种版本升级方法和装置 | |
CN103701914A (zh) | 连载资源的离线下载方法和装置 | |
CN109688427A (zh) | 一种智能电视及其***修复方法 | |
CN102750156A (zh) | 程序烧录方法和*** | |
CN113064685A (zh) | 一种h5页面加载方法及装置 | |
CN103634668A (zh) | 智能电视中的***升级方法和装置 | |
RU2618943C2 (ru) | Способ, устройство и система распространения приложений | |
CN108874410B (zh) | 补丁管理方法及装置 | |
CN104580360A (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: 20180925 |