软件升级方法及装置、空调控制面板与流程

文档序号:26501362发布日期:2021-09-04 02:39阅读:398来源:国知局
软件升级方法及装置、空调控制面板与流程

1.本公开涉及软件技术领域,特别涉及一种软件升级方法及装置、空调控制面板。


背景技术:

2.随着驻车空调技术的愈发成熟,越来越多的货车已经加装了驻车空调。驻车空调的日常维护中对驻车空调进行升级软件是其中的重要一项。
3.驻车空调中有多个嵌入式设备如:空调控制面板、空调系统控制器和压缩机控制器等,这意味着对驻车空调进行升级软件同时涉及到对空调控制面板、空调系统控制器和压缩机控制器的软件进行升级。


技术实现要素:

4.本公开实施例提供了一种软件升级方法及装置、空调控制面板。所述技术方案如下:
5.本公开至少一实施例提供了一种软件升级方法,所述方法包括:
6.第一控制器接收终端通过无线传输发送的更新数据,所述更新数据包括更新目标参数和软件数据;
7.基于所述更新目标参数,确定更新目标是否为所述第一控制器;
8.当所述更新目标为所述第一控制器时,采用所述软件数据对所述第一控制器的软件进行升级;
9.当所述更新目标为第二控制器时,将所述软件数据通过有线传输发送给所述第二控制器,以使所述第二控制器基于所述软件数据进行升级,所述第二控制器和所述第一控制器总线连接。
10.可选地,所述将所述软件数据通过有线传输发送给所述第二控制器,包括:
11.在所述第一控制器与所述第二控制器握手成功后,发送擦除命令,所述擦除命令用于指示所述第二控制器擦除应用程序区中的软件数据;
12.在所述应用程序区中的软件数据擦除成功后,发送所述软件数据,所述第二控制器用于接收所述软件数据并存储在所述应用程序区中;
13.在所述软件数据发送成功后,发送更新结束命令;
14.在所述更新结束命令发送成功后,发送跳转命令,所述跳转命令用于指示所述第二控制器跳转至所述应用程序区并运行其中的软件数据。
15.可选地,所述软件数据包括多行代码,所述发送所述软件数据,包括:
16.将所述多行代码逐行向所述第二控制器发送,并且在每一行代码发送成功后,发送下一行代码。
17.可选地,所述方法还包括:
18.在握手失败、软件数据擦除失败、软件数据发送失败、更新结束命令发送失败或跳转命令发送失败的失败次数超过阈值时,确定所述第一控制器与所述第二控制器的通信中
断,退出更新模式。
19.可选地,所述接收终端通过无线传输发送的更新数据,包括:
20.接收所述终端发送的所述更新目标参数、更新的文件长度和更新开始命令;
21.将所述更新目标参数、更新的文件长度存储在控制器参数区;
22.接收所述终端发送的软件数据;
23.将所述软件数据存储在更新程序备份区。
24.可选地,所述采用所述软件数据对所述第一控制器的软件进行升级,包括:
25.擦除应用程序区中的软件数据;
26.将所述更新程序备份区中的软件数据复制到所述应用程序区中;
27.确定擦除和复制是否成功;
28.当擦除和复制成功时,跳转至所述应用程序区并运行其中的软件数据。
29.可选地,所述方法还包括:
30.当擦除和复制不成功时,确定擦除和复制的重复次数;
31.当擦除和复制的次数不超过阈值时,重新判断所述软件数据的传输是否结束;
32.在所述软件数据的传输结束的情况下,重新判断更新目标是否为所述第一控制器。
33.可选地,所述方法还包括:
34.在所述更新目标为所述第一控制器,且所述第一控制器所属的设备重新上电时,重新判断所述软件数据的传输是否结束;
35.在所述软件数据的传输结束的情况下,重新判断更新目标是否为所述第一控制器。
36.本公开至少一实施例提供了一种软件升级装置,所述装置包括:
37.接收模块,用于接收终端通过无线传输发送的更新数据,所述更新数据包括更新目标参数和软件数据;
38.确定模块,用于基于所述更新目标参数,确定更新目标是否为第一控制器;
39.升级模块,用于当所述更新目标为所述第一控制器时,采用所述软件数据对所述第一控制器的软件进行升级;
40.发送模块,用于当所述更新目标为第二控制器时,将所述软件数据通过有线传输发送给所述第二控制器,以使所述第二控制器基于所述软件数据进行升级,所述第二控制器和所述第一控制器总线连接。
41.本公开至少一实施例提供了一种空调控制面板,所述空调控制面板包括处理器和存储器,所述存储器存储有至少一条程序代码,所述程序代码由所述处理器加载并执行以实现如前任一项所述的软件升级方法。
42.本公开至少一实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现如前任一项所述的软件升级方法。
43.本公开实施例提供的技术方案带来的有益效果是:
44.本公开实施例通过第一控制器无线接收更新数据,然后基于更新数据中的更新目标参数确定更新的目标是第一控制器还是第二控制器,如果是第一控制器则直接利用软件
数据进行软件更新,如果是第二控制器则将软件数据有线发送给第二控制器,从而实现第二控制器的软件升级。该方案在对软件升级时,不用人工区分需要进行软件升级的控制器,也不用和不同的控制器进行连接,整个过程都由第一控制器自动执行,实现第一控制器、第二控制器的软件升级,简单方便;同时,该方案只需要第一控制器能够进行无线传输即可,因此只需要在第一控制器上设置无线传输模组,第二控制器上无需设置,节省了硬件成本。
附图说明
45.为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
46.图1是本公开实施例提供的一种软件升级系统的结构示意图;
47.图2是本公开实施例提供的空调控制面板中存储器的分区示意图;
48.图3是本公开实施例提供的一种软件升级方法流程图;
49.图4是本公开实施例提供的一种软件升级方法流程图;
50.图5是本公开实施例提供的空调控制面板的软件升级流程图;
51.图6是本公开实施例提供的压缩机控制器的软件升级流程图;
52.图7是本公开实施例提供的一种软件升级装置的结构示意图;
53.图8示出了本公开一个示例性实施例提供的电子设备的结构框图。
具体实施方式
54.为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
55.除非另作定义,此处使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开专利申请说明书以及权利要求书中使用的“第一”、“第二”、“第三”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”或者“一”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现在“包括”或者“包含”前面的元件或者物件涵盖出现在“包括”或者“包含”后面列举的元件或者物件及其等同,并不排除其他元件或者物件。
56.相关技术中,空调的软件升级既有通过有线通信(例如通过电脑对空调的控制器进行软件刷写)实现的,也有通过无线通信实现的。但无论以何种通信方式实现,不同嵌入式设备的软件升级过程都是分开的。以无线通信为例,要对空调控制面板的软件进行升级,则需要和空调控制面板进行无线通信,要对压缩机控制器的软件进行升级,则需要和压缩机控制器进行无线通信。这种方式一方面操作繁琐,另一方面需要每个嵌入式设备中都具有无线通信模块,造成空调成本升高。
57.图1是本公开实施例提供的一种空调的软件升级系统的结构示意图。参见图1,该系统包括:终端10和空调20。空调20包括空调控制面板21、空调系统控制器22和压缩机控制器23。
58.其中,空调控制面板21和终端10可以无线通信,空调控制面板21通过总线分别与空调系统控制器22和压缩机控制器23连接。
59.空调控制面板21包括无线传输装置211和处理装置212,无线传输装置211用于和终端10无线通信。
60.示例性地,终端10为移动终端,例如手机。无线传输装置211为蓝牙模块,例如蓝牙4.0模块,如利尔达蓝牙4.0的lsd4bt

