一种基于USB的固件烧录方法、系统及终端与流程

文档序号:14923599发布日期:2018-07-13 08:12

本发明涉及固件烧录领域,特别是针对多个DFU设备,涉及一种基于USB端口的并行烧录方法、烧录系统及烧录终端。



背景技术:

固件烧录,也可以称为固件更新、固件刷新或固件刷机等,是指把新的固件程序写入到设备的固件内存中。在电子产品的生产阶段,都需要对设备固件烧录程序,例如DFU(Device Firmware Update)设备,其固件可以更新或升级。对固件的烧录方式主要有两种:一种是通过PC机的USB端口直接给连接的设备进行烧录,另一种是用烧录机来给设备固件进行烧录。由于烧录机的烧录成本较高,所以行业内一般采用USB通信烧录。

目前,行业内普遍采用开发商家提供的上位机软件进行烧录,但是这种烧录工具只能进行单口串行烧录,烧录效率较低。也有人采用多口并行烧录的方式,但在进行多口并行烧录的时候,无法及时发现哪台设备烧录失败了,需要逐一排查,不仅效率低,而且使用者对设备烧录信息的统计十分不便。



技术实现要素:

为了克服现有技术的不足,本发明的目的之一在于提供一种基于USB的固件烧录方法,其能解决多口并行烧录时无法定位烧录失败设备的问题和烧录设备信息统计不便的问题。

本发明的目的之二在于提供一种基于USB的固件烧录系统,其能解决多口并行烧录时无法定位烧录失败设备的问题和烧录设备信息统计不便的问题。

本发明的目的之三在于提供一种基于USB的固件烧录终端,其能解决多口并行烧录时无法定位烧录失败设备的问题和烧录设备信息统计不便的问题。

为了达到上述目的,本发明所采用的技术方案如下:

一种基于USB的固件烧录方法,包括以下步骤;

S1:接收烧录指令;

S2:加载初始烧录文件,对所述初始烧录文件进行解析得到待烧录文件;

S3:时刻检测是否有至少一个烧录设备连接,若有,则读取每一个所述烧录设备的设备信息,然后执行步骤S4;若否,则继续检测;

S4:将与对应烧录设备对应连接的USB端口的编号与对应的烧录设备的设备信息进行关联,并通过一界面对烧录设备的设备信息与USB端口的编号进行一一对应显示;烧录所述待烧录文件并记录烧录信息;

S5:根据烧录信息,通过所述界面实时显示每一个烧录设备的烧录状态。

优选地,所述步骤S2中对初始烧录文件的解析方法如下:

S21:校验所述初始烧录文件是否完整,若是,则执行步骤S22;若否,则报错并返回执行步骤S1;

S22:根据所述烧录指令判断初始烧录文件是否需要加密,若是,则对初始烧录文件进行加密,得到待烧录文件,然后执行步骤S3;若否,则直接执行步骤S3。

优选地,步骤S5之后还包括:

S6:记录烧录过程信息并进行存储,供调用查阅。

优选地,所述步骤S3中的烧录设备信息包括烧录设备型号和通信协议版本。

一种基于USB的固件烧录系统,包括:

接收模块,用于接收烧录指令;

解析模块,用于对初始烧录文件进行解析得到待烧录文件;

识别模块,用于加载初始烧录文件,时刻检测是否有至少一个烧录设备连接,若有,则读取每个烧录设备的设备信息,然后执行匹配模块;若否,则继续检测;

匹配模块,用于将与对应烧录设备对应连接的USB端口的编号与对应的烧录设备的设备信息进行关联,并通过一界面对烧录设备的设备信息与USB端口的编号进行一一对应显示;烧录所述待烧录文件并记录烧录信息;

显示模块,用于根据烧录信息,通过一界面实时显示每一个烧录设备的烧录状态。

优选地,还包括存储模块,用于记录烧录过程信息并进行存储,供调用查阅。

一种基于USB的固件烧录终端,包括:

存储器,用于存储程序指令;

处理器,用于运行所述程序指令,以执行以下步骤:

S1:接收烧录指令;

