本公开涉及计算机,具体而言,涉及一种芯片程序更新方法、装置、计算机设备及存储介质。
背景技术:
1、引导程序是单片机芯片对应用程序进行启动和更新操作的一个中间接口代码程序。通常,单片机芯片中仅包括一级引导程序,利用一级引导程序刷写应用程序;而一级引导程序无法对自己(即一级引导程序)进行刷写,导致在一级引导程序写入异常时,无法启动或刷写应用程序,同时芯片无法通过刷写一级引导程序实现刷写规范的更改,导致单片机系统无法适配不同的刷写规范。
技术实现思路
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、为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
1.一种芯片程序更新方法,其特征在于,应用于单片机芯片,所述单片机芯片包括一级引导程序和二级引导程序,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述第二标识信息包含所述二级引导程序的启动地址和第二指示内容;所述在单片机芯片启动之后,基于所述二级引导程序关联的第二标识信息,运行所述二级引导程序,包括:
3.根据权利要求2所述的方法,其特征在于,所述第一标识信息包括所述一级引导程序的启动地址和所述第一指示内容;所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述基于所述一级引导程序,对所述二级引导程序和关联的所述第二标识信息进行更新,生成更新后二级引导程序、和所述更新后二级引导程序关联的更新后第二标识信息,包括:
5.根据权利要求4所述的方法,其特征在于,所述基于所述一级引导程序,将所述二级引导程序刷写为获取到的更新后二级引导程序,包括:
6.根据权利要求4所述的方法,其特征在于,在所述将所述第二标识信息刷写为获取到的更新后二级引导程序关联的更新后第二标识信息之后,所述方法还包括:
7.根据权利要求1-6任一所述的方法,其特征在于,所述方法还包括:
8.一种芯片程序更新装置,其特征在于,应用于单片机芯片,所述单片机芯片包括一级引导程序和二级引导程序,包括:
9.一种计算机设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述的芯片程序更新方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的芯片程序更新方法的步骤。