p74mlsp2模块。手机通过手机蓝牙模块和空调控制面板21中的蓝牙模块连接。在其他实施例中,无线传输装置211为4g、5g、无线高保真(wifi)等其他无线通信模块。
61.示例性地,处理装置212为单片机,例如嵌入式单片机s9keaz128。蓝牙模块和单片机通过通用异步收发传输器(universal asynchronous receiver/transmitter,uart)总线通信。单片机通过局域互联网络(local interconnect network,lin)总线分别与空调系统控制器22和压缩机控制器23通信。在其他实施例中,单片机通过485总线或以太网等其他通信方式分别与空调系统控制器22和压缩机控制器23通信。
62.在本公开实施例中,单片机在出厂之前就将带有引导加载程序(bootloader)的软件烧录到存储器(如闪存flash)中。并且通过其.icf文件将flash划分为4个区域,如图2所示:其中从0~0x2000为bootloader程序区,空间为8k;从0x2001~0x10c00为应用程序(app)区,空间为59k;从0x10c01~0x1f800为更新程序备份(backup)区,空间为59k;从0x1f801~0x1ffff为控制器参数(parameter)区,空间为2k。
63.在本公开实施例中,手机中安装有用于进行软件升级的微信小程序,手机通过微信小程序进行软件升级流程。
64.需要说明的是,本公开实施例提供的方法不仅适用于空调的软件升级,还适用于其他设备的软件升级,在这些设备中都具有能够进行无线传输的第一控制器(或称为第一嵌入式设备,例如空调控制面板)和无法进行无线传输的第二控制器(或称为第二嵌入式设备,例如空调系统控制器和压缩机控制器),第一控制器和第二控制器通过总线连接。
65.图3是本公开实施例提供的一种软件升级方法流程图。该方法由图1中的第一控制器21执行,参见图3,该方法包括:
66.s31:接收终端通过无线传输发送的更新数据,所述更新数据包括更新目标参数和软件数据。
67.以空调为例,更新目标包括:第一控制器和第二控制器,第一控制器为空调控制面板,第二控制器为空调系统控制器和压缩机控制器,因此更新目标参数可以采用2比特表示,例如,01表示更新目标为空调控制面板,10表示更新目标为空调系统控制器,11表示更新目标为压缩机控制器。
68.在本公开实施例中,软件数据为hex文件,hex文件格式是可以烧写到单片机中,被单片机执行的一种文件格式。传输时,将hex文件中的代码逐行进行传输。
69.s32:基于所述更新目标参数,确定更新目标是否为所述第一控制器。
70.当所述更新目标为所述第一控制器时,执行步骤s33。当所述更新目标为第二控制器时,执行步骤s34。
71.s33:采用所述软件数据对所述第一控制器的软件进行升级。
72.s34:将所述软件数据通过有线传输发送给所述第二控制器,以使所述第二控制器
基于所述软件数据进行升级。
73.本公开实施例通过第一控制器无线接收更新数据,然后基于更新数据中的更新目标参数确定更新的目标是第一控制器还是第二控制器,如果是第一控制器则直接利用软件数据进行软件更新,如果是第二控制器则将软件数据有线发送给第二控制器,从而实现第二控制器的软件升级。该方案在对软件升级时,不用人工区分需要进行软件升级的控制器,也不用和不同的控制器进行连接,整个过程都由第一控制器自动执行,实现第一控制器、第二控制器的软件升级,简单方便;同时,该方案只需要第一控制器能够进行无线传输即可,因此只需要在第一控制器上设置无线传输模组,第二控制器上无需设置,节省了硬件成本。
74.下面以图1中空调的各个嵌入式设备的软件升级为例,对本公开实施例提供的软件升级方法进行说明。其中,由于空调系统控制器22和压缩机控制器23在该方法中扮演的角色相同,因此,下面的实施例中仅以压缩机控制器23为例进行说明,空调系统控制器22软件升级的过程和压缩机控制器23相同。
75.图4是本公开实施例提供的一种空调的软件升级方法流程图。该方法由图1中的终端10、空调控制面板21和压缩机控制器23执行,参见图4,该方法包括:
76.s41:终端和空调控制面板建立蓝牙连接。
77.在本公开实施例中,终端通过微信小程序与空调控制面板建立蓝牙连接。
78.s42:终端确定各个嵌入式设备的软件版本信息。
79.终端从空调控制面板获取各个嵌入式设备的软件版本信息。
80.在一种可能的实现方式中,该软件版本信息可以存储在空调控制面板的控制器参数区。在建立蓝牙连接后,空调控制面板将控制器参数区中的软件版本信息发送给终端。
81.其中,软件版本信息包括空调控制面板、空调系统控制器和压缩机控制器三个设备中的软件版本,其中,空调系统控制器或压缩机控制器的软件版本既可以是空调控制面板协助空调系统控制器或压缩机控制器进行软件升级时记录的,也可以是空调控制面板和空调系统控制器或压缩机控制器进行交互获取到的。软件版本可以从软件升级时的软件数据中获取到。
82.s43:终端基于各个嵌入式设备的软件版本信息确定更新目标。
83.终端查询到该软件版本信息后,与终端内各个设备最新的软件的版本比较,确定是否存在不同。如果完全一致,则无需进行更新,结束该流程。
84.如果不是完全一致,则确定软件版本不一致的设备,确定出的设备即为更新目标。需要说明的是,这里确定出的更新目标可以为1个、2个或3个,当个数大于1时,后续更新过程是逐个更新的,也即对每个目标进行更新都需要执行后续步骤s44

