【技术实现步骤摘要】
一种嵌入式设备集群的固件升级方法、装置和系统
[0001]本专利技术涉及固件升级领域,尤其涉及一种嵌入式设备集群的固件升级方法
、
装置
、
系统
、
电子设备
、
计算机可读存储介质和芯片
。
技术介绍
[0002]随着物联网技术的快速发展及可穿戴式智能设备的普及,在越来越多的应用场景中,需要由多个嵌入式设备组成嵌入式设备集群,共同完成各应用场景下的功能需求
。
[0003]目前,在对嵌入式设备集群中每个嵌入式设备的固件进行升级时,上位机在获取到升级包后,上位机基于蓝牙协议与嵌入式设备集群中的嵌入式设备建立一对一的通信连接,上位机串行对嵌入式设备进行固件升级,使得上位机对嵌入式设备集群中的多个设备进行升级的时候,升级效率低
。
且所有的待升级嵌入式设备通常会加载同一升级包,该升级包由每个待升级嵌入式设备升级所需的升级资源组合而成
。
当嵌入式设备集群中的嵌入式设备需要升级的时候,所有需要升级的嵌入式设备都会下载这一升级包中的全部升级资源,使得下载的数据量大
、
下载效率低,进而导致升级效率低
。
[0004]因此,如何提高嵌入式设备集群的固件的升级效率成了一个亟待解决的问题
。
技术实现思路
[0005]基于上述现状,本专利技术的主要目的在于提供一种嵌入式设备集群的固件升级方法
、
装置
、
系统
、< ...
【技术保护点】
【技术特征摘要】
1.
一种嵌入式设备集群的固件升级方法,其特征在于,应用于上位机,所述方法包括:
S110
,接收嵌入式设备集群中的嵌入式设备发送的蓝牙广播包,其中,所述蓝牙广播包包括第一标识信息,所述第一标识信息用于标识所述嵌入式设备的种类;
S120
,若所述第一标识信息属于预设多种待升级嵌入式设备中其中一种设备的标识信息,与作为待升级嵌入式设备的所述嵌入式设备建立
BLE
连接;
S130
,通过
BLE
将与所述第一标识信息对应的升级文件发送给所述待升级嵌入式设备,以使所述待升级嵌入式设备通过所述升级文件升级其固件
。2.
根据权利要求1所述的方法,其特征在于,嵌入式设备集群具有
M
个所述嵌入式设备,其中
M
为正整数,
M≥1
;所述
S110
包括:
S111
,接收第
i
个嵌入式设备发送的蓝牙广播包,其中
i
为正整数,
1≤i≤M
,
i
的初始值为1;所述
S120
包括:若所述第
i
个嵌入式设备发送的蓝牙广播包中的第一标识信息属于所述多种待升级嵌入式设备中其中一种设备的标识信息,与作为所述待升级嵌入式设备的所述第
i
个嵌入式设备建立
BLE
连接,对
i
自加1并转至步骤
S111
,直至
i
=
M。3.
根据权利要求1所述的固件升级方法,其特征在于,在所述
S130
之后,所述方法还包括:
S140
,接收由所述待升级嵌入式设备发送的固件升级完成信息;
S150
,将所述待升级嵌入式设备加入已升级设备列表
。4.
根据权利要求3所述的固件升级方法,其特征在于,所述蓝牙广播包还包括第二标识信息,所述第二标识信息用于标识每个嵌入式设备;所述
S150
包括:将发送所述固件升级完成信息的所述待升级嵌入式设备的第二标识信息加入所述已升级设备列表;所述
S120
包括:
S122
若所述第一标识信息属于所述多种待升级嵌入式设备中其中一种设备的标识信息且所述第二标识信息不位于所述已升级设备列表,则与作为所述待升级嵌入式设备的所述嵌入式设备建立
BLE
连接
。5.
根据权利要求4所述的方法,其特征在于,嵌入式设备集群具有
M
个所述嵌入式设备,其中
M
为正整数,
M≥1
;所述
S110
包括:
S112
,接收第
i
个嵌入式设备发送的蓝牙广播包,其中
i
为正整数,
1≤i≤M
,
i
的初始值为1;所述
S122
包括:判断所述第
i
个嵌入式设备发送的蓝牙广播包中的第一标识信息是否属于所述多种待升级嵌入式设备中其中一种设备的标识信息;若属于,则判断所述第
i
个嵌入式设备发送的蓝牙广播包中的第二标识信息是否位于所述已升级设备列表;若不位于,则与所述待升级嵌入式设备的所述第
i
个嵌入式设备建立
BLE
连接,对
i
自加1并转至步骤
S112
,直至
i
=
M。6.
根据权利要求1所述的方法,其特征在于,所述升级文件包括前级装载程序和多个子装载程序,所述前级装载程序用于加载子装载程序,所述前级装载程序包括与所述预设多种待升级嵌入式设备对应的多个子装载程序列表,每个子装载程序列表中记录有多个子装载程序标识,所述多个子装载程序用于升级与记录其标识的列表所对应的待升级嵌入式设备中的多个待升级固件;所述
S130
包括:通过
BLE
将所述前级装载程序发送给所述待升级嵌入式设备以使所述待升级嵌入式设备通过与其对应的所述子装载程序列表中的所述多个子装载程序标识从
所述多个子装载程序中拉取与其对应的子装载程序,以升级其固件
。7.
根据权利要求1~6中任意一项所述的方法,其特征在于,在所述
S110
之前,所述方法还包括:通过
big
或
cig
蓝牙通讯方式向嵌入式设备集群发送指令,以使所述嵌入式设备集群中的嵌入式设备将蓝牙通讯方式从
big
或
cig
切换为
BLE。8.
一种嵌入式设备集群的固件升级方法,应用于嵌入式设备,其特征在于,所述方法包括:
S210
,发送包含第一标识信息的蓝牙广播包以使上位机根据所述第一标识信息确定所述嵌入式设备的种类是否为待升级嵌入式设备中的一种,其中,所述第一标识信息用于标识所述嵌入式设备的种类;
S220
,在所述上位机识别所述嵌入式设备为待升级嵌入式设备后,与所述上位机进行
BLE
连接;
S230
,通过
BLE
从所述上位机中获取与所述第一标识信息对应的升级文件并通过所述升级文件升级所述待升级嵌入式设备中的固件
。9.
根据权利要求8所述的方法,其特征在于,在所述
S230
之后,所述方法还包括:
S240
,通过
BLE
向所述上位机发送固件升级完成信息以使所述上位机将所述嵌入式设备加入已升级设备列表
。10.
根据权利要求9所述的固件升级方法,其特征在于,所述
S240
包括:通过
BLE
向所述上位机发送固件升级完成信息以使所述上位机将所述嵌入式设备的第二标识信息加入已升级设备列表,其中,所述第二标识信息用于标识每个嵌入式设备;所述
S210
包括:发送包含所述第一标识信息和所述第二标识信息的蓝牙广播包以使所述上位机根据所述第一标识信息
、
所述第二标识信息和所述已升级设备列表确定所述嵌入式设备为所述待升级嵌入式设备
。11.
根据权利要求8所述的方法,其特征在于,所述
S230
包括:
S231
,通过
BLE
从所述上位机获取前级装载程序,所述前级装载程序包括与多种待升级嵌入式设备对应的多个子装载程序列表,每个子装载程序列表中记录有多个子装载程序标识;
S232
,运行所述前级装载程序以从所述多个子装载程序列表中查找到与所述第一标识信息对应的子装载程序列表;
S233
,根据所述子装载程序列表中记录的子装载程序标识,通过
BLE
从所述上位机中拉取与所述子装载程序标识对应的子装载程序;
S234
,运行所述子装载程序,以升级所述嵌入式设备中与所述子装载程序对应的固件
。12.
根据权利要求8所述的方法,其特征在于,在所述
S210
之前,所述方法还包括:通过
big
或
cig
蓝牙通讯方式接收来自所述上位机的指令,基于所述指令将蓝牙通讯方式从
big
或
cig
蓝牙通讯方式切换为
BLE。13.
根据权利要求
11
所述的方法,其特征在于,所述
S231
包括:
S2311
,通过
BLE
从所述上位机获取所述前级装载程序,并将至少部分前级装载程序存储在可擦写非易失性存储器中;
S2312
,将所述前级装载程序加载至
RAM
;所述
S232
包括:在所述
RAM
中运行所述前级装载程序以从所述多个子装载程序列表中
查找到与所述第一标识信息对应的子装载程序列表;所述
S233
包括:
S2332
,根据所述子装载程序列表中记录的子装载程序标识,通过
BLE
从所述上位机中拉取与所述子装载程序标识对应的子装载程序;
S2334
,将所述与所述子装载程序标识对应的子装载程序加载至所述
RAM
中;所述
S234
包括:在所述
RAM
中运行所述子装载程序,以升级所述嵌入式设备中与所述子装载程序对应的固件
。14.
根据权利要求
13
所述的方法,其特征在于,所述前级装载程序包括第一装载程序和第二装载程序,所述第二装载程序包括与多种待升级嵌入式设备对应的多个子装载程序列表;所述
S2311
包括:
S2311a
,通过
BLE
从所述上位机获取所述第一装载程序,并将所述第一装载程序存储在所述可擦写非易失性存储器中;
S2311b
,运行所述第一装载程序,以从所述上位机获取所述第二装载程序;所述
S2312
包括:将所述第二装载程序加载至所述
RAM
;所述
S232
包括:在所述
RAM
中运行所述第二装载程序,以从所述多个子装载程序列表中查找到与所述第一标识信息对应的子装载程序列表
。15.
根据权利要求
14
所述的方法,其特征在于,所述第一装载程序由通信接口代码和第一加载代码组成,其中,所述通信接口代码用于实现所述嵌入式设备和所述上位机的通信接口,所述第一加载代码用于通过所述通信接口从所述上位机获取所述第二装载程序
。16.
根据权利要求
13
所述的方法,其特征在于,所述嵌入式设备的固件包括引导程序
、
应用程序
、
程序资源中的一个或多个,与所述嵌入式设备对应的子装载程序列表中按顺序记录有
N
个子装载程序标识,其中
N
为正整数,
N≥1
;所述
S2332
包括:根据所述子装载程序列表中记录的第
i
个子装载程序标识,通过
BLE
从所述上位机中拉取所述第
i
个子装载程序标识所对应的子装载程序,其中
i
为正整数,
1≤i≤N
,
i
的初始值为1;所述
S2334
包括:将所述第
i
个子装载程序标识所对应的第
i
个子装载程序加载至所述
RAM
中;所述
S234
包括:在所述
RAM
中运行所述第
i
个子装载程序,以从所述上位机中获取与所述第
i
个子装载程序对应的第
i
个固件的升级数据从而升级所述嵌入式设备中与所述第
i
个子装载程序对应的固件;在所述
S234
之后,所述方法还包括
S235
:对
i
自加1并转至
S2332
,直至
i
=
N。17.
根据权利要求
16
所述的方法,其特征在于,在所述
S2311
之后,所述方法还包括:在所述
RAM
中设置标志位,其中,所述标志位在掉电时会被删除;所述
S232
包括:
S2321
,运行引导程序,以判断所述
RAM
中是否存在标志位;
S2323
,若所述引导程序判断所述
RAM
中存在标志位,在所述
RAM
中运行所述...
【专利技术属性】
技术研发人员:凌煊峰,姚棉鸿,
申请(专利权)人:珠海市杰理科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。