CN105354059A - 空调系统的控制器的升级方法及装置 - Google Patents
空调系统的控制器的升级方法及装置 Download PDFInfo
- Publication number
- CN105354059A CN105354059A CN201510731444.7A CN201510731444A CN105354059A CN 105354059 A CN105354059 A CN 105354059A CN 201510731444 A CN201510731444 A CN 201510731444A CN 105354059 A CN105354059 A CN 105354059A
- Authority
- CN
- China
- Prior art keywords
- rompaq
- program
- data
- controller
- conditioning system
- 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
- 238000004378 air conditioning Methods 0.000 title claims abstract description 136
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000008569 process Effects 0.000 claims abstract description 31
- 230000008859 change Effects 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008672 reprogramming Effects 0.000 description 3
- 238000002679 ablation Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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
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)
- Air Conditioning Control Device (AREA)
Abstract
本发明公开了一种空调系统的控制器的升级方法及装置。其中,该升级方法包括:基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序;若判断出存在空调系统的控制器的待升级程序,则获取空调系统的控制器的升级程序的数据,并变更程序升级标志位的属性值;使用升级程序的数据对空调系统的控制器进行升级。本发明解决了空调控制器的程序在远程升级时容易出错的技术问题,从而保证了空调系统的控制器在升级过程中断电后依然能够正确升级程序。
Description
技术领域
本发明涉及软件领域,具体而言,涉及一种空调系统的控制器的升级方法及装置。
背景技术
由于空调控制器本身的程序设计缺陷或者新的功能升级需求,经常需要更新控制器程序。目前远程升级方案大多使用BOOT启动进行升级,当系统启动时,机组先等待远程数据传输再进行升级,在系统升级时,需要BOOT一直运行,并等待数据传输,进而导致了升级耗时较长的问题。另一种远程升级的方案为通过编译两份不同运行地址的程序,供BOOT选择启动,而此方案在软件编译时,需要指定编译地址,会导致程序管理比较困难,两份程序会容易混乱出错,一旦编译地址出错后,两份程序均不可运行,主板需要专用的编译器处理才能恢复,升级时容易出错。
针对上述的空调控制器的程序在远程升级时容易出错的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种空调系统的控制器的升级方法及装置,以至少解决空调控制器的程序在远程升级时容易出错的技术问题。
根据本发明实施例的一个方面,提供了一种空调系统的控制器的升级方法,该升级方法包括:基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序;若判断出存在空调系统的控制器的待升级程序,则获取空调系统的控制器的升级程序的数据,并变更程序升级标志位的属性值;使用升级程序的数据对空调系统的控制器进行升级。
进一步地,变更程序升级标志位的属性值包括:生成升级程序的数据的校验码;若生成的校验码与接收到的校验码相匹配,则确定获取的升级程序的数据正确,变更程序升级标志位的属性值,其中,接收到的校验码为与升级程序的数据一同获取的数据。
进一步地,变更程序升级标志位的属性值包括:清除程序升级标志位的属性值,或将程序升级标志位的属性值设置为零。
进一步地,获取空调系统的控制器的升级程序的数据包括:将初始升级程序的数据写入升级程序区;将升级程序区中存储的初始升级程序的数据解密,得到解密后的升级程序的数据;将升级程序的数据写入程序执行区。
进一步地,将升级程序的数据写入程序执行区包括:使用写入命令IAP将升级程序的数据写入程序执行区。
进一步地,使用升级程序的数据对空调系统的控制器进行升级包括:清除储存在升级程序区中的升级程序的数据;执行升级程序的数据以升级控制器;或者重新启动控制器后执行升级程序的数据以升级控制器。
进一步地,基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序包括:判断程序升级标志位的属性值是否为预设值;若程序升级标志位的属性值为预设值,则判断出存在空调系统的控制器的待升级程序;若程序升级标志位的属性值不为预设值,则判断出不存在空调系统的控制器的待升级程序,控制控制器进入正常的程序运行。
根据本发明实施例的另一方面,还提供了一种空调系统的控制器的升级装置,该升级装置包括:判断模块,用于基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序;处理模块,用于若判断出存在空调系统的控制器的待升级程序,则获取空调系统的控制器的升级程序的数据,并变更程序升级标志位的属性值;升级模块,用于使用升级程序的数据对空调系统的控制器进行升级。
进一步地,处理模块包括:生成模块,用于生成升级程序的数据的校验码;处理子模块,用于若生成的校验码与接收到的校验码相匹配,则确定获取的升级程序的数据正确,变更程序升级标志位的属性值,其中,接收到的校验码为与升级程序的数据一同获取的数据。
进一步地,处理子模块包括:标志位清除模块,用于清除程序升级标志位的属性值,或将程序升级标志位的属性值设置为零。
进一步地,处理模块包括:第一写入模块,用于将初始升级程序的数据写入升级程序区;解密模块,用于将升级程序区中存储的初始升级程序的数据解密,得到解密后的升级程序的数据;第二写入模块,用于将升级程序的数据写入程序执行区。
进一步地,第二写入模块包括:写入子模块,用于使用写入命令IAP将升级程序的数据写入程序执行区。
进一步地,升级模块包括:数据清除模块,用于清除储存在升级程序区中的升级程序的数据;升级子模块,用于执行升级程序的数据以升级控制器;或者重新启动控制器后执行升级程序的数据以升级控制器。
进一步地,判断模块包括:第一判断子模块,用于判断程序升级标志位的属性值是否为预设值;第二判断子模块,用于若程序升级标志位的属性值为预设值,则判断出存在空调系统的控制器的待升级程序;第三判断子模块,用于若程序升级标志位的属性值不为预设值,则判断出不存在空调系统的控制器的待升级程序,控制控制器进入正常的程序运行。
在本发明实施例中,在空调系统的控制器进行升级前,需要先基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序,在判断出存在空调系统的控制器的待升级程序的条件下,再获取该空调系统的控制器的升级程序的数据,并变更上述程序升级标志位的属性值,然后使用升级程序的数据对空调系统的控制器进行升级。通过采用上述实施例,由于是基于程序升级标志位的属性值来判断并进一步控制是否进行空调系统的控制器的升级,从而保证了空调系统的控制器在升级过程中断电后依然能够正确升级程序,进而解决了空调控制器的程序在远程升级时容易出错的问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种空调系统的控制器的升级方法的流程图;
图2是根据本发明实施例的一种可选的空调系统的控制器的升级方法的流程图;以及
图3是根据本发明实施例的一种空调系统的控制器的升级装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
BOOT即引导程序或启动代码,BOOT.INI是一个重要的系统配置文件,WindowsXP主要依赖BOOT.INI文件来确定计算机在重启(引导)过程中显示的可供选取的操作系统类别。BOOT负责控制查出程序存储器及给程序存储器编程的代码。
闪存(FlashMemory,简称Flash),其属于内存中的一种,闪存是一种不易挥发性内存,在没有电流供应的条件下,也能够长久地保持数据,其存储特性相当于硬盘。Flash也即闪存式非易失性存储器,可以对称为块的存储器单元块惊醒进行擦写和再编程,其在进行写入操作前必须先执行擦除。
在应用编程技术(InApplicationProgramming,简称IAP技术),是指MCU可以在系统中获取新代码并对自己重新编程,即可用程序来改变程序。在应用编辑,IAP技术是从结构上将Flash存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将控制从一个存储体转向另一个。IAP的工作原理为:在实现IAP功能时,单片机内部一定要有两块存储区,一般一块被称为BOOT区,另外一块被称为存储区。
随机存储器(RandomAccessMemory,简称RAM),其特点是易挥发性,即掉电失忆。计算机的存储器可以分为主存储器和辅助存储器(或者内存储器和外存储器),其中,主存储器简称内存,内存一般采用半导体存储单元。RAM是内存中最重要的存储器。
根据本发明实施例,提供了一种空调系统的控制器的升级方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的空调系统的控制器的升级方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序。
步骤S104,若判断出存在空调系统的控制器的待升级程序,则获取空调系统的控制器的升级程序的数据,并变更程序升级标志位的属性值。
步骤S106,使用升级程序的数据对空调系统的控制器进行升级。
采用本发明实施例,在空调系统的控制器进行升级前,需要先基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序,在判断出存在空调系统的控制器的待升级程序的条件下,再获取该空调系统的控制器的升级程序的数据,并变更上述程序升级标志位的属性值,然后使用升级程序的数据对空调系统的控制器进行升级。通过采用上述实施例,由于是基于程序升级标志位的属性值来判断并进一步控制是否进行空调系统的控制器的升级,从而保证了空调系统的控制器在升级过程中断电后依然能够正确升级程序,进而解决了空调控制器的程序在远程升级时容易出错的问题。
具体地,在空调系统的控制器的升级过程中,如果在获取升级数据的时候出现了断电的情况,由于未获取到完整的升级程序的数据,没有变更程序升级标志位的属性值,因此,在空调系统的控制器通电后,依然能够基于未变更的程序升级标识位的属性值来判断是否存在待升级程序,并仍能够再次获取升级程序的数据以对空调系统的控制器进行升级,从而为空调系统的控制器的升级过程提供了一种断电保护机制,保证了空调系统的控制器在升级过程中断电后依然能够正确升级程序。
在上述实施例中,可以在使用空调系统的控制器的机组运行过程中,先传输待升级程序的数据,然后在空调系统重启后,立即判断标志位的属性值,从而使升级的过程不影响空调系统的正常的启动速度,在BOOT中进行升级程序及对升级断电后重新升级,并引导程序进入正常的升级程序,即可以利用空调系统的控制器的机组的通讯功能,实现空调系统在正常运行时接收数据,重启后再更新升级程序的数据的方法来实现无缝升级程序的效果。
可选地,在上述实施例中的基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序之前,空调系统的控制器先上电启动,触发执行BOOT启动代码。
具体地,空调系统的控制器上电启动时,首先执行BOOT启动代码,先检测程序升级标志位有没有程序升级(即是否存在待升级程序),如果没有则进入正常的程序运行。如果检测到程序升级(即存在待升级程序),则执行程序升级代码(即升级程序的数据),以对该空调系统的控制器进行系统升级。
可选地,基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序可以包括:判断程序升级标志位的属性值是否为预设值;若程序升级标志位的属性值为预设值,则判断出存在空调系统的控制器的待升级程序;若程序升级标志位的属性值不为预设值,则判断出不存在空调系统的控制器的待升级程序,控制控制器进入正常的程序运行。
具体地,上述实施例中的程序升级标志位的属性值可以包括1和0,预设值可以为1。当程序升级标志位的属性值为1时,即程序升级标志位的属性值为预设值时,判断出空调系统的控制器中存在待升级程序,或者判断出空调系统的控制器需要进行系统升级;当程序升级标志位的属性值为0时,即程序升级标志位的属性值不为预设值时,判断出空调系统的控制器中存在待升级程序,或者判断出空调系统的控制器需要进行系统升级。
可选地,获取空调系统的控制器的升级程序的数据可以包括:将初始升级程序的数据写入升级程序区;将升级程序区中存储的初始升级程序的数据解密,得到解密后的升级程序的数据;将升级程序的数据写入程序执行区。
上述实施例中的将升级程序的数据写入程序执行区可以包括:使用写入命令IAP将升级程序的数据写入程序执行区。
在上述实施例中,在基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序之后;若判断出存在空调系统的控制器的待升级程序,则将初始升级程序的数据写入升级程序区;将升级程序区中存储的初始升级程序的数据解密,得到解密后的升级程序的数据;将升级程序的数据写入中央处理器(CentralProcessingUnit,CPU)的程序执行区,同时变更程序升级标志位的属性值;然后使用升级程序的数据对空调系统的控制器进行升级。通过上述实施例,在将升级程序的数据写入程序执行区的最后一刻才解密,从而保证了升级程序的数据安全完整的写入过程,进而提高了空调系统的控制器的升级过程的安全性。
具体地,在空调控制器系统上电启动并执行BOOT启动程序的代码后,基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序,若判断出存在所述空调系统的控制器的待升级程序,进入程序升级代码(升级程序的数据),BOOT启动程序首先将其代码复制到内存部分(如RAM区),让出FLASH(即程序执行区)存储的使用权。然后将需要升级的程序数据(即初始升级程序的数据)复制到RAM区的指定位置(即升级程序区),并在此可以通过与加密算法对应的解密算法来进行数据解密,得到解密后的升级程序的数据,初始升级程序的数据可分成多次循环传输至升级程序区,然后使用FLASH写入专用命令IAP,将RAM区(即升级程序区)的解密后的升级程序的数据写入至FLASH程序执行区内。
在上述实施例中,代码(包括初始升级程序的数据和BOOT启动数据)都是存储在FLASH(即程序执行区)里面,在需要升级的时候,BOOT段程序才会将自己(即BOOT启动数据)复制到内存(即升级程序区)里面,让自己(BOOT启动数据)在RAM(即升级程序区)里面操作,其中,解密程序是BOOT程序中的一段代码,在对初始升级程序的数据进行解密时,具体可以为:把初始升级程序的数据复制到RAM区后,BOOT启动程序再将该段数据(即初始升级程序的数据)进行移位或加减等操作以进行数据的解密得到解密后的升级程序的数据,同时,变更程序升级标志位的属性值,然后使用上述升级程序的数据对空调系统的控制器进行升级。
可选地,变更程序升级标志位的属性值可以包括:生成升级程序的数据的校验码;若生成的校验码与接收到的校验码相匹配,则确定获取的升级程序的数据正确,变更程序升级标志位的属性值,其中,接收到的校验码为与升级程序的数据一同获取的数据。
上述实施例中的变更程序升级标志位的属性值可以包括:清除程序升级标志位的属性值,或将程序升级标志位的属性值设置为零。
在上述实施例中,基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序;若判断出存在空调系统的控制器的待升级程序,则获取空调系统的控制器的升级程序的数据,并同时生成升级程序的数据的校验码;若生成的校验码与接收到的校验码相匹配,则确定获取的升级程序的数据正确,变更程序升级标志位的属性值;然后使用升级程序的数据对空调系统的控制器进行升级。通过上述实施例,采用校验的方式确定获取的升级数据的正确性,一旦确定升级数据正确,就变更程序升级标志位的属性值,从而保证了该程序升级标志位的属性值的正确性,进而保证了空调系统的控制器在程序升级过程中的准确性。
具体地,在升级程序的数据写入程序执行区的步骤完成之后,对该升级程序的数据进行校验,如果生成的校验码与传输过来的校验码相匹配,则认为该升级程序的数据已经正确传输,即校验OK(校验成功),继而清除掉程序升级标志位的属性值,或将程序升级标志位的属性值设置为零。
可选地,使用升级程序的数据对空调系统的控制器进行升级可以包括:清除储存在升级程序区中的升级程序的数据;执行升级程序的数据以升级控制器;或者重新启动控制器后执行升级程序的数据以升级控制器。
具体地,在基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序之后;若判断出存在所述空调系统的控制器的待升级程序,则获取所述空调系统的控制器的升级程序的数据,并变更所述程序升级标志位的属性值,然后可以擦除升级程序区的内容(包括初始升级程序的数据和解密后的升级程序数据),当擦除工作完成后,程序可以跳入代码入口区域执行升级程序的数据,或者重新启动空调系统,BOOT启动程序检测升级程序标志位已经被擦除,则跳入新程序入口执行新程序。
上述实施例中拟定的升级程序在空调系统的控制器的机组正常运行中已经通过通讯协议将程序传输完成,待第二次空调系统重新启动时进入程序升级模式,但也可以包括直接在BOOT中直接通过通讯协议传输升级程序。
在一个可选的实施例中,如图2所示,该空调系统的控制器的升级方法具体可以包括如下步骤:
步骤S201,BOOT启动。
具体地,系统上电启动时,首先执行BOOT启动代码(即每次上电都会进启动代码)。
步骤S202,基于程序升级标志位的属性值判断是否存在待升级程序。
具体地,若判断出存在所述空调系统的控制器的待升级程序,则执行步骤S203;若判断出不存在所述空调系统的控制器的待升级程序,则执行步骤S204。
可选地,先检测程序升级标志位的属性值,并判断是否存在升级程序,如果不存在则进入正常的程序运行。如果检测到存在升级程序,则执行程序升级代码。上述标志位的属性值可以为:0和1,判断标志位的属性值是否为预设值,其中,预设值可以为1,即判断标志位的属性值是否等于1,若标志位的属性值为1,则确定空调系统的控制器中存在升级程序,即1代表需要升级,若标志位的属性值为0,则确定空调系统的控制器中不存在升级程序,即0代表不需要升级。
步骤S203,复制BOOT启动代码到RAM区。
具体地,在进入程序升级代码后,BOOT启动程序首先将自己的代码(即BOOT启动代码)复制到内存部分(如RAM区),从而让出FLASH(即程序执行区)存储的使用权。
步骤S204,跳入程序运行代码区入口运行程序。
具体地,若判断出不存在所述空调系统的控制器的待升级程序,则程序跳入程序运行代码区的入口,执行空调系统的控制器中的正常的运行程序。
步骤S205,写入命令IAP读取初始升级程序数据到升级程序区。
具体地,利用写入命令IAP读取初始升级程序数据到内存,即将需要升级的程序数据复制到指定位置,该指定位置是在RAM区。
步骤S206,初始升级程序的数据解密。
具体地,对内存中的初始升级程序的数据的解密过程具体可以通过与加密算法对应的解密算法进行数据解密,即可以把初始升级程序的数据复制到RAM区后,BOOT再将该段数据(即初始升级程序的数据)进行移位或加减等操作。
步骤S207,写入命令IAP将升级程序区中的升级程序的数据写入到程序执行区。
具体地,可以利用写入命令IAP将内存中的数据写入到FLASH的程序执行区。该初始升级程序的数据可分成多次循环传输,然后使用FLASH写入专用命令IAP,对FLASH的程序执行区数据写入。
步骤S208,校验升级程序的数据。
具体地,在将升级程序区中的数据写入到程序执行区之后,对该升级程序的数据进行校验,如果生成的校验码与传输过来的校验码相匹配,则认为数据已经正确传输,校验OK,则执行步骤S209;若校验错误,则返回执行步骤S205。
步骤S209,擦除升级程序区的内容。
具体地,清除掉程序升级标志位和擦除升级程序区的内容。当擦除工作完成后,返回执行步骤S204,即程序跳入代码入口区域执行升级程序,或者重新启动系统,BOOT检测升级程序标志位已经被擦除,则执行步骤S204,跳入程序运行代码入口运行程序,此时,跳入的代码入口可以为新程序的代码入口并且可以执行新的运行程序。
上述的擦除的升级程序区的内容不是RAM区里面的内容,是先前已经传输过来存在外存里面的内容。
根据本发明实施例,还提供了一种空调系统的控制器的升级装置的实施例。如图3所示,该升级装置包括:判断模块20、处理模块40以及升级模块60。
其中,判断模块20,用于基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序。
处理模块40,用于若判断出存在空调系统的控制器的待升级程序,则获取空调系统的控制器的升级程序的数据,并变更程序升级标志位的属性值。
升级模块60,用于使用升级程序的数据对空调系统的控制器进行升级。
采用本发明实施例,在空调系统的控制器进行升级前,需要先基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序,在判断出存在空调系统的控制器的待升级程序的条件下,再获取该空调系统的控制器的升级程序的数据,并变更上述程序升级标志位的属性值,然后使用升级程序的数据对空调系统的控制器进行升级。通过采用上述实施例,由于是基于程序升级标志位的属性值来判断并进一步控制是否进行空调系统的控制器的升级,从而保证了空调系统的控制器在升级过程中断电后依然能够正确升级程序,进而解决了空调控制器的程序在远程升级时容易出错的问题。
可选地,处理模块可以包括:生成模块和处理子模块。
其中,生成模块,用于生成升级程序的数据的校验码。
处理子模块,用于若生成的校验码与接收到的校验码相匹配,则确定获取的升级程序的数据正确,变更程序升级标志位的属性值,其中,接收到的校验码为与升级程序的数据一同获取的数据。
可选地,处理子模块可以包括:标志位清除模块,用于清除程序升级标志位的属性值,或将程序升级标志位的属性值设置为零。
在上述实施例中,基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序;若判断出存在空调系统的控制器的待升级程序,则获取空调系统的控制器的升级程序的数据,并同时生成升级程序的数据的校验码;若生成的校验码与接收到的校验码相匹配,则确定获取的升级程序的数据正确,变更程序升级标志位的属性值;然后使用升级程序的数据对空调系统的控制器进行升级。通过上述实施例,采用校验的方式确定获取的升级数据的正确性,一旦确定升级数据正确,就变更程序升级标志位的属性值,从而保证了该程序升级标志位的属性值的正确性,进而保证了空调系统的控制器在程序升级过程中的准确性。
可选地,处理模块可以包括:第一写入模块、解密模块以及第二写入模块。
其中,第一写入模块,用于将初始升级程序的数据写入升级程序区。
解密模块,用于将升级程序区中存储的初始升级程序的数据解密,得到解密后的升级程序的数据。
第二写入模块,用于将升级程序的数据写入程序执行区。
可选地,第二写入模块可以包括:写入子模块,用于使用写入命令IAP将升级程序的数据写入程序执行区。
在上述实施例中,在基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序之后;若判断出存在空调系统的控制器的待升级程序,则将初始升级程序的数据写入升级程序区;将升级程序区中存储的初始升级程序的数据解密,得到解密后的升级程序的数据;将升级程序的数据写入CPU的程序执行区,同时变更程序升级标志位的属性值;然后使用升级程序的数据对空调系统的控制器进行升级。通过上述实施例,在将升级程序的数据写入程序执行区的最后一刻才解密,从而保证了升级程序的数据安全完整的写入过程,进而提高了空调系统的控制器的升级过程的安全性。
可选地,升级模块可以包括:数据清除模块和升级子模块。
其中,数据清除模块,用于清除储存在升级程序区中的升级程序的数据。
升级子模块,用于执行升级程序的数据以升级控制器;或者重新启动控制器后执行升级程序的数据以升级控制器。
可选地,判断模块可以包括:第一判断子模块、第二判断子模块以及第三判断子模块。
其中,第一判断子模块,用于判断程序升级标志位的属性值是否为预设值。
第二判断子模块,用于若程序升级标志位的属性值为预设值,则判断出存在空调系统的控制器的待升级程序。
第三判断子模块,用于若程序升级标志位的属性值不为预设值,则判断出不存在空调系统的控制器的待升级程序,控制控制器进入正常的程序运行。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种空调系统的控制器的升级方法,其特征在于,包括:
基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序;
若判断出存在所述空调系统的控制器的待升级程序,则获取所述空调系统的控制器的升级程序的数据,并变更所述程序升级标志位的属性值;
使用所述升级程序的数据对所述空调系统的控制器进行升级。
2.根据权利要求1所述的升级方法,其特征在于,变更所述程序升级标志位的属性值包括:
生成所述升级程序的数据的校验码;
若生成的校验码与接收到的校验码相匹配,则确定获取的所述升级程序的数据正确,变更所述程序升级标志位的属性值,
其中,所述接收到的校验码为与所述升级程序的数据一同获取的数据。
3.根据权利要求2所述的升级方法,其特征在于,变更所述程序升级标志位的属性值包括:
清除所述程序升级标志位的属性值,或将所述程序升级标志位的属性值设置为零。
4.根据权利要求1所述的升级方法,其特征在于,获取所述空调系统的控制器的升级程序的数据包括:
将初始升级程序的数据写入升级程序区;
将所述升级程序区中存储的所述初始升级程序的数据解密,得到解密后的升级程序的数据;
将所述升级程序的数据写入程序执行区。
5.根据权利要求4所述的升级方法,其特征在于,将所述升级程序的数据写入程序执行区包括:
使用写入命令IAP将所述升级程序的数据写入所述程序执行区。
6.根据权利要求4所述的升级方法,其特征在于,使用所述升级程序的数据对所述空调系统的控制器进行升级包括:
清除储存在所述升级程序区中的所述升级程序的数据;
执行所述升级程序的数据以升级所述控制器;或者重新启动所述控制器后执行所述升级程序的数据以升级所述控制器。
7.根据权利要求1至6中任意一项所述的升级方法,其特征在于,基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序包括:
判断所述程序升级标志位的属性值是否为预设值;
若所述程序升级标志位的属性值为所述预设值,则判断出存在所述空调系统的控制器的待升级程序;
若所述程序升级标志位的属性值不为所述预设值,则判断出不存在所述空调系统的控制器的待升级程序,控制所述控制器进入正常的程序运行。
8.一种空调系统的控制器的升级装置,其特征在于,包括:
判断模块,用于基于程序升级标志位的属性值判断是否存在空调系统的控制器的待升级程序;
处理模块,用于若判断出存在所述空调系统的控制器的待升级程序,则获取所述空调系统的控制器的升级程序的数据,并变更所述程序升级标志位的属性值;
升级模块,用于使用所述升级程序的数据对所述空调系统的控制器进行升级。
9.根据权利要求8所述的升级装置,其特征在于,所述处理模块包括:
生成模块,用于生成所述升级程序的数据的校验码;
处理子模块,用于若生成的校验码与接收到的校验码相匹配,则确定获取的所述升级程序的数据正确,变更所述程序升级标志位的属性值,
其中,所述接收到的校验码为与所述升级程序的数据一同获取的数据。
10.根据权利要求9所述的升级装置,其特征在于,所述处理子模块包括:
标志位清除模块,用于清除所述程序升级标志位的属性值,或将所述程序升级标志位的属性值设置为零。
11.根据权利要求8所述的升级装置,其特征在于,所述处理模块包括:
第一写入模块,用于将初始升级程序的数据写入升级程序区;
解密模块,用于将所述升级程序区中存储的所述初始升级程序的数据解密,得到解密后的升级程序的数据;
第二写入模块,用于将所述升级程序的数据写入程序执行区。
12.根据权利要求11所述的升级装置,其特征在于,所述第二写入模块包括:
写入子模块,用于使用写入命令IAP将所述升级程序的数据写入所述程序执行区。
13.根据权利要求11所述的升级装置,其特征在于,所述升级模块包括:
数据清除模块,用于清除储存在所述升级程序区中的所述升级程序的数据;
升级子模块,用于执行所述升级程序的数据以升级所述控制器;或者重新启动所述控制器后执行所述升级程序的数据以升级所述控制器。
14.根据权利要求8至13中任意一项所述的升级装置,其特征在于,所述判断模块包括:
第一判断子模块,用于判断所述程序升级标志位的属性值是否为预设值;
第二判断子模块,用于若所述程序升级标志位的属性值为所述预设值,则判断出存在所述空调系统的控制器的待升级程序;
第三判断子模块,用于若所述程序升级标志位的属性值不为所述预设值,则判断出不存在所述空调系统的控制器的待升级程序,控制所述控制器进入正常的程序运行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510731444.7A CN105354059A (zh) | 2015-10-29 | 2015-10-29 | 空调系统的控制器的升级方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510731444.7A CN105354059A (zh) | 2015-10-29 | 2015-10-29 | 空调系统的控制器的升级方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105354059A true CN105354059A (zh) | 2016-02-24 |
Family
ID=55330033
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510731444.7A Pending CN105354059A (zh) | 2015-10-29 | 2015-10-29 | 空调系统的控制器的升级方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105354059A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108427569A (zh) * | 2018-06-07 | 2018-08-21 | 合肥美菱股份有限公司 | 一种家用电冰箱在线升级控制程序的方法 |
CN108628622A (zh) * | 2018-03-28 | 2018-10-09 | 合肥凯利科技投资有限公司 | 一种电机控制器的系统及其升级方法 |
CN108710495A (zh) * | 2018-03-29 | 2018-10-26 | 北京聚利科技股份有限公司 | 电子标签程序更新方法、电子标签及存储介质 |
CN109739528A (zh) * | 2018-12-03 | 2019-05-10 | 珠海格力电器股份有限公司 | 一种设备的升级方法、装置、存储介质及终端 |
CN111562933A (zh) * | 2020-04-23 | 2020-08-21 | Tcl空调器(中山)有限公司 | 一种空调升级方法以及空调系统 |
CN113434180A (zh) * | 2021-07-13 | 2021-09-24 | 上海浦东发展银行股份有限公司 | 应用的数据处理方法、装置、服务器和存储介质 |
CN113865043A (zh) * | 2021-09-14 | 2021-12-31 | 北京小米移动软件有限公司 | 空调器的程序升级方法、装置、空调器和存储介质 |
CN116578327A (zh) * | 2023-07-12 | 2023-08-11 | 苏州浪潮智能科技有限公司 | 一种程序更新方法、装置及电子设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414264A (zh) * | 2008-11-24 | 2009-04-22 | 孙亚萍 | 一种高可靠软件版本的更新方法和三种更新方式 |
CN101699859A (zh) * | 2009-11-04 | 2010-04-28 | 四川虹微技术有限公司 | 数字电视条件接收系统解密芯片升级方法 |
CN101699398A (zh) * | 2009-10-27 | 2010-04-28 | 中兴通讯股份有限公司 | Rfid有源标签及其软件升级方法、系统 |
US20130125107A1 (en) * | 2011-11-11 | 2013-05-16 | Wyse Technology Inc. | Robust firmware update with recovery logic |
CN103473088A (zh) * | 2013-08-30 | 2013-12-25 | 北京远特科技有限公司 | 一种单片机在线升级方法和系统 |
CN104122815A (zh) * | 2014-06-26 | 2014-10-29 | 南京易周能源科技有限公司 | 一种基于arm的水文测控终端及其远程升级的方法 |
-
2015
- 2015-10-29 CN CN201510731444.7A patent/CN105354059A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414264A (zh) * | 2008-11-24 | 2009-04-22 | 孙亚萍 | 一种高可靠软件版本的更新方法和三种更新方式 |
CN101699398A (zh) * | 2009-10-27 | 2010-04-28 | 中兴通讯股份有限公司 | Rfid有源标签及其软件升级方法、系统 |
CN101699859A (zh) * | 2009-11-04 | 2010-04-28 | 四川虹微技术有限公司 | 数字电视条件接收系统解密芯片升级方法 |
US20130125107A1 (en) * | 2011-11-11 | 2013-05-16 | Wyse Technology Inc. | Robust firmware update with recovery logic |
CN103473088A (zh) * | 2013-08-30 | 2013-12-25 | 北京远特科技有限公司 | 一种单片机在线升级方法和系统 |
CN104122815A (zh) * | 2014-06-26 | 2014-10-29 | 南京易周能源科技有限公司 | 一种基于arm的水文测控终端及其远程升级的方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108628622A (zh) * | 2018-03-28 | 2018-10-09 | 合肥凯利科技投资有限公司 | 一种电机控制器的系统及其升级方法 |
CN108710495A (zh) * | 2018-03-29 | 2018-10-26 | 北京聚利科技股份有限公司 | 电子标签程序更新方法、电子标签及存储介质 |
CN108427569A (zh) * | 2018-06-07 | 2018-08-21 | 合肥美菱股份有限公司 | 一种家用电冰箱在线升级控制程序的方法 |
CN109739528A (zh) * | 2018-12-03 | 2019-05-10 | 珠海格力电器股份有限公司 | 一种设备的升级方法、装置、存储介质及终端 |
CN109739528B (zh) * | 2018-12-03 | 2020-12-15 | 珠海格力电器股份有限公司 | 一种设备的升级方法、装置、存储介质及终端 |
CN111562933A (zh) * | 2020-04-23 | 2020-08-21 | Tcl空调器(中山)有限公司 | 一种空调升级方法以及空调系统 |
CN113434180A (zh) * | 2021-07-13 | 2021-09-24 | 上海浦东发展银行股份有限公司 | 应用的数据处理方法、装置、服务器和存储介质 |
CN113865043A (zh) * | 2021-09-14 | 2021-12-31 | 北京小米移动软件有限公司 | 空调器的程序升级方法、装置、空调器和存储介质 |
CN116578327A (zh) * | 2023-07-12 | 2023-08-11 | 苏州浪潮智能科技有限公司 | 一种程序更新方法、装置及电子设备和存储介质 |
CN116578327B (zh) * | 2023-07-12 | 2023-11-03 | 苏州浪潮智能科技有限公司 | 一种程序更新方法、装置及电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105354059A (zh) | 空调系统的控制器的升级方法及装置 | |
CN106528106B (zh) | 一种自适应各种不同Flash芯片类型的嵌入式系统启动方法 | |
US7222214B2 (en) | Device-level address translation within a programmable non-volatile memory device | |
CN103473067A (zh) | 嵌入式Linux分区与数据还原方法、系统及系统开发方法 | |
CN105144074A (zh) | 使用混合存储器设备的块存储 | |
CN103745167B (zh) | 单片机的iap方法及装置 | |
CN104809009A (zh) | 一种汽车电控单元的程序加载引导方法 | |
CN108509215B (zh) | 一种系统软件的更换方法、装置、终端设备及存储介质 | |
CN103984910A (zh) | 一种系统分区隐藏方法 | |
CN104572387A (zh) | 一种工程模式下调试终端的方法及装置 | |
CN105468405A (zh) | 一种应用程序的安装处理方法及装置 | |
CN109582332B (zh) | 互联网摄像机的系统升级方法及装置 | |
CN106201608A (zh) | 计算机uefi固件更新方法 | |
CN114138527A (zh) | 一种提高服务器性能的方法、装置及介质 | |
CN109766140A (zh) | 一种机顶盒启动异常的定位方法及装置 | |
CN103226505A (zh) | 一种校验基本输入输出系统bios的方法及设备 | |
CN104536955A (zh) | Pc机配置机器语言、字库以及翻译文件的方法及系统 | |
CN104428751A (zh) | 程序数据的更新方法及设备 | |
CN105468390A (zh) | Boot在线升级装置及方法 | |
CN102446101A (zh) | 固件强制升级的系统及其固件的强制升级方法 | |
CN103455750B (zh) | 一种嵌入式设备的高安验证方法及装置 | |
CN105677409A (zh) | 一种系统升级方法及装置 | |
CN105095101A (zh) | 向存储器写入数据的方法及装置、智能卡 | |
CN105279043A (zh) | 一种对单片机软件错误进行恢复的方法及系统 | |
CN103809988A (zh) | 一种信息处理方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20160224 |