程序升级方法、上位机及计算机可读存储介质与流程

未命名 10-18 阅读:130 评论:0


1.本发明涉及程序升级领域,尤其涉及程序升级方法、上位机及计算机可读存储介质。


背景技术:

2.伺服驱动器是现代运动控制的重要组成部分,被广泛应用于工业机器人及数控加工中心等自动化设备中。伺服驱动器大多装载了arm(advanced risc machine,进阶精简指令集机器)芯片,并基于该芯片存储控制程序。在客户现场调试以及解决客户问题过程中,可能需要数次修改程序用于解决现场问题,因此需要在arm芯片内烧录新的程序,以对arm芯片内的程序进行更新。
3.在相关技术中,由于同一伺服厂商不同系列伺服驱动器使用的芯片品牌以及系列会存在区别,在给伺服驱动器的arm芯片烧录新的程序时,需要工程师根据arm芯片的型号手动选择芯片对应的烧录软件,并在烧录软件中配置芯片型号和待烧录程序。由于当前烧录方式步骤大部分操作需要人工执行,导致arm芯片内的程序进行更新步骤繁琐。
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.本发明实施例提供了程序升级方法、上位机及计算机可读存储介质,上位机与待升级驱动器建立连接后,确定所述待升级驱动器的闪存存储器的存储地址,随后基于该存储地址控制待升级驱动器执行闪存存储器的数据擦除动作,并在待升级驱动器完成所述闪存存储器的数据擦除后,基于存储地址将升级文件发送至所述待升级驱动器中,进而控制所述待升级驱动器基于所述升级文件执行预设升级动作以实现程序的升级。可以看出,通过与待升级驱动器建立连接即可确定待升级驱动器的arm芯片中闪存存储器的存储地址,进而可以直接基于该存储地址对闪存存储器的数据进行擦除,以及升级文件的发送等,在最后直接控制所述待升级驱动器基于升级文件完成程序的升级。在该过程中,并不需要选择arm芯片关联的程序烧录软件,也不需要在烧录软件中配置相应的芯片参数以及型号,从而简化了arm芯片的程序的更新步骤,提高了arm芯片的升级效率。
附图说明
39.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
40.图1为本发明程序升级方法的第一实施例的流程示意图;
41.图2是本发明程序升级方法的第二实施例的流程示意图;
42.图3为本发明程序升级方法的第三实施例的流程示意图;
43.图4为本发明程序升级方法的第四实施例的流程示意图;
44.图5为本发明程序升级方法中上位机与驱动器交互完成程序升级的一种可选实现方式的流程图;
45.图6是本发明程序升级方法的各个实施例的终端硬件结构示意图。
46.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
47.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
48.在相关技术中,由于同一伺服厂商不同系列伺服驱动器使用的芯片品牌不同,在给伺服驱动器的arm芯片烧录新的程序时,需要工程师根据arm芯片的型号手动选择芯片对应的烧录软件,并在烧录软件中配置芯片型号和待烧录程序。由于当前烧录方式步骤大部分操作需要人工执行,导致arm芯片内的程序进行更新步骤繁琐。且在需要对大量不同型号的arm芯片的程序进行烧录时,当前的烧录方式效率较低。
49.为解决上述缺陷,本发明实施例提出一种程序升级方法,其主要解决方案包括以下步骤:
50.当与待升级驱动器建立连接后,确定所述待升级驱动的闪存存储器的存储地址;
51.基于所述存储地址控制所述待升级驱动器执行所述闪存存储器的数据擦除动作;
52.在所述待升级驱动器完成所述闪存存储器的数据擦除后,基于所述存储地址将升
级文件发送至所述待升级驱动器;
53.控制所述升级驱动器基于所述升级文件执行预设程序升级动作。
54.本发明通过与待升级驱动器建立连接即可确定待升级驱动器的arm芯片中闪存存储器的存储地址,进而可以直接基于该存储地址对闪存存储器的数据进行擦除,以及升级文件的发送等,在最后直接控制所述待升级驱动器基于升级文件完成程序的升级,不需要选择arm芯片对应的升级软件,不需在升级软件中配置相应的型号等,简化了程序的升级步骤。
55.为了更好地理解上述技术方案,下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整地传达给本领域的技术人员。
56.请参照图1,图1为本发明程序升级方法的第一实施例的流程示意图。
57.本实施的方案应用于上位机,所述上位机指的是计算上用于与驱动器进行通信连接的程序,可对驱动器的数据进行修改,且能够为驱动器提供在线升级功能。在本实施例中,程序的升级方法指的是通过上位机将新的程序烧录到伺服驱动器的arm芯片中flash(闪存)对应的存储地址中,该烧录方式是将原有数据替换为新的烧录数据,替换过程可以是完全替换,也可以部分替换,从而实现程序的更新升级。
58.在本实施例中,程序的升级方法包括以下步骤:
59.步骤s10,当与待升级驱动器建立连接后,确定所述待升级驱动的闪存存储器的存储地址;
60.在本实施例中,待升级驱动器指的是需要烧录新的程序的arm芯片所属的驱动器,例如机器人的步进电机驱动器、伺服驱动器等。响应信息可以包括arn芯片的参数信息或待升级驱动器当前的状态信息。闪存存储器指的是待升级驱动器的arm芯片中的flash,存储有arm芯片的控制程序。可以理解的是,不同的型号的arm芯片对应的闪存存储器的存储地址不同,例如a厂商的arm芯片中,存储地址包括100-1000,b厂商的arm芯片中,存储地址包括200-1000,而在同一厂商的不同型号的arm芯片,其存储地址也可能存在差别,因此,在对arm芯片中闪存存储器的控制程序进行更新,需要获悉该闪存存储器的存储地址。
61.具体的,上位机可与伺服驱动器立连接后,由于驱动器程序内部设定好闪存存储器对应的存储地址,基于此上位机可以在两者建立连接后,直接确定闪存存储器的存储地址。
62.可选地,在步骤s10之后,还包括:获取升级程序,基于预设程序编译器将所述升级程序编译成所述升级文件,其中,所述升级文件包括所述存储地址以及升级数据,所述升级数据包括所述升级驱动器对应的通信协议。具体的,升级程序为需要更新到存储地址的程序,升级文件指的是hex文件,hex文件中包括升级程序的待写入的地址也即所述存储地址,和待写入的数据,也即需要更新烧录到存储地址中的数据。
63.需要说明的是,上位机与待升级驱动器连接时,所述待升级驱动器处于开机状态。
64.步骤s20,基于所述存储地址控制所述待升级驱动器执行所述闪存存储器的数据擦除动作;
65.在本实施例中,数据擦除动作指的是将闪存存储器中存储地址的原有的数据删
除,使得程序能够在驱动器中进行更新烧录。在此之前,需要确定待升级驱动器当前的状态信息为空闲状态(又称非使能运行状态),进而基于该状态信息控制待升级驱动器执行相应的控制动作(烧录动作)。也即,步骤s20之前,还包括:
66.步骤s21,确定所述待升级驱动器的运行模式;
67.步骤s22,在所述待升级驱动器处于空闲模式时,向所述待升级驱动器发送升级启动标识,以使所述待升级驱动器接收到所述升级标识后进入升级模式;
68.步骤s23在所述待升级驱动器处于所述升级模式时,执行所述基于所述存储地址控制所述待升级驱动器执行所述闪存存储器的数据擦除动作的步骤。
69.具体的,伺服驱动器的状态信息包括空闲状态、升级状态(也称烧录状态)以及使能运行状态,对应的运行模式为空闲模式、升级模式(也称烧录模式)以及使能运行模式。基于此,可以根据伺服驱动器的状态信息确定其当前的运行模式,进而保障上位机能够控制伺服驱动器执行数据擦除动作。因此在所述上位机与所述伺服驱动器连接后,上位机向所述伺服驱动器发送状态信息请求,并在接收到所述伺服驱动器反馈的状态信息后,确定所述伺服驱动器当前的运行模式,若当前运行模式为空闲模式,上位机则发送升级启动标识到伺服驱动器中,以使伺服驱动器在接收到该升级启动标识后进入升级模式,若当前为升级模式,则直接控制所述伺服驱动器执行所述数据擦除动作,以及后续写入读取检验、发送校验和复位等操作。
70.可选地,可以通过发送请求的方式确定待升级驱动器的运行模式,也可以直接基于上位机的控制程序获取待升级驱动器的运行模式。
71.步骤s30,在所述待升级驱动器完成所述闪存存储器的数据擦除后,基于所述存储地址将升级文件发送至所述待升级驱动器;
72.在本实施例中,所述待升级驱动器完成所述闪存存储器的数据擦除后,上位机需要将升级文件分批次发送至所述待升级驱动器中。
73.在本实施例中,通常基于预设的字节分批次发送升级文件,也即分页发送升级文件,例如在发送升级文件时目标字节为256,此时上位机256字节为发送单位将升级文件依次发送到待升级驱动器中。需要说明的是,升级文件先发送到驱动器,由驱动器将升级数据写入到存储地址中,并非是直接将升级文件发送到存储地址内。
74.步骤s40,控制所述升级驱动器基于所述升级文件执行预设程序升级动作。
75.在本实施例中,升级文件中包括需要升级的数据,也即升级数据。而预设程序升级动作包括将所述升级数据写入到完成数据擦除动作的存储地址中,对写入后的数据和升级数据进行比对,基于写入后的数据和升级数据是否相同的比对结果进行相应的数据传输。其中,上位机在将待升级文件发送至待升级驱动器后,待升级驱动器将待升级文件发送到所述存储地址当中。
76.可选地,在完成升级后,还可以通过软复位重启的方式重启待升级驱动器,以使所述待升级驱动器执行新的程序。
77.在一可选实施方式中,步骤s40具体包括:
78.步骤s41,控制所述待升级驱动器将接收到的所述升级数据写入到完成所述数据擦除动作的存储地址;
79.步骤s42,在完成写入操作后读取到的所述存储地址的数据,与所述升级数据相同
时,控制所述待升级驱动器向所述上位机发送标识数据;
80.在本实施例中,待升级程序的数据是基于目标字节大小发送的,而待升级驱动器完成需要烧录写入的数据后,若写入的数据与待写入的数据相同,则会向上位机发送标识数据,该标识数据主要包括用于通信判断的头五个字节+自行设定的两个标志位+指令crc校验,上位机主要对标识数据的标志位以及crc校验码进行校验,若校验通过,则说明当前烧写成功,可以继续执行下一步骤如继续发送未烧录的数据。具体的,在上位机检测到写入后的数据和所述升级数据相同时,继续发送当前未烧录的hex文件,直到上位计算到标识数据中所有crc校验码均校验通过,且后续无烧录数据时,认为所有的所述升级数据烧录成功。
81.可选地,在完成所有升级文件的烧录后,可以向待升级驱动器发送复位重启指令,以使所述待升级驱动器基于该复位重启指令进行重启,进而运行更新后的程序。
82.可选地,步骤s41之后,还包括:
83.步骤s43,在完成写入操作后读取到的所述存储地址的数据,与所述升级数据不同时,判断所述升级数据写入失败或所述升级数据写入错误,并控制所述待升级驱动器停止接收所述升级文件。其中,在写入后的数据和所述升级数据不同时,说明当前发送的所述升级数据烧录失败,也即写入失败或写入错误,此时待升级驱动器停止接收所述升级文件,基于此上位机在没有接收到响应的反馈信息后,则认为当前烧录升级失败,上位机可弹出烧录失败提示。
84.可选地,驱动器还可以将升级失败指令发送至所述上位机,以使上位机判断是否执行重新烧录动作,例如若上位机的控制程序中设置了“在升级数据烧录失败后,直接执行重新烧录的动作”的相关指令,此时上位机可基于此类判断指令执行相应的判断处理动作。
85.在本实施例公开的技术方案中,上位机与待升级的伺服驱动器建立连接后,基于待升级驱动器返回的响应信息得到arm芯片中闪存存储器的存储地址,进而可以直接基于该存储地址对闪存存储器的数据进行擦除,以及升级文件的发送,最后基于升级文件完成程序的升级。基于此,根据响应信息得到的存储地址可以直接用于烧录升级,并不需要工程师手动选择烧录软件,并在烧录软件中配置芯片型号和待烧录升级的内容,达到了简化程序升级步骤的同时,还能在对大量不同型号的arm芯片的程序进行烧录升级时,提高该场景的程序升级的效率。
86.请参照图2,在第二实施例中,基于第一实施例,步骤s10包括:
87.步骤s11,当与所述待升级驱动器的外部接口建立连接后,向所述待升级驱动器发送芯片参数请求;
88.步骤s12,根据所述待升级驱动器基于所述芯片参数请求的所述响应信息,确定所述待升级驱动器的芯片型号;
89.步骤s13,基于所述芯片型号确定所述闪存存储器的存储地址。
90.具体的,上位机可与伺服驱动器的外部接口进行连接,其中,该外部接口可以是usb和网口;在建立连接后向伺服驱动器发送arm芯片参数的信息请求,随后伺服驱动器响应于该信息请求,向上位机反馈arm芯片参数的响应信息,上位机基于接收到的响应信息确定闪存存储器在arm芯片中的存储地址。
91.可选地,所述芯片型号还可由测试人员根据伺服驱动器外部粘贴的产品型号信
息,采用翻阅芯片手册的方式查看伺服驱动器对应的芯片型号。
92.示例性的,计算机与机器人的直流伺服电动驱动器的外部具有rs232通信协议的标准接口建立连接后,通过rs232通信协议向直流伺服电动驱动器发送arm芯片参数请求,该驱动器接收到请求后,向计算机反馈当前的arm芯片的参数信息,随后计算机基于该参数信息得到的芯片型号为a,而在计算机数据库、本地数据库或云数据库中存储数据表中,a型号的芯片对应的存储地址为400-1000。因此,计算机可以确定直流伺服电动驱动器的arm芯片的中闪存存储器的存储地址位于400-1000的区间。
93.可选地,测试人员通过芯片手册得到伺服驱动器的芯片对应的存储地址后,可直接控制上位机的烧录程序基于该存储地址执行程序的烧录动作。
94.在本实施例公开的技术方案中,上位机与待升级驱动器的外部接口建立连接后,基于外部接口的通信协议进行通信,进而得到待升级驱动器返回的响应信息,进而根据该响应信息得到arm芯片中闪存存储器的存储地址,或者由测试人员直接基于芯片手册获取arm芯片中闪存存储器的存储地址。在该过程中,上位机使用待升级驱动器的外部接口与待升级驱动器进行电连接,可以避免对伺服驱动器进行拆盖,并通过仿真器进行烧录升级方式,进一步提高了程序升级过程中的升级效率以及安全性。
95.请参照图3,在第三实施例中,基于第一实施例,步骤s30之前,还包括:
96.步骤s31,对接收到的校验数据进行校验,并在校验通过后,判断所述待升级驱动器完成所述闪存存储器的数据擦除;
97.在本实施例中,接收到的校验数据包括通信数据的前5个字节+驱动器设定的标志位以及指令的循环冗余检验码。循环冗余校验码用于外存储器和计算机同步通信的数据校验,在本实施例中,为保障数据擦除的成功率,需要对获取到的校验数据进行校验,例如在循环冗余校验码校验通过后,上位机可以向待升级驱动器发送升级程序编译成的升级文件,在此时上位机可以通过程序设定好的串口号和通信波特率进行升级文件的发送。其中,串口号以及通信波特率可以是程序预设的数据,也可以是工程师基于实际情况手动选择的。
98.而程序烧录过程也即程序升级过程是将升级程序编译得到的升级文件基于上位机预设的目标字节数例如基于flash中固定256字节数,依次将待升级的文件发送至伺服驱动器中,进而提高程序升级过程中的准确率。
99.在本实施例公开的技术方案中,通过对接收到的校验数据进行校验,并在校验通过后判断待升级驱动器完成数据擦除,进而保障数据擦除后上位机能够基于flash中固定的256字节数向待升级驱动器发送升级文件,进而提高升级过程中的准确率。
100.请参照图4,在第四实施例中,基于上述任一实施例,在步骤s40之后,还包括:
101.步骤s50,检测到所述待升级驱动器升级失败时,输出升级结果提示界面;
102.步骤s60,在基于所述升级结果提示界面接收到控制动作时,响应于所述控制动作,执行以下至少一个步骤:
103.步骤s70,退出升级模式;
104.步骤s80,跳转执行所述基于所述存储地址将升级文件发送至所述待升级驱动器的步骤。
105.在相关技术中,在程序烧录升级失败时,需要控制驱动器执行重启动作,使得驱动
器重新上电,芯片进入boot模式,最后采用使用芯片厂商提供的软件进行程序的重新烧录。
106.而在本实施例一个可选实现方式中,待升级驱动器的芯片厂商为瑞萨,在接收到所述待升级驱动器发送的升级失败指令也即检测到所述待升级驱动器升级失败时,驱动器输出升级结果提示界面,该界面可以包括升级失败提示标识、退出升级提示框和重新升级提示框。基于此,若输出的界面中包含上述所有提示标识,工程师可点击其中一个标识指令,也即驱动器接收到所述升级结果提示界面的控制动作后,响应该控制动作。例如在工程师点击退出升级的提示框时,驱动器执行退出升级模式。因此,在本实施例的方案中,在程序升级失败后,可以存在一种实现方式,使得当前待升级驱动器不需要重启即可完成程序的重新升级,减少重启待升级驱动器的过程中繁琐的步骤,提高程序升级失败后重新升级的升级效率。
107.在本实施例公开的技术方案中,对于某一具体芯片型号如瑞萨芯片的伺服驱动器,在程序升级失败时,通过输出升级失败提示界面,根据升级失败提示界面中接收到的重新升级的控制动作后,重新将升级文件发送到待升级驱动器中,进而可以避免在程序升级失败时,需要重新启动待升级驱动器,并重新配置相关的信息才能重新执行程序升级动作的情况。如此,在程序升级失败时,简化了重新升级的步骤,提高了重新升级的升级效率。
108.请参照图5,在第五实施例中,基于上述任一实施例,提出本发明程序升级方法的中,上位机与驱动器交互完成程序升级的可选实现方式。
109.在本实施例中,上位机与驱动器的外部接口建立连接后,向驱动器发送状态查询指令,并在驱动器处于空闲状态时,向驱动器发送烧录启动标志(也即升级启动标志),若驱动器未接收到该标识,则继续保持空闲状态。驱动器在接收到上位机发送的烧录启动标识,则进入烧录模式(程序升级模式),随后将需要烧录的内容对应的存储地址的数据进行擦除,而驱动器内部判断擦除完成后,向上位机发送循环冗余校验码。在上位机对校验码进行校验,且校验通过后,说明当前flash擦除成功。接着上位机向驱动器发送需要烧录的hex文件,驱动器通过arm芯片接收上位机发送的hex文件页数据(也即子升级文件)且完成hex文件页数据的烧录后,继续计算并向上位机发送当前子升级文件对应的循环冗余校验码,在上位机校验通过后,说明此时单页的hex文件数据烧录成功。
110.随后还需要判断是否接收所有的hex文件(也即子升级文件是否均完成烧录升级),若未接收到全部数据,此时需要伺服驱动器可以继续等待接收上位机发送待升级文件,并返回相应的校验信息;在所有子升级文件完成烧录升级时,上位机可控制驱动器进行软复位(重启),进而运行升级后的程序。
111.在本实施例公开的技术方案中,上位机与驱动器交互完成程序升级,在该过程中,并不需要人工地过多参与,全程由上位机和驱动器自动完成,从而提高了程序升级的效率。与此同时并不需要配置过多程序升级参数,进而简化了程序升级的步骤。
112.参照图6,图6为本发明实施例方案设计的硬件运行环境的终端结构示意图。
113.如图6所示,该终端可以包括:处理器1001,例如中央处理器(central processing unit,cpu),通信总线1002、网络接口1003,存储器1004。其中,通信总线1002用于实现这些组件之间的连接通信。网络接口1003可选的可以包括标准的有线接口、无线接口(如无线保真(wireless-fidelity,wi-fi)接口)。存储器1004可以是稳定的非易失性存储器(non-volatile memory,nvm),例如磁盘存储器。存储器1004可选的还可以是独立于前述处理器
1001的存储装置。
114.本领域技术人员可以理解,图6中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
115.如图6所示,作为一种计算机存储介质的存储器1004中可以包括操作系统、数据存储模块、网络通信模块以及控制程序。
116.在图6所示的终端中,网络接口1003主要用于连接上位机的程序;处理器1001可以调用存储器1004中存储的程序升级程序,并执行以下操作:
117.当与待升级驱动器建立连接后,确定所述待升级驱动的闪存存储器的存储地址;
118.基于所述存储地址控制所述待升级驱动器执行所述闪存存储器的数据擦除动作;
119.在所述待升级驱动器完成所述闪存存储器的数据擦除后,基于所述存储地址将升级文件发送至所述待升级驱动器;
120.控制所述升级驱动器基于所述升级文件执行预设程序升级动作。
121.进一步地,处理器1001可以调用存储器1004中存储的程序升级程序,还执行以下操作:
122.当与所述待升级驱动器的外部接口建立连接后,向所述待升级驱动器发送芯片参数请求;
123.根据所述待升级驱动器基于所述芯片参数请求的所述响应信息,确定所述待升级驱动器的芯片型号;
124.基于所述芯片型号确定所述闪存存储器的存储地址。
125.进一步地,处理器1001可以调用存储器1004中存储的程序升级程序,还执行以下操作:
126.对接收到的校验数据进行校验,并在校验通过后,判断所述待升级驱动器完成所述闪存存储器的数据擦除。
127.进一步地,处理器1001可以调用存储器1004中存储的程序升级程序,还执行以下操作:
128.在所述待升级驱动器完成所述闪存存储器的数据擦除后,确定发送所述升级文件时的目标字节;
129.基于所述目标字节和所述存储地址将所述升级文件发送至所述待升级驱动器。
130.进一步地,处理器1001可以调用存储器1004中存储的程序升级程序,还执行以下操作:
131.确定所述待升级驱动器的运行模式;
132.在所述待升级驱动器处于空闲模式时,向所述待升级驱动器发送升级启动标识,以使所述待升级驱动器接收到所述升级标识后进入升级模式;
133.在所述待升级驱动器处于所述升级模式时,执行所述基于所述存储地址控制所述待升级驱动器执行所述闪存存储器的数据擦除动作的步骤。
134.进一步地,处理器1001可以调用存储器1004中存储的程序升级程序,还执行以下操作:
135.控制所述待升级驱动器将接收到的所述升级数据写入到完成所述数据擦除动作的存储地址;
136.在完成写入操作后读取到的所述存储地址的数据,与所述升级数据相同时,控制所述待升级驱动器向所述上位机发送标识数据;或者
137.在完成写入操作后读取到的所述存储地址的数据,与所述升级数据不同时,判断所述升级数据写入失败或所述升级数据写入错误,并控制所述待升级驱动器停止接收所述升级文件。
138.进一步地,处理器1001可以调用存储器1004中存储的程序升级程序,还执行以下操作:
139.获取升级程序;
140.基于预设程序编译器将所述升级程序编译成所述升级文件,其中,所述升级文件包括所述存储地址以及升级数据,所述升级数据包括所述升级驱动器对应的通信协议。
141.进一步地,处理器1001可以调用存储器1004中存储的程序升级程序,还执行以下操作:
142.检测到所述待升级驱动器升级失败时,输出升级结果提示界面;
143.在基于所述升级结果提示界面接收到控制动作时,响应于所述控制动作,执行以下至少一个步骤:
144.退出升级模式;
145.跳转执行所述基于所述存储地址将升级文件发送至所述待升级驱动器的步骤。
146.此外,本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可以存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被控制终端中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
147.因此,本发明还包括一种计算机可读存储介质,所述计算机可读存储介质存储有程序升级程序,所述程序升级程序被处理器执行时实现如上实施例所述的程序升级方法的各个步骤。
148.需要说明的是,由于本发明实施例提供的存储介质,为实施本发明实施例的方法所采用的存储介质,故而基于本发明实施例所介绍的方法,本领域所属人员能够了解该存储介质的具体结构及变形,故而在此不再赘述。凡是本发明实施例的方法所采用的存储介质都属于本发明所欲保护的范围。
149.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例,或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
150.本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框,以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
151.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
152.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
153.应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
154.尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
155.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
156.以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所做的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