S2:加载初始烧录文件,对所述初始烧录文件进行解析得到待烧录文件;

S3:时刻检测是否有至少一个烧录设备连接,若有,则读取每一个所述烧录设备的设备信息,然后执行步骤S4;若否,则继续检测;

S4:将与对应烧录设备对应连接的USB端口的编号与对应的烧录设备的设备信息进行关联,并通过一界面对烧录设备的设备信息与USB端口的编号进行一一对应显示;烧录所述待烧录文件并记录烧录信息;

S5:根据烧录信息,通过所述界面实时显示每一个烧录设备的烧录状态。

优选地,所述步骤S2中对初始烧录文件的解析方法如下:

S21:校验所述初始烧录文件是否完整,若是,则执行步骤S22;若否,则报错并返回执行步骤S1;

S22:根据所述烧录指令判断初始烧录文件是否需要加密,若是,则对初始烧录文件进行加密,得到待烧录文件,然后执行步骤S3;若否,则直接执行步骤S3。

优选地,步骤S5之后还包括:

S6:记录烧录过程信息并进行存储,供调用查阅。

优选地,所述步骤S3中的烧录设备信息包括烧录设备型号。

相比现有技术,本发明的有益效果在于:

1、本发明提供的固件烧录终端设有多个并行的USB端口,可以同时对多个设备进行多口并行烧录,烧录效率高,尤其是针对批量生产的电子设备。

2、本发明提供的固件烧录方法中,多个USB端口的编号和多个烧录设备信息一一对应,可以判断每个USB端口和连接的烧录设备是否一一对应连接。在进行多口并行烧录的时候,若某个设备烧录失败,能够快速对烧录失败的设备进行定位,无需一一排查,使用者操作简便。

3、本发明提供的固件烧录系统中,包括存储模块,可以记录烧录过程信息并进行存储,烧录过程信息主要包括烧录日志,并且可以将日志用excel文件的形式导出,方便烧录情况的统计和查阅。

附图说明

图1为本发明实施例一基于USB的固件烧录方法的控制流程图;

图2为图1中步骤S2的子流程图;

图3为本发明实施例二基于USB的固件烧录系统的结构示意图;

图4为本发明实施例三烧录终端的结构示意图;

图5为本发明实施例三烧录终端烧录界面的示意图。

具体实施方式

下面,结合附图以及具体实施方式,对本发明做进一步描述:

实施例一:

参照图1和图2,一种基于USB的固件烧录方法,包括以下步骤:

S1:接收用户通过上位机发送的烧录指令。

S2:加载初始烧录文件,对所述初始烧录文件进行解析得到待烧录文件;解析的目的在于校验初始烧录文件的完整性、是否需要进行加密等,降低后续文件烧录的错误率。

S3:时刻检测是否有至少一个烧录设备连接,若有,则读取每一个烧录设备的设备信息,然后执行步骤S4;若否,则继续检测;烧录设备信息包括烧录设备型号和通信协议版本。

S4:将与对应烧录设备对应连接的USB端口的编号与对应的烧录设备的设备信息进行关联,并通过一界面对烧录设备的设备信息与USB端口的编号进行一一对应显示;烧录所述待烧录文件并记录烧录信息;

S5:根据烧录信息,通过所述界面实时显示每一个烧录设备的烧录状态。参照图5,烧录状态包括等待中、正在擦除或正在下载、下载失败、下载成功。

S6:记录烧录过程信息并进行存储,供调用查阅。

由于步骤S4中,USB端口编号与烧录设备信息一一对应,从而使用户可以直观判断哪一个USB端口连接哪一个烧录设备,并且知晓烧录设备的状态。

本实施例中,所述步骤S2中对初始烧录文件的解析方法如下:

S21:校验所述初始烧录文件是否完整,若是,则执行步骤S22;若否,则报错并返回执行步骤S1;

S22:根据所述烧录指令判断初始烧录文件是否需要加密,若是,则对初始烧录文件进行加密,得到待烧录文件,然后执行步骤S3;若否,则直接执行步骤S3。