s51的过程。
85.s44:终端向空调控制面板发送擦除命令;空调控制面板接收该擦除命令。
86.s45:空调控制面板基于该擦除命令擦除控制参数区和更新程序备份区的数据。
87.空调控制面板在执行擦除命令时,执行擦除的软件会记录擦除是否成功,当擦除成功时,空调控制面板向终端发送擦除成功指示,告知终端擦除成功;当擦除失败时,空调控制面板向终端发送擦除失败指示,告知终端擦除失败。
88.s46:在空调控制面板擦除成功时,终端向空调控制面板发送更新目标参数、更新的文件长度和更新开始命令。空调控制面板接收更新目标参数、更新的文件长度和更新开始命令,并存储在控制参数区。
89.如前所述,在确定出更新目标后,确定更新目标对应的hex文件,更新的文件长度即为该hex文件的长度。
90.可选地,空调控制面板接收到更新开始命令后,进入更新模式,在面板上通过更新标识对用户进行指示,例如显示“up”字样。
91.s47:终端向空调控制面板发送软件数据;空调控制面板接收软件数据,并存储在更新程序备份区。
92.示例性地,所述软件数据包括多行代码,所述发送所述软件数据,包括:
93.将所述多行代码逐行向所述空调系统控制器或压缩机控制器发送,并且在每一行代码发送成功后,发送下一行代码。
94.在本公开实施例中,空调控制面板每接收到一行代码,都会向终端发送一次接收成功标识,终端在接收到接收成功标识后,才进行下一行代码的发送。如果终端超过设定时长(例如30秒)未接收到接收成功标识,说明发送超时或失败,则重复发送上一次发送的代码,如果连续多次(例如10次)未接收到接收成功标识,则说明蓝牙断开或空调控制面板掉电,此时结束该流程,终端的微信小程序可以输出更新失败提示。
95.如果空调控制面板超过设定时长(例如30秒)未接收到代码,则向终端发送接收失败标识,如果连续发送多次(例如10次)接收失败标识,则结束该流程,退出更新模式。
96.s48:当软件数据发送结束时,终端向空调控制面板发送传输结束标识;空调控制面板接收该传输结束标识,并存储在控制参数区。
97.s49:在传输结束后,空调控制面板基于所述更新目标参数,确定更新目标是否为所述空调控制面板。
98.空调控制面板会周期性地检查控制参数区,在控制参数区中检查到传输结束标识时,执行步骤s49。此时空调控制面板查询的制器参数区存储的更新目标参数的位置,基于更新目标参数确定更新目标。
99.当所述更新目标为所述空调控制面板时,执行步骤s50。当所述更新目标为空调系统控制器或压缩机控制器时,执行步骤s51。
100.可选地,所述方法还包括:
101.在所述更新目标为所述空调控制面板,且所述空调重新上电时,重新判断所述软件数据的传输是否结束;在所述软件数据的传输结束的情况下,重新判断更新目标是否为所述空调控制面板。
102.这里的空调重新上电可能是用户操作或者意外产生的,空调重新上电后跳转至bootloader程序,然后判断传输是否结束以及更新目标。
103.s50:空调控制面板采用所述软件数据对所述空调控制面板的软件进行升级。
104.如更新目标为空调控制面板,则空调控制面板跳回bootloader中,在bootloader中将更新程序备份区中的软件数据复制到应用程序区,复制完成后调转到应用程序区即完成了对空调控制面板的软件更新升级。
105.s51:空调控制面板将所述软件数据发送给压缩机控制器,以使压缩机控制器基于所述软件数据进行升级。
106.如更新目标为压缩机控制器,则空调控制面板跳回bootloader中,在bootloader中空调控制面板通过lin通信将存储在更新程序备份区的软件数据发送给压缩机控制器
中,从而实现了对压缩机控制器的软件更新升级。
107.下面通过图5对步骤s50的详细过程进行说明。图5是本公开实施例提供的空调控制面板的软件升级流程图。该方法由空调控制面板执行,参见图5,该方法包括:
108.s61:擦除应用程序区中的软件数据。
109.空调控制面板中执行擦除的软件会记录擦除是否成功。
110.s62:将所述更新程序备份区中的软件数据复制到所述应用程序区中。
111.复制时,将软件数据中代码逐行复制到应用程序区中。每复制一行都需要确定复制是否成功,确定复制是否成功。空调控制面板中执行复制的软件会记录复制是否成功,在该步骤中,确定复制是否成功包括:先基于执行复制的软件的记录确定复制是否成功,在执行复制的软件的记录指示复制成功时,将该行代码读取到缓存中和更新程序备份区中的对应代码进行比较,若完全一致,则复制成功,否则复制失败。
112.在上述复制过程中,通过计数器记录已经复制的代码量,当计数器的值和更新的文件长度相等时,复制结束。
113.s63:确定擦除和复制是否成功。当擦除和复制成功时,执行步骤s64;当擦除和复制不成功时,执行步骤s65。
114.当擦除和复制中有一项不成功则表示擦除和复制不成功,当擦除和复制均成功则表示擦除和复制成功。
115.s64:跳转至所述应用程序区并运行其中的软件数据。
116.在擦除和复制成功时除了跳转到应用程序区外,还可以复位更新标识,例如不再在面板上通过更新标识对用户进行指示,例如不再显示“up”字样。
117.s65:确定擦除和复制的次数。
118.这里擦除和复制的次数是指,擦除重复次数和复制中重复次数中较多的次数。例如,一次擦除、三次复制,则擦除和复制的次数为3。
119.在本公开中,各种动作重复的次数,都通过对应的计数器来记录,例如擦除的重复次数采用一个计数器进行记录。
120.s66:当擦除和复制的次数不超过阈值时,重新判断所述软件数据的传输是否结束。
121.示例性地,阈值为3次。
122.当擦除和复制的次数超过阈值时,空调控制面板停留在bootloader程序,并结束更新。此时,空调控制面板还可以向终端反馈空调控制面板软件升级失败消息,从而便于用户进行硬件检修。
123.s67:在所述软件数据的传输结束的情况下,重新判断更新目标是否为所述空调控制面板。
124.当所述更新目标为所述空调控制面板时,执行步骤s50。当所述更新目标为空调系统控制器或压缩机控制器时,执行步骤s51。
125.下面通过图6对步骤s51的详细过程进行说明。图6是本公开实施例提供的压缩机控制器的软件升级流程图。该方法由空调控制面板和压缩机控制器执行,参见图6,该方法包括:
126.s71:空调控制面板和压缩机控制器进行握手。
127.示例性地,空调控制面板和压缩机控制器进行握手包括:空调控制面板向压缩机控制器发送握手命令,压缩机控制器接收握手命令并返回握手应答。
128.例如,空调控制面板收到握手应答,则确定握手成功,此时执行步骤s72;如果没有接收到握手应答,则确定握手失败,重新发送握手命令。如果多次(例如3次)握手失败,则与压缩机控制器的通信中断,退出更新模式。
129.s72:空调控制面板在握手成功后,发送擦除命令。压缩机控制器接收该擦除命令。
130.s73:压缩机控制器擦除应用程序区中的软件数据。
131.压缩机控制器进行擦除以及判断擦除是否成功的方式和空调控制面板相同,参照步骤s45。
132.s74:压缩机控制器在应用程序区擦除成功后,发送擦除成功指示;空调控制面板接收擦除成功指示。
133.示例性地,空调控制面板接收到擦除成功指示,则确定应用程序区擦除成功,此时执行步骤s74;如果没有接收到擦除成功指示,则确定擦除失败,重新发送擦除命令。如果多次(例如3次)擦除失败,则与压缩机控制器的通信中断,退出更新模式。
134.s75:在所述应用程序区中的软件数据擦除成功后,空调控制面板发送所述软件数据;压缩机控制器接收该软件数据,并存储在所述应用程序区中。
135.空调控制面板发送软件数据以及软件数据发送是否成功的方式和终端相同,参照步骤s47。
136.s76:在所述软件数据发送成功后,空调控制面板发送更新结束命令;压缩机控制器接收该更新结束命令。
137.示例性地,空调控制面板接收到接收成功标识,则确定一行代码发送成功,此时发送下一行代码,直到所有代码发送完成;如果没有接收到接收成功标识,则一行代码发送失败,重新发送该行代码。如果多次(例如3次)发送一行代码失败,则与压缩机控制器的通信中断,退出更新模式。
138.s77:在所述更新结束命令发送成功后,空调控制面板发送跳转命令;压缩机控制器接收该跳转命令。
139.示例性地,空调控制面板接收到更新结束命令的接收成功指示,则确定更新结束命令发送成功,此时执行步骤s77;如果没有接收到更新结束命令的接收成功指示,则确定更新结束命令发送失败,重新发送更新结束命令。如果多次(例如3次)发送更新结束命令失败,则与压缩机控制器的通信中断,退出更新模式。
140.s78:压缩机控制器跳转至所述应用程序区并运行其中的软件数据。
141.示例性地,空调控制面板接收到跳转命令的接收成功指示,则确定跳转命令发送成功,空调控制面板可以复位更新标识,例如不再在面板上通过更新标识对用户进行指示,例如不再显示“up”字样,同时退出更新模式;
142.如果没有接收到跳转命令的接收成功指示,则确定跳转命令发送失败,重新发送跳转命令。如果多次(例如3次)发送跳转命令失败,则与压缩机控制器的通信中断,退出更新模式。
143.图7是本公开实施例提供的一种软件升级装置的结构示意图。参见图7,该装置包括接收模块801、确定模块802、升级模块803和发送模块804。
144.其中,接收模块801用于接收终端通过无线传输发送的更新数据,所述更新数据包括更新目标参数和软件数据;
145.确定模块802用于基于所述更新目标参数,确定更新目标是否为第一控制器;
146.升级模块803用于当所述更新目标为所述第一控制器时,采用所述软件数据对所述第一控制器的软件进行升级;
147.发送模块804用于当所述更新目标为第二控制器时,将所述软件数据通过有线传输发送给所述第二控制器,以使所述第二控制器基于所述软件数据进行升级,所述第二控制器和所述第一控制器总线连接。
148.可选地,发送模块804用于在所述第一控制器与所述第二控制器握手成功后,发送擦除命令,所述擦除命令用于指示所述第二控制器擦除应用程序区中的软件数据;在所述应用程序区中的软件数据擦除成功后,发送所述软件数据,所述第二控制器用于接收所述软件数据并存储在所述应用程序区中;在所述软件数据发送成功后,发送更新结束命令;在所述更新结束命令发送成功后,发送跳转命令,所述跳转命令用于指示所述第二控制器跳转至所述应用程序区并运行其中的软件数据。
149.可选地,所述软件数据包括多行代码,所述发送模块804用于将所述多行代码逐行向所述第二控制器发送,并且在每一行代码发送成功后,发送下一行代码。
150.可选地,确定模块802还用于在握手失败、软件数据擦除失败、软件数据发送失败、更新结束命令发送失败或跳转命令发送失败的失败次数超过阈值时,确定所述第一控制器与所述第二控制器的通信中断,退出更新模式。
151.可选地,接收模块801用于接收所述终端发送的所述更新目标参数、更新的文件长度和更新开始命令;将所述更新目标参数、更新的文件长度存储在控制器参数区;接收所述终端发送的软件数据;将所述软件数据存储在更新程序备份区。
152.可选地,升级模块803用于擦除应用程序区中的软件数据;将所述更新程序备份区中的软件数据复制到所述应用程序区中;确定擦除和复制是否成功;当擦除和复制成功时,跳转至所述应用程序区并运行其中的软件数据。
153.可选地,确定模块802还用于当擦除和复制不成功时,确定擦除和复制的重复次数;当擦除和复制的次数不超过阈值时,重新判断所述软件数据的传输是否结束;在所述软件数据的传输结束的情况下,重新判断更新目标是否为所述第一控制器。
154.可选地,确定模块802还用于在所述更新目标为所述第一控制器,且所述第一控制器所属的设备重新上电时,重新判断所述软件数据的传输是否结束;在所述软件数据的传输结束的情况下,重新判断更新目标是否为所述第一控制器。
155.需要说明的是:上述实施例提供的软件升级装置在升级软件时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的软件升级装置与软件升级方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
156.图8示出了本公开一个示例性实施例提供的电子设备的结构框图。该电子设备可以为空调控制面板。通常,电子设备包括有:处理器901和存储器902。
157.处理器901可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处
理器901可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器901也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。
158.存储器902可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器902还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器902中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器901所执行以实现本申请中方法实施例提供的软件升级方法。
159.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
160.以上所述仅为本公开的可选实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1