技术特征:
1.一种程序升级方法,其特征在于,应用于上位机,所述程序升级方法包括:当与待升级驱动器建立连接后,确定所述待升级驱动的闪存存储器的存储地址;基于所述存储地址控制所述待升级驱动器执行所述闪存存储器的数据擦除动作;在所述待升级驱动器完成所述闪存存储器的数据擦除后,基于所述存储地址将升级文件发送至所述待升级驱动器;控制所述升级驱动器基于所述升级文件执行预设程序升级动作。2.如权利要求1所述的程序升级方法,其特征在于,所述上位机基于所述待升级驱动器的外部接口与所述待升级驱动器建立连接,所述当与待升级驱动器建立连接后,确定所述待升级驱动的闪存存储器的存储地址的步骤包括:当与所述待升级驱动器的外部接口建立连接后,向所述待升级驱动器发送芯片参数请求;根据所述待升级驱动器基于所述芯片参数请求的所述响应信息,确定所述待升级驱动器的芯片型号;基于所述芯片型号确定所述闪存存储器的存储地址。3.如权利要求1所述的程序升级方法,其特征在于,所述在所述待升级驱动器完成所述闪存存储器的数据擦除后,基于所述存储地址将升级文件发送至所述待升级驱动器的步骤之前,还包括:对接收到的校验数据进行校验,并在校验通过后,判断所述待升级驱动器完成所述闪存存储器的数据擦除。4.如权利要求1所述的程序升级方法,其特征在于,所述在所述待升级驱动器完成所述闪存存储器的数据擦除后,基于所述存储地址将升级文件发送至所述待升级驱动器的步骤包括:在所述待升级驱动器完成所述闪存存储器的数据擦除后,确定发送所述升级文件时的目标字节;基于所述目标字节和所述存储地址将所述升级文件发送至所述待升级驱动器。5.如权利要求1所述的程序升级方法,其特征在于,所述基于所述存储地址控制所述待升级驱动器执行所述闪存存储器的数据擦除动作的步骤之前,还包括:确定所述待升级驱动器的运行模式;在所述待升级驱动器处于空闲模式时,向所述待升级驱动器发送升级启动标识,以使所述待升级驱动器接收到所述升级标识后进入升级模式;在所述待升级驱动器处于所述升级模式时,执行所述基于所述存储地址控制所述待升级驱动器执行所述闪存存储器的数据擦除动作的步骤。6.如权利要求1所述的程序升级方法,其特征在于,所述升级文件包括升级数据,所述控制所述升级驱动器基于所述升级文件执行预设程序升级动作的步骤包括:控制所述待升级驱动器将接收到的所述升级数据写入到完成所述数据擦除动作的存储地址;在完成写入操作后读取到的所述存储地址的数据,与所述升级数据相同时,控制所述待升级驱动器向所述上位机发送标识数据;或者在完成写入操作后读取到的所述存储地址的数据,与所述升级数据不同时,判断所述
升级数据写入失败或所述升级数据写入错误,并控制所述待升级驱动器停止接收所述升级文件。7.如权利要求1所述的程序升级方法,其特征在于,所述当与待升级驱动器建立连接后,确定所述待升级驱动的闪存存储器的存储地址的步骤之后,还包括:获取升级程序;基于预设程序编译器将所述升级程序编译成所述升级文件,其中,所述升级文件包括所述存储地址以及升级数据,所述升级数据包括所述升级驱动器对应的通信协议。8.如权利要求1-7中任一项所述的程序升级方法,其特征在于,所述控制所述升级驱动器基于所述升级文件执行预设程序升级动作的步骤之后,还包括:检测到所述待升级驱动器升级失败时,输出升级结果提示界面;在基于所述升级结果提示界面接收到控制动作时,响应于所述控制动作,执行以下至少一个步骤:退出升级模式;跳转执行所述基于所述存储地址将升级文件发送至所述待升级驱动器的步骤。9.一种上位机,其特征在于,所述上位机包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序升级程序,所述程序升级程序被所述处理器执行时实现如权利要求1至8中任一项所述的程序升级方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有程序升级程序,所述程序升级程序被处理器执行时实现如权利要求1至8中任一项所述的程序升级方法的步骤。

技术总结
本发明公开了程序升级方法、上位机及计算机可读存储介质,其中,所述程序升级方法包括:当与待升级驱动器建立连接后,确定所述待升级驱动的闪存存储器的存储地址;基于所述存储地址控制所述待升级驱动器执行所述闪存存储器的数据擦除动作;在所述待升级驱动器完成所述闪存存储器的数据擦除后,基于所述存储地址将升级文件发送至所述待升级驱动器;控制所述升级驱动器基于所述升级文件执行预设程序升级动作。与待升级驱动器建立连接后,直接确定闪存存储器的存储地址,根据存储地址完成闪存存储器的数据擦除以及升级文件的发送最后基于升级文件完成程序的升级,解决了如何简化程序升级步骤的问题。升级步骤的问题。升级步骤的问题。


技术研发人员:庄国伟 付兴龙
受保护的技术使用者:深圳研控自动化科技股份有限公司
技术研发日:2023.06.16
技术公布日:2023/10/11
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