上述基于USB的固件烧录方法,可以同时对多个设备进行多口并行烧录,烧录效率高,尤其是针对批量生产的电子设备。多个USB烧录端口编号和多个烧录设备信息一一对应,可以判断每个USB端口和连接的烧录设备是否匹配连接;在进行多口并行烧录的时候,若某个设备烧录失败,能够快速对烧录失败的设备进行定位,无需一一排查,使用者操作简便。可以对烧录过程信息记录并进行存储,烧录过程信息主要包括烧录日志,并且可以将日志用excel文件的形式导出,方便烧录情况的统计和查阅。

实施例二:

参照图3和图5,一种基于USB的固件烧录系统,包括:

接收模块,用于接收用户通过上位机发送的烧录指令。

解析模块,用于加载初始烧录文件,对初始烧录文件进行解析得到待烧录文件。解析的目的在于校验初始烧录文件的完整性、是否需要进行加密等,降低后续文件烧录的错误率。

识别模块,用于时刻检测是否有至少一个烧录设备连接,若有,则读取每个烧录设备的设备信息,然后执行匹配模块;若否,则继续检测;烧录设备信息包括烧录设备型号和通信协议版本。

匹配模块,用于将与对应烧录设备对应连接的USB端口的编号与对应的烧录设备的设备信息进行关联,并通过一界面对烧录设备的设备信息与USB端口的编号进行一一对应显示;烧录所述待烧录文件并记录烧录信息;

显示模块,用于根据烧录信息,通过一界面实时显示每一个烧录设备的烧录状态。

存储模块,用于记录烧录过程信息并进行存储,供调用查阅。

文件加密模块,用于对需要加密烧录的文件进行加密。

具体实施时,显示模块包括显示屏,用于显示文件烧录情况等信息。参照图5,为烧录系统中的一种烧录界面:包括一个自动烧录启动按钮、用于为USB端口标号的编号按钮、烧录文件信息、烧录设备列表信息等;烧录文件信息包括设备的适配系列、适配产品以及版本号等;在烧录设备列表中设有四种烧录状态指示标签,用灰色圆形标签表示待烧录状态,用黄色圆形标签表示“正在擦除或正在下载”的状态,用红色圆形标签表示下载失败状态,用绿色圆形标签表示下载成功;在烧录设备列表中还设有烧录进度条,在每个烧录进度条前设有烧录设备型号和烧录设备对应的USB端口编号,方便烧录出错时能够及时定位到出错的USB端口;烧录过程中,实时显示当前烧录进度到屏幕上,在出错时弹出提示框,提示用户哪个端口烧录失败。

通过上述基于USB的固件烧录系统,在进行多口并行烧录的时候,若某个设备烧录失败,能够快速对烧录失败的设备进行定位,无需一一排查,使用者操作简便。可以对烧录过程信息记录并进行存储,烧录过程信息主要包括烧录日志,并且可以将日志用excel文件的形式导出,方便烧录情况的统计和查阅。

实施例三:

参照图4,一种基于USB的固件烧录终端,为实现实施例一的方法的实体装置,包括存储器和处理器;

所述存储器用于存储程序指令;

所述处理器用于运行所述程序指令,以执行如图1和图2的步骤。

上述基于USB的固件烧录终端中,设有多个USB端口,每个USB端口有唯一编号。烧录终端可以通过对系统注册表的读取,来完成USB端口号的识别,在识别完成之后,将USB端口号存储在存储器中,保证下次启动的时候保持USB端口编号不变。

本发明提供的基于USB的固件烧录方法、烧录系统和烧录终端,可以应用在大批量生产的DFU设备上,例如电子烟产品,应用于电子烟产品的控制板上。

通过对上述各实施例的描述,本发明相比于现有技术,可以同时对设备进行多口并行烧录,烧录效率高;可以判断每个USB端口和连接的烧录设备是否匹配连接,在进行多口并行烧录的时候,若某个设备烧录失败,能够快速对烧录失败的设备进行定位,无需一一排查,使用者操作简便。可以记录烧录过程信息并进行存储,烧录过程信息主要包括烧录日志,方便烧录情况的统计和查阅。

对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1