一种车载ECU启动程序自升级方法和系统与流程

文档序号:31335975发布日期:2022-08-31 08:47阅读:72来源:国知局
一种车载ECU启动程序自升级方法和系统与流程
一种车载ecu启动程序自升级方法和系统
技术领域
1.本发明实施例涉及车载电子嵌入式启动技术领域,尤其涉及一种车载ecu启动程序自升级方法和系统。


背景技术:

2.随着汽车电子领域软件功能剧增,新技术不断应用,在汽车电子产品生产和售后维护阶段,经常需要更新ecu(electronic control unit,电子控制单元)中的应用程序,修改系统参数。传统的解决办法是将ecu模块从整车上拆下来,更新完应用程序之后再安装到车辆中。然而,在很多情况下,装入到车辆中的控制器很不容易拆卸,而且频繁拆卸设备,插拔ecu不仅麻烦而且容易损坏电路板。
3.随着总线网络技术的不断发展,为了解决上述问题,人们开始利用车载网络技术,通过车内总线(如can、lin、flexray)实现ecu的在线升级。当车内ecu需要更新应用程序时,外部设备通过总线接口,将需要更新的数据传递给车内ecu,实现车内ecu的在线升级。但是在产品的研发、生产和售后维护阶段,往往对于ecu在线升级来说有不同的功能需求,如:采用不同的在线升级协议,因此对设备制造商、车辆制造商和现场来说,ecu在线升级系统需要适应不同的应用场合。


技术实现要素:

4.本发明针对现有技术中存在的技术问题,提供一种车载ecu启动程序自升级方法和系统。
5.为解决上述技术问题,第一方面,本发明实施例提供一种车载ecu启动程序自升级方法,包括:
6.车载电子控制单元ecu上电或重启时,进入启动程序;
7.判断是否需要升级,若需要升级,则基于所述启动程序下载应用程序包、启动程序包,将所述应用程序包、所述启动程序包写入至指定flash分区。
8.作为优选的,则基于所述启动程序下载应用程序包、启动程序包,将所述应用程序包、所述启动程序包写入至指定flash分区,具体包括:
9.启动程序将所述应用程序包写入至flash分区内的预设第一区域,以更新所述应用程序;
10.启动程序下载启动程序包,将所述启动程序包写入第三分区;
11.启动程序下载控制flash程序并写入ram,运行所述控制flash程序,基于所述控制flash程序将启动程序包写入至flash分区内的预设第二区域,以更新所述启动程序。
12.作为优选的,若判断不需要升级,则基于所述预设第二区域内的启动程序读取所述预设第一区域内的应用程序。
13.作为优选的,判断是否需要升级,具体包括:
14.若所述启动程序内有自动升级标志,则判断需要升级,否则判断不需要升级;
15.以更新所述启动程序后,还包括:
16.清除所述自动升级标志。
17.作为优选的,所述第三分区位于flash分区内。
18.第二方面,本发明实施例提供一种车载ecu启动程序自升级系统,包括:
19.启动模块,车载电子控制单元ecu上电或重启时,进入启动程序;
20.升级模块,判断是否需要升级,若需要升级,则基于所述启动程序下载应用程序包、启动程序包,将所述应用程序包、所述启动程序包写入至指定flash分区。
21.作为优选的,还包括:
22.所述升级模块具体用于在确定需要升级时,将所述应用程序包写入至flash分区内的预设第一区域,以更新所述应用程序;
23.下载启动程序包,将所述启动程序包写入第三分区;
24.下载控制flash程序并写入ram,运行所述控制flash程序,基于所述控制flash程序将启动程序包写入至flash分区内的预设第二区域,以更新所述启动程序。
25.作为优选的,所述升级模块还用于在判断不需要升级时,基于所述预设第二区域内的启动程序读取所述预设第一区域内的应用程序。
26.第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明第一方面实施例所述车载ecu启动程序自升级方法的步骤。
27.第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如本发明第一方面实施例所述车载ecu启动程序自升级方法的步骤。
28.本发明的有益效果是:相对于传统图像分割算法,本实施例的启动程序可以下载应用程序、新的启动程序、控制flash程序;启动程序将应用程序、新的启动程序写到指定的flash区域;启动程序将控制flash程序放到ram上;运行控制flash程序,将新的启动程序写入启动程序区域;可以实现启动程序的更新、启动程序跳转,当程序出现启动程序问题、flash分区变更等问题,均可通过进行软件更新、修复。
附图说明
29.图1为本发明实施例的车载ecu启动程序自升级方法流程框图;
30.图2为本发明实施例的车载ecu启动程序自升级方法具体流程示意图;
31.图3为本发明实施例的flash分区、ram分区示意图;
32.图4为本发明实施例的电子设备示意图;
33.图5为本发明实施例的计算机可读存储介质示意图。
具体实施方式
34.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
35.本技术实施例中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。
36.本技术实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。本技术的描述中,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列部件或单元的系统、产品或设备没有限定于已列出的部件或单元,而是可选地还包括没有列出的部件或单元,或可选地还包括对于这些产品或设备固有的其它部件或单元。本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
37.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
38.当前科学技术快速发展,在此背景下车载电子行业也发展迅速;oem为了快速占领市场,迫使压缩产品开发周期。前期开发出模型产品,后期通过迭代升级方式不断更新,使得产品不断完善;常规所说的升级为一般产品在上电后先运行启动程序,在启动程序中决定是进入应用程序还是对应用程序进行升级;但是再小的系统也会出现bug,且启动程序中一旦出现bug,只能拆开硬件,通过调试器在线升级,非常繁琐。
39.因此本发明实施例提供一种车载ecu启动程序自升级方法和系统,可以实现启动程序的更新、启动程序跳转,当程序出现启动程序问题、flash分区变更等问题,均可通过进行软件更新、修复。以下将通过多个实施例进行展开说明和介绍。
40.图1至图2为本发明实施例提供一种车载ecu启动程序自升级方法,包括:
41.车载电子控制单元ecu上电或重启时,进入启动程序;
42.判断是否需要升级;
43.若所述启动程序内有自动升级标志,则判断需要升级,基于所述启动程序下载应用程序包、启动程序包,将所述应用程序包、所述启动程序包写入至指定flash分区。
44.当启动程序出现问题、物理分区需要变更,传统升级方式无法通过升级方式解决。本实施例的方案主要解决启动程序问题、分区变化的问题,如图3中所示,本实施例中将flash分区分为用于存储应用程序的第一区域,用于存储启动程序的第二分区,以及存储启动程序包(新启动程序)的第三分区,则基于所述启动程序下载应用程序包、启动程序包,将所述应用程序包、所述启动程序包写入至指定flash分区,具体包括:
45.启动程序将所述应用程序包写入至flash分区内的预设第一区域,即将下载的新应用程序数据写入应用程序段,以更新所述应用程序;
46.启动程序下载新应用程序(应用程序包)对应的启动程序包,将所述启动程序包写入第三分区;
47.启动程序下载控制flash程序,将下载的控制flash程序写入ram上的控制flash区,运行所述控制flash程序,基于所述控制flash程序将启动程序包写入至flash分区内的预设第二区域,以更新所述启动程序,并清除所述自动升级标志。
48.若判断不需要升级,则基于所述预设第二区域内的启动程序读取所述预设第一区
域内的应用程序。
49.本发明实施例的方案可以实现启动程序的更新、启动程序跳转,当程序出现启动程序问题、flash分区变更等问题,均可通过进行软件更新、修复。
50.本发明实施例还提供一种车载ecu启动程序自升级系统,基于上述实施例中的车载ecu启动程序自升级方法,包括:
51.启动模块,车载电子控制单元ecu上电或重启时,进入启动程序;
52.升级模块,判断是否需要升级,若需要升级,则基于所述启动程序下载应用程序包、启动程序包,将所述应用程序包、所述启动程序包写入至指定flash分区。
53.所述升级模块具体用于在确定需要升级时,将所述应用程序包写入至flash分区内的预设第一区域,以更新所述应用程序;
54.下载启动程序包,将所述启动程序包写入第三分区;
55.下载控制flash程序并写入ram,运行所述控制flash程序,基于所述控制flash程序将启动程序包写入至flash分区内的预设第二区域,以更新所述启动程序。
56.所述升级模块还用于在判断不需要升级时,基于所述预设第二区域内的启动程序读取所述预设第一区域内的应用程序。
57.请参阅图3,图3为本发明实施例提供的电子设备的实施例示意图。如图3所示,本发明实施例提了一种电子设备500,包括存储器510、处理器520及存储在存储器520上并可在处理器520上运行的计算机程序511,处理器520执行计算机程序511时实现以下步骤:
58.车载电子控制单元ecu上电或重启时,进入启动程序;
59.判断是否需要升级,若需要升级,则基于所述启动程序下载应用程序包、启动程序包,将所述应用程序包、所述启动程序包写入至指定flash分区:启动程序将所述应用程序包写入至flash分区内的预设第一区域,以更新所述应用程序;启动程序下载启动程序包,将所述启动程序包写入第三分区;启动程序下载控制flash程序并运行所述控制flash程序,基于所述控制flash程序将启动程序包写入至flash分区内的预设第二区域,以更新所述启动程序。
60.请参阅图4,图4为本发明实施例提供的一种计算机可读存储介质的实施例示意图。如图4所示,本实施例提供了一种计算机可读存储介质600,其上存储有计算机程序611,该计算机程序611被处理器执行时实现如下步骤:
61.车载电子控制单元ecu上电或重启时,进入启动程序;
62.判断是否需要升级,若需要升级,则基于所述启动程序下载应用程序包、启动程序包,将所述应用程序包、所述启动程序包写入至指定flash分区:启动程序将所述应用程序包写入至flash分区内的预设第一区域,以更新所述应用程序;启动程序下载启动程序包,将所述启动程序包写入第三分区;启动程序下载控制flash程序并运行所述控制flash程序,基于所述控制flash程序将启动程序包写入至flash分区内的预设第二区域,以更新所述启动程序。
63.需要说明的是,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。
64.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
65.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式计算机或者其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
66.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
67.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
68.尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
69.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1