CN104572141A - 车用电控单元ecu的引导程序的在线更新方法 - Google Patents
车用电控单元ecu的引导程序的在线更新方法 Download PDFInfo
- Publication number
- CN104572141A CN104572141A CN201310471520.6A CN201310471520A CN104572141A CN 104572141 A CN104572141 A CN 104572141A CN 201310471520 A CN201310471520 A CN 201310471520A CN 104572141 A CN104572141 A CN 104572141A
- Authority
- CN
- China
- Prior art keywords
- boot
- service command
- diagnosis service
- control unit
- application program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本发明提供一种车用电控单元ECU的在线更新方法,包括:当电控单元的应用程序接收到表示复位的诊断服务命令时,执行系统复位操作以进入引导程序;进入引导程序后,由引导程序读取更新请求标志,在更新请求标志为有效的情况下清除更新请求标志,进行硬件初始化、参数初始化,使能更新功能以进入更新功能的主流程;在更新功能的主流程中,定时获取当前的诊断服务命令,并根据所获取的诊断服务命令执行擦除操作和更新操作,以完成更新数据的传输及更新;在所有的更新数据传输完成后,对下载更新的应用程序进行一种或多种校验,以确定本次更新的有效性。本发明可在不改动硬件的情况下即可更新应用程序,降低汽车的维修或更新成本。
Description
技术领域
本发明属于汽车领域,特别是涉及一种车用电子控制单元ECU的引导程序的在线更新方法。
背景技术
汽车作为便捷的运输工具,随着人们的生活水平提升,在我国已经逐步走入家庭。至2009年,我国的汽车全年产销量位居世界第一。消费者在选择汽车时,除了关注性价比、售后服务等因素外,对汽车的安全、舒适、环保等功能性的需求正在不断的增加。因此,车载电控单元在汽车上的应用越来越多,功能逐步增强,机构日益复杂。
在九十年代,基本上一辆中档车上只有二十来个电控单元,更多的功能是通过机械结果来完成的。随着人们对汽车功能智能化要求的越来越高,需要用到的电控单元数量也越来越多,需要实现的功能越来越复杂,需要更新换代的频率越来越快。现在,一辆进口的中档车上电控单元有一百多个,而且这种情况随着自动驾驶概念的提出,汽车上的电控单元更新频率只会越来越快。当前,汽车上的电控单元的更新大多是通过更换新的电控单元来实现。
这种方法在以前是可以使用的:一个车用电控单元的开发周期为2年,可以随着新车型的销售寿命使用5年以上。现在,大部分车型都会每年进行一次小改型而五年进行一次大改型。如果继续按照以前的方法操作,这对消费者、汽车公司都是无法接受的。所以,现在汽车上越来越多的电控单元在产品的设计阶段考虑好未来的扩展可能,在不改动硬件的情况下,只更新应用程序,通过引导程序更新应用程序的方式来完成产品的更新换代。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种车用电子控制单元ECU的在线更新技术,以解决汽车电控单元更新换代的问题,降低汽车的维修或更新成本。
为解决上述问题及其他问题,本发明提供一种车用电控单元ECU的在线更新方法,所述电控单元ECU配置有应用程序和引导程序,所述引导程序包括总线通讯模块、程序擦除模块、程序更新模块;所述车用电控单元ECU的在线更新方法包括:当所述电控单元ECU的应用程序通过调用所述总线通讯模块而接收到表示复位的诊断服务命令时,执行系统复位操作以进入引导程序;进入引导程序后,由所述引导程序读取更新请求标志,并在所述更新请求标志为有效的情况下清除所述更新请求标志,并进行硬件初始化、参数初始化,使能更新功能以进入更新功能的主流程;在更新功能的主流程中,定时调用所述总线通讯模块以获取当前的诊断服务命令,并根据所获取的诊断服务命令调度所述程序擦除模块和所述程序更新模块,以完成更新数据的传输及更新;所述程序擦除模块用于将当前非空状态的内存空间擦除为空白状态,便于后期写入数据;所述程序更新模块用于负责将传输的数据写入到为空白状态的内存空间中;在所有的更新数据传输完成后,对下载更新的应用程序进行一种或多种校验,以确定本次更新的有效性。
可选地,所述引导程序还包括非易失性存储区;当所述电控单元ECU的应用程序在接收到表示复位的诊断服务命令后,执行系统复位操作以进入引导程序,包括:当所述电控单元的应用程序接收到表示复位的诊断服务命令时,所述电控单元与诊断仪实现握手,所述应用程序则在所述非易失性存储器中写入更新请求标志后,强制执行一次系统复位操作,使得电控单元进入引导程序。
可选地,所述引导程序的在线更新方法还包括:由所述引导程序读取更新请求标志,在所述更新请求标志为无效的情况下,所述电控单元则从所述引导程序跳转回到所述应用程序中。
可选地,通过定时调用而获取的当前的诊断服务命令包括:表示后续传输的更新数据的数据长度和存储地址的诊断服务命令、表示传输更新的数据内容的诊断服务命令、以及表示更新数据传输完成并校验的诊断服务命令。
可选地,定时调用以获取当前的诊断服务命令,并根据所获取的诊断服务命令而执行相应操作,包括如下中的任一种或者多种:若接收的当前的诊断服务命令为表示后续传输的更新数据的数据长度和存储地址诊断服务命令时,所述引导程序将执行一次擦除操作,将该段区域的数据进行清空;其中,在第一次执行表示后续传输的更新数据的数据长度和存储地址诊断服务命令时,清除所述应用程序的有效性标志;若接收的当前的诊断服务命令为表示传输更新的数据内容的诊断服务命令时,所述引导程序先将接收到的数据内容存储至缓冲区内,每接收满一页数据,调用更新操作,将一页的数据写入到规定的存储地址,同时,更新完成后,缓冲区内的一页数据被释放,等待新的表示传输更新的数据内容的诊断服务命令;若接收的当前的诊断服务命令为表示更新数据传输完成并校验的诊断服务命令时,所述引导程序将所述缓冲区中未写入的数据执行更新操作,更新成功后,将更新的所有数据内容读取出来,并进行校验。
可选地,在所有的更新数据传输完成后,对下载更新的应用程序进行一种或多种校验,以确定本次更新的有效性,包括:在所有的更新数据传输完成后,进行校验操作,将校验得到的校验值与表示更新数据传输完成并校验的诊断服务命令中的校验值进行比较;如果校验得到的校验值与表示更新数据传输完成并校验的诊断服务命令中的校验值相一致,表明该次更新成功,所述应用程序的有效性标志恢复为有效状态;如果校验得到的校验值与表示更新数据传输完成并校验的诊断服务命令中的校验值不一致,表明该次更新不成功,所述应用程序的有效性标志仍然保持无效状态。
可选地,所述校验操作采用的是循环冗余校验CRC-16标准。
可选地,所述总线通讯模块包括CAN总线、LIN总线或K总线。
可选地,所述引导程序还包括定时计数器,所述定时计数器在进入引导程序后开始计数;所述总线通讯模块的工作流程包括:调用所述总线通讯模块,判断通过所述总线通讯模块是否有收到总线通讯帧;若有收到新的诊断服务命令,所述定时计数器清零,重新开始计数,并在后续从所述总线通讯帧中提取出诊断服务命令;若没有收到新的诊断服务命令,则所述定时计数器即加1;判断所述定时计数器中的计数是否超过预设的阈值;若所述定时计数器中的计数超过了预设的阈值,则认定本次更新过程结束,根据程序的校验标志状态决定进入应用程序操作还是等待重新握手更新。
可选地,所述非易失性存储区还存储有应用程序的有效性标志、完整性标志、兼容性标志中的至少一种标志;在引导程序中,在内存空间没有执行过擦除或更新操作前,所述应用程序的这三种标志始终有效;若发生有任一复位,由于应用程序的各个标志有效,复位后进入应用程序,需要重新执行握手功能才能进行更新操作;任何内存空间执行擦除操作后,必须清除应用程序的标志;若在更新过程中出现异常情况或系统复位后,由于应用程序标志无效,无法执行应用程序,系统保持在引导程序中等待系统更新。
本发明所提供的车用电控单元ECU的在线更新方法,在接收到表示复位的诊断服务命令时,执行系统复位操作以进入引导程序,进入引导程序后,通过硬件初始化和参数初始化,使能更新功能以进入更新功能的主流程,在更新功能的主流程中,定时调用所述总线通讯模块以获取当前的诊断服务命令,并根据所获取的诊断服务命令调度所述程序擦除模块和所述程序更新模块,以完成更新数据的传输及更新。可见,本发明可在不改动硬件的情况下,只更新应用程序,通过引导程序更新应用程序的方式来完成产品的更新换代,从而解决现有技术中汽车电控单元更新换代的问题,降低汽车的维修或更新成本。
附图说明
图1为本发明车用电控单元ECU的在线更新方法的概况示意图。
图2为本发明车用电控单元ECU的在线更新方法的流程示意图。
图3为本发明车用电控单元ECU的在线更新方法在进入引导程序后执行相应操作的概括示意图。
图4为配合有定时计数器的总线通讯模块的工作流程图。
具体实施方式
本发明的发明人发现:在现有技术中,汽车上的电控单元的更新大多是通过更换新的电控单元来实现,这样,不仅更新繁琐,且增加汽车的更新或维修成本。
因此,本发明的发明人对现有技术进行了改进,提供一种车用电控单元ECU的在线更新方法,可在不改动硬件的情况下,只更新应用程序,通过引导程序更新应用程序的方式来完成产品的更新换代,从而解决现有技术中汽车电控单元更新换代的问题。
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
请参阅图1和图2,其中,图1为本发明车用电控单元ECU的在线更新方法的概况示意图,图2为本发明车用电控单元ECU的在线更新方法的流程示意图。需说明的是,电控单元是电子控制单元(Electronic Control Unit,ECU)的简称,电控单元ECU的功用是根据其内存的程序和数据对各种传感器输入的信息进行运算、处理、判断,然后输出指令,用来对发动机进行管理。在本发明中,所述电控单元ECU配置有应用程序和引导程序,所述应用程序可以为多个以实现不同的应用需求,所述引导程序则可以包括总线通讯模块、程序擦除模块、程序更新模块、非易失性存储区(例如:EEPROM)等。所述总线通讯模块用来接收更新数据和更新数据所需的各种诊断服务命令,在实际应用中,所述总线通讯模块可以是CAN(Controller Area Network)总线、LIN(Local Interconnect Network)总线、K总线等常规的车用总线协议,优选地,在本实施例中,所述总线通讯模块以CAN总线为例进行说明。所述非易失性存储区(例如EEPROM)则用作存储空间,在本实施例中,所述非易失性存储区不仅可存储有更新请求标志,还可存储有应用程序的有效性标志、完整性标志、兼容性标志中的至少一种标志。
结合图1和图2,本发明车用电控单元ECU的在线更新方法包括:
步骤S101,当所述电控单元ECU的应用程序通过调用总线通讯模块而接收到表示复位的诊断服务命令时,执行系统复位操作以进入引导程序。在本实施例中,电控单元ECU在正常使用过程中始终处于应用程序中,只有当接收到新的表示复位的诊断服务命令后才进行复位操作。由上可知,在本实施例中,所述总线通讯模块采用的是CAN总线,由于是基于CAN总线,则其总线通讯命令可以符合ISO15765-3标准、或ISO14229-1标准、或GMW3110标准。因此,在本实施例中,步骤S101中当所述电控单元ECU的应用程序通过调用总线通讯模块而接收到表示复位的诊断服务命令时,执行系统复位操作以进入引导程序,具体包括:电控单元ECU在正常使用过程中处于应用程序中,当通过CAN总线接收到诊断服务命令0x10、子功能号为0x02时,所述电控单元ECU与诊断仪握手成功,应用程序在非易失性存储器(例如EEPROM)中写入更新请求标志后,强制执行一次系统复位操作,使得所述电控单元ECU进入引导程序。
步骤S103,进入引导程序后,由所述引导程序读取更新请求标志,并在所述更新请求标志为有效的情况下清除所述更新请求标志,并进行硬件初始化、参数初始化,使能更新功能以进入更新功能的主流程。在本实施例中,如上所述,在步骤S101中,更新请求标志是在所述电控单元ECU与诊断仪握手成功后,由所述应用程序在所述非易失性存储器(例如EEPROM)中写入的,且,仅在所述更新请求标志有效的情况下才能使能刷新功能。在本实施例中,请再参阅图3,其为本发明车用电控单元ECU的在线更新方法在进入引导程序后执行相应操作的概括示意图。步骤S103具体包括:进入引导程序后,由所述引导程序读取更新请求标志,判断所读取的所述更新请求标志的有效性。若判断所述更新请求标志为有效,则清除所述更新请求标志,并进行硬件初始化、参数初始化,使能更新功能以进入更新功能的主流程;反之,若判断所述更新请求标志为无效,所述电控单元ECU则从所述引导程序跳转回到所述应用程序中,等待新的诊断服务命令。再有,需指出的是,所述更新请求标志一旦判断完成后,则需要将所述非易失性存储区中的所述更新请求标志予以清除。后续,在数据更新过程中发生中断或者在退出更新功能后,需要所述电控单元ECU与诊断仪重新握手后才能再次进入引导程序,执行相应的更新功能。
步骤S105,在更新功能的主流程中,定时调用所述总线通讯模块以获取当前的诊断服务命令,并根据所获取的诊断服务命令调度所述程序擦除模块和所述程序更新模块,以完成更新数据的传输及更新。
在本实施例中,所述引导程序中包括程序擦除模块和程序更新模块,其中,所述程序擦除模块用于将当前非空状态的内存空间擦除为空白状态,便于后期写入数据,所述程序更新模块用于负责将传输的数据写入到为空白状态的内存空间中。由上述所言的程序擦除模块和程序更新模块的功能可知,对于一个非空状态的内存空间而言,必须先通过所述程序擦除模块执行擦除操作以将所述内存空间擦除为空白状态之后才能再通过所述程序更新模块将更新数据写入到已为空白状态的这一内存空间中。
另外,在步骤S105中,通过定时调用而获取的当前的诊断服务命令包括如下的一种或多种:表示后续传输的更新数据的数据长度和存储地址的诊断服务命令、表示传输更新的数据内容的诊断服务命令、以及表示更新数据传输完成并校验的诊断服务命令。针对CAN总线,表示后续传输的更新数据的数据长度和存储地址的诊断服务命令为0x34,表示传输更新的数据内容的诊断服务命令为0x36,表示更新数据传输完成并校验的诊断服务命令为0x37。以下针对上述各个诊断服务命令所对应操作进行详细描述,即:若接收的当前的诊断服务命令为表示后续传输的更新数据的数据长度和存储地址诊断服务命令0x34时,所述引导程序将执行一次擦除操作,将该段区域的数据进行清空,特别地,在第一次执行表示后续传输的更新数据的数据长度和存储地址诊断服务命令时,须清除所述应用程序的有效性标志。若接收的当前的诊断服务命令为表示传输更新的数据内容的诊断服务命令0x36时,所述引导程序先将接收到的数据内容存储至缓冲区内,每接收满一页数据,调用更新操作,将这一页的数据写入到规定的存储地址中,同时,更新完成后,缓冲区内的一页数据被释放,等待新的表示传输更新的数据内容的诊断服务命令。若接收的当前的诊断服务命令为表示更新数据传输完成并校验的诊断服务命令0x37时,所述引导程序将所述缓冲区中未写入的数据执行更新操作,更新成功后,将更新的所有数据内容读取出来,并进行校验。
步骤S107,在所有的更新数据传输完成后,对下载更新的应用程序进行一种或多种校验,以确定本次更新的有效性。在本实施例中,结合步骤S105,若接收的当前的诊断服务命令为表示更新数据传输完成并校验的诊断服务命令0x37时,表明更新数据传输完成。接收到所述诊断服务命令0x37后,所述引导程序将缓冲区中未写入的数据执行更新操作,更新成功后,将所有更新的数据内容读取出来,并进行校验。在本实施例中,所述校验操作采用的是循环冗余校验CRC-16标准。如此,上述校验操作即具体为:将校验得到的校验值与表示更新数据传输完成并校验的诊断服务命令0x37中的CRC-16校验值进行比较。如果校验得到的校验值与表示更新数据传输完成并校验的诊断服务命令0x37中的CRC-16校验值相一致,表明该次更新成功,所述应用程序的有效性标志恢复为有效状态;如果校验得到的校验值与表示更新数据传输完成并校验的诊断服务命令0x37中的CRC-16校验值不一致,表明该次更新不成功,所述应用程序的有效性标志仍然保持无效状态。
在本发明中,如上所述,所述非易失性存储区(例如EEPROM)还存储有应用程序的有效性标志、完整性标志、兼容性标志中的至少一种标志;在引导程序中,在内存空间没有执行过擦除或刷新操作前,所述应用程序的这三种标志始终有效;若发生有任一复位,由于应用程序的各个标志有效,复位后进入应用程序,需要重新执行握手功能才能进行刷新操作;任何内存空间执行擦除操作后,必须清除应用程序的标志;若在刷新过程中出现异常情况或系统复位后,由于应用程序标志无效,无法执行应用程序,系统保持在引导程序中等待系统刷新。
通过上述各个步骤,可知,电控单元ECU在正常使用时处于应用程序中,当在接收到表示复位的诊断服务命令0x10时,执行系统复位操作以进入引导程序;在进入引导程序后,使能更新功能,定时调用总线通讯模块以获取当前的诊断服务命令,并根据所获取的各个诊断服务命令执行相应的擦除操作和更新操作,以完成更新数据的传输及更新。
再有,在本发明中,所述引导程序还包括用于计时的定时计数器,所述定时计数器可与所述总线通讯模块相配合,所述定时计数器在进入引导程序后开始计数。请参阅图4,其显示了配合有定时计数器的总线通讯模块的工作流程。如图4所示,所述流程包括:
步骤S201,调用所述总线通讯模块以用于接收诊断服务命令,判断通过所述总线通讯模块是否有收到总线通讯帧;若有收到新的诊断服务命令,则在步骤S203,所述定时计数器清零,重新开始计数,并在后续从所述总线通讯帧中提取出诊断服务命令;若没有收到新的诊断服务命令,则在步骤S205,所述定时计数器加1。
步骤S207,判断所述定时计数器中的计数是否超过预设的阈值;若所述定时计数器中的计数超过了预设的阈值,则认定本次更新过程结束,根据程序的校验标志状态决定进入应用程序操作还是等待重新握手、系统复位及更新。针对步骤S207,在一个实施例中,所述总线通讯模块是定时调度的,假设所述定时计数器定时为10ms(即,每10ms调用一次),另外,假设预设的阈值为5s,这样,当所述定时计数器调用的次数超过了500次(即,计时超过了10ms*500=5s),那么就可确定所述定时计数器中的计数已超过了预设的阈值,则认定本次更新过程结束,超时复位。
综上所述,本发明所提供的车用电控单元ECU的在线更新方法,在接收到表示复位的诊断服务命令时,执行系统复位操作以进入引导程序,进入引导程序后,通过硬件初始化和参数初始化,使能更新功能以进入更新功能的主流程,在更新功能的主流程中,定时调用所述总线通讯模块以获取当前的诊断服务命令,并根据所获取的诊断服务命令调度所述程序擦除模块和所述程序更新模块,以完成更新数据的传输及更新。可见,本发明可在不改动硬件的情况下,只更新应用程序,通过引导程序更新应用程序的方式来完成产品的更新换代,从而解决现有技术中汽车电控单元更新换代的问题,降低汽车的维修或更新成本。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种车用电控单元ECU的在线更新方法,所述电控单元ECU配置有应用程序和引导程序,所述引导程序包括总线通讯模块、程序擦除模块、程序更新模块,其特征在于,所述车用电控单元ECU的在线更新方法包括:
当所述电控单元ECU的应用程序通过调用所述总线通讯模块而接收到表示复位的诊断服务命令时,执行系统复位操作以进入引导程序;
进入引导程序后,由所述引导程序读取更新请求标志,并在所述更新请求标志为有效的情况下清除所述更新请求标志,并进行硬件初始化、参数初始化,使能更新功能以进入更新功能的主流程;
在更新功能的主流程中,定时调用所述总线通讯模块以获取当前的诊断服务命令,并根据所获取的诊断服务命令调度所述程序擦除模块和所述程序更新模块,以完成更新数据的传输及更新;所述程序擦除模块用于将当前非空状态的内存空间擦除为空白状态,便于后期写入数据;所述程序更新模块用于负责将传输的数据写入到为空白状态的内存空间中;
在所有的更新数据传输完成后,对下载更新的应用程序进行一种或多种校验,以确定本次更新的有效性。
2.根据权利要求1所述的车用电控单元ECU的引导程序的在线更新方法,其特征在于,所述引导程序还包括非易失性存储区;当所述电控单元ECU的应用程序在接收到表示复位的诊断服务命令后,执行系统复位操作以进入引导程序,包括:当所述电控单元的应用程序接收到表示复位的诊断服务命令时,所述电控单元与诊断仪实现握手,所述应用程序则在所述非易失性存储器中写入更新请求标志后,强制执行一次系统复位操作,使得电控单元进入引导程序。
3.根据权利要求1所述的车用电控单元ECU的引导程序的在线更新方法,其特征在于,还包括:由所述引导程序读取更新请求标志,在所述更新请求标志为无效的情况下,所述电控单元则从所述引导程序跳转回到所述应用程序中。
4.根据权利要求1所述的车用电控单元ECU的引导程序的在线更新方法,其特征在于,通过定时调用而获取的当前的诊断服务命令包括:表示后续传输的更新数据的数据长度和存储地址的诊断服务命令、表示传输更新的数据内容的诊断服务命令、以及表示更新数据传输完成并校验的诊断服务命令。
5.根据权利要求4所述的车用电控单元ECU的引导程序的在线更新方法,其特征在于,定时调用以获取当前的诊断服务命令,并根据所获取的诊断服务命令而执行相应操作,包括如下中的任一种或者多种:
若接收的当前的诊断服务命令为表示后续传输的更新数据的数据长度和存储地址诊断服务命令时,所述引导程序将执行一次擦除操作,将该段区域的数据进行清空;其中,在第一次执行表示后续传输的更新数据的数据长度和存储地址诊断服务命令时,清除所述应用程序的有效性标志;
若接收的当前的诊断服务命令为表示传输更新的数据内容的诊断服务命令时,所述引导程序先将接收到的数据内容存储至缓冲区内,每接收满一页数据,调用更新操作,将一页的数据写入到规定的存储地址,同时,更新完成后,缓冲区内的一页数据被释放,等待新的表示传输更新的数据内容的诊断服务命令;
若接收的当前的诊断服务命令为表示更新数据传输完成并校验的诊断服务命令时,所述引导程序将所述缓冲区中未写入的数据执行更新操作,更新成功后,将更新的所有数据内容读取出来,并进行校验。
6.根据权利要求5所述的车用电控单元ECU的引导程序的在线更新方法,其特征在于,在所有的更新数据传输完成后,对下载更新的应用程序进行一种或多种校验,以确定本次更新的有效性,包括:在所有的更新数据传输完成后,进行校验操作,将校验得到的校验值与表示更新数据传输完成并校验的诊断服务命令中的校验值进行比较;如果校验得到的校验值与表示更新数据传输完成并校验的诊断服务命令中的校验值相一致,表明该次更新成功,所述应用程序的有效性标志恢复为有效状态;如果校验得到的校验值与表示更新数据传输完成并校验的诊断服务命令中的校验值不一致,表明该次更新不成功,所述应用程序的有效性标志仍然保持无效状态。
7.根据权利要求6所述的车用电控单元ECU的引导程序的在线更新方法,其特征在于,所述校验操作采用的是循环冗余校验CRC-16标准。
8.根据权利要求1所述的车用电控单元ECU的引导程序的在线更新方法,其特征在于,所述总线通讯模块包括CAN总线、LIN总线或K总线。
9.根据权利要求1所述的车用电控单元ECU的引导程序的在线更新方法,其特征在于,所述引导程序还包括定时计数器,所述定时计数器在进入引导程序后开始计数;所述总线通讯模块的工作流程包括:
调用所述总线通讯模块,判断通过所述总线通讯模块是否有收到总线通讯帧;若有收到新的诊断服务命令,所述定时计数器清零,重新开始计数,并在后续从所述总线通讯帧中提取出诊断服务命令;若没有收到新的诊断服务命令,则所述定时计数器即加1;
判断所述定时计数器中的计数是否超过预设的阈值;若所述定时计数器中的计数超过了预设的阈值,则认定本次更新过程结束,根据程序的校验标志状态决定进入应用程序操作还是等待重新握手更新。
10.根据权利要求1所述的车用电控单元ECU的引导程序的在线更新方法,其特征在于,所述非易失性存储区还存储有应用程序的有效性标志、完整性标志、兼容性标志中的至少一种标志;在引导程序中,在内存空间没有执行过擦除或刷新操作前,所述应用程序的这三种标志始终有效;若发生有任一复位,由于应用程序的各个标志有效,复位后进入应用程序,需要重新执行握手功能才能进行刷新操作;任何内存空间执行擦除操作后,必须清除应用程序的标志;若在刷新过程中出现异常情况或系统复位后,由于应用程序标志无效,无法执行应用程序,系统保持在引导程序中等待系统刷新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310471520.6A CN104572141B (zh) | 2013-10-10 | 2013-10-10 | 车用电控单元ecu的引导程序的在线更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310471520.6A CN104572141B (zh) | 2013-10-10 | 2013-10-10 | 车用电控单元ecu的引导程序的在线更新方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104572141A true CN104572141A (zh) | 2015-04-29 |
CN104572141B CN104572141B (zh) | 2019-03-12 |
Family
ID=53088306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310471520.6A Active CN104572141B (zh) | 2013-10-10 | 2013-10-10 | 车用电控单元ecu的引导程序的在线更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104572141B (zh) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250170A (zh) * | 2015-06-15 | 2016-12-21 | 李尔公司 | 用于ota更新车辆电子控制单元的方法 |
CN106647238A (zh) * | 2016-12-13 | 2017-05-10 | 安徽航瑞航空动力装备有限公司 | 一种基于can线刷新冗余控制器的方法 |
CN106843979A (zh) * | 2017-01-24 | 2017-06-13 | 北京经纬恒润科技有限公司 | 一种应用程序的更新方法及装置 |
CN106990982A (zh) * | 2017-03-20 | 2017-07-28 | 北京新能源汽车股份有限公司 | 程序更新方法及装置 |
CN107102920A (zh) * | 2017-03-14 | 2017-08-29 | 延锋伟世通电子科技(南京)有限公司 | Oncan仪表在线调试系统及方法 |
CN107491336A (zh) * | 2017-09-05 | 2017-12-19 | 武汉理工大学 | 一种汽车电控模块刷新系统及方法 |
CN108170443A (zh) * | 2016-12-06 | 2018-06-15 | 上汽通用汽车有限公司 | 车载lin总线零件软件刷新系统及方法 |
CN108279917A (zh) * | 2017-01-06 | 2018-07-13 | 福特全球技术公司 | 软件更新管理 |
CN108984456A (zh) * | 2017-05-31 | 2018-12-11 | 无锡华润矽科微电子有限公司 | 基于双向握手实现进入烧写模式的方法及系统 |
WO2019072840A1 (de) * | 2017-10-13 | 2019-04-18 | Robert Bosch Gmbh | Vorrichtung zur absicherung von diagnosebefehlen an ein steuergerät und entsprechendes kraftfahrzeug |
CN109697079A (zh) * | 2018-12-13 | 2019-04-30 | 杭州迪普科技股份有限公司 | 引导加载程序的更新方法及装置 |
CN110214308A (zh) * | 2017-02-01 | 2019-09-06 | 住友电气工业株式会社 | 控制装置、程序更新方法和计算机程序 |
CN110362321A (zh) * | 2018-04-10 | 2019-10-22 | 台达电子工业股份有限公司 | 应用程序的更新方法 |
CN110532001A (zh) * | 2019-09-09 | 2019-12-03 | 阳光电源股份有限公司 | 车辆控制器的刷写方法、系统、诊断设备及车辆控制器 |
CN110795159A (zh) * | 2019-10-30 | 2020-02-14 | 福建省汽车工业集团云度新能源汽车股份有限公司 | 一种防止车载ecu错误升级无法重刷的方法及存储设备 |
CN111742293A (zh) * | 2018-03-05 | 2020-10-02 | 株式会社自动网络技术研究所 | 保存装置、通信系统、保存方法及计算机程序 |
CN111983948A (zh) * | 2020-07-07 | 2020-11-24 | 宝能(广州)汽车研究院有限公司 | 多传感器数据同步方法及其设备 |
CN112136106A (zh) * | 2018-05-15 | 2020-12-25 | 株式会社电装 | 电子控制装置以及会话确立程序 |
CN112198863A (zh) * | 2020-09-23 | 2021-01-08 | 江铃汽车股份有限公司 | 诊断功能控制方法、系统、存储介质、车载通讯盒及车辆 |
CN112667265A (zh) * | 2021-01-20 | 2021-04-16 | 北京经纬恒润科技股份有限公司 | 一种引导程序更新方法及装置 |
CN112783519A (zh) * | 2019-11-04 | 2021-05-11 | 航天科工惯性技术有限公司 | 一种用于测量短节的应用程序更新方法和系统 |
CN113419748A (zh) * | 2021-07-06 | 2021-09-21 | 柏科(常熟)电机有限公司 | 一种ecu原车数据的查找与清除方法、存储介质 |
CN114760161A (zh) * | 2021-11-19 | 2022-07-15 | 广州汽车集团股份有限公司 | Lin总线调度方法、装置、设备和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101369153A (zh) * | 2008-08-13 | 2009-02-18 | 奇瑞汽车股份有限公司 | 汽车电子控制器软件can线烧写的控制方法 |
CN101452263A (zh) * | 2007-12-06 | 2009-06-10 | 联创汽车电子有限公司 | 汽车电子控制器及其启动控制方法 |
CN102053569A (zh) * | 2010-12-13 | 2011-05-11 | 普华基础软件股份有限公司 | 用于汽车电子控制器的自刷新方法及其装置 |
CN102135922A (zh) * | 2011-03-18 | 2011-07-27 | 北京经纬恒润科技有限公司 | 应用程序的刷新方法和系统 |
CN102236566A (zh) * | 2010-04-28 | 2011-11-09 | 上海通用汽车有限公司 | 车载电子控制模块软件刷新系统及其方法 |
CN102253849A (zh) * | 2011-06-08 | 2011-11-23 | 重庆金美通信有限责任公司 | 一种基于CAN总线的智能型BootLoader |
CN103019788A (zh) * | 2012-12-14 | 2013-04-03 | 上海邮政科学研究院 | 一种基于can总线的远程在线升级方法 |
CN103294511A (zh) * | 2013-05-31 | 2013-09-11 | 哈尔滨工业大学 | 基于CAN总线的bootloader软件的升级方法 |
-
2013
- 2013-10-10 CN CN201310471520.6A patent/CN104572141B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101452263A (zh) * | 2007-12-06 | 2009-06-10 | 联创汽车电子有限公司 | 汽车电子控制器及其启动控制方法 |
CN101369153A (zh) * | 2008-08-13 | 2009-02-18 | 奇瑞汽车股份有限公司 | 汽车电子控制器软件can线烧写的控制方法 |
CN102236566A (zh) * | 2010-04-28 | 2011-11-09 | 上海通用汽车有限公司 | 车载电子控制模块软件刷新系统及其方法 |
CN102053569A (zh) * | 2010-12-13 | 2011-05-11 | 普华基础软件股份有限公司 | 用于汽车电子控制器的自刷新方法及其装置 |
CN102135922A (zh) * | 2011-03-18 | 2011-07-27 | 北京经纬恒润科技有限公司 | 应用程序的刷新方法和系统 |
CN102253849A (zh) * | 2011-06-08 | 2011-11-23 | 重庆金美通信有限责任公司 | 一种基于CAN总线的智能型BootLoader |
CN103019788A (zh) * | 2012-12-14 | 2013-04-03 | 上海邮政科学研究院 | 一种基于can总线的远程在线升级方法 |
CN103294511A (zh) * | 2013-05-31 | 2013-09-11 | 哈尔滨工业大学 | 基于CAN总线的bootloader软件的升级方法 |
Cited By (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250170A (zh) * | 2015-06-15 | 2016-12-21 | 李尔公司 | 用于ota更新车辆电子控制单元的方法 |
CN106250170B (zh) * | 2015-06-15 | 2019-10-01 | 李尔公司 | 用于ota更新车辆电子控制单元的方法 |
CN108170443A (zh) * | 2016-12-06 | 2018-06-15 | 上汽通用汽车有限公司 | 车载lin总线零件软件刷新系统及方法 |
CN106647238A (zh) * | 2016-12-13 | 2017-05-10 | 安徽航瑞航空动力装备有限公司 | 一种基于can线刷新冗余控制器的方法 |
CN106647238B (zh) * | 2016-12-13 | 2019-09-20 | 安徽航瑞航空动力装备有限公司 | 一种基于can线刷新冗余控制器的方法 |
CN108279917B (zh) * | 2017-01-06 | 2023-07-25 | 福特全球技术公司 | 软件更新管理 |
CN108279917A (zh) * | 2017-01-06 | 2018-07-13 | 福特全球技术公司 | 软件更新管理 |
CN106843979A (zh) * | 2017-01-24 | 2017-06-13 | 北京经纬恒润科技有限公司 | 一种应用程序的更新方法及装置 |
CN110214308A (zh) * | 2017-02-01 | 2019-09-06 | 住友电气工业株式会社 | 控制装置、程序更新方法和计算机程序 |
CN110214308B (zh) * | 2017-02-01 | 2023-01-06 | 住友电气工业株式会社 | 控制装置、程序更新方法和计算机程序 |
CN107102920B (zh) * | 2017-03-14 | 2021-10-26 | 延锋伟世通电子科技(南京)有限公司 | Oncan仪表在线调试系统及方法 |
CN107102920A (zh) * | 2017-03-14 | 2017-08-29 | 延锋伟世通电子科技(南京)有限公司 | Oncan仪表在线调试系统及方法 |
CN106990982A (zh) * | 2017-03-20 | 2017-07-28 | 北京新能源汽车股份有限公司 | 程序更新方法及装置 |
CN108984456A (zh) * | 2017-05-31 | 2018-12-11 | 无锡华润矽科微电子有限公司 | 基于双向握手实现进入烧写模式的方法及系统 |
CN108984456B (zh) * | 2017-05-31 | 2021-04-23 | 华润微集成电路(无锡)有限公司 | 基于双向握手实现进入烧写模式的方法及系统 |
CN107491336A (zh) * | 2017-09-05 | 2017-12-19 | 武汉理工大学 | 一种汽车电控模块刷新系统及方法 |
US11455393B2 (en) | 2017-10-13 | 2022-09-27 | Robert Bosch Gmbh | Device for securing diagnostic commands to a control unit, and corresponding motor vehicle |
CN111183412A (zh) * | 2017-10-13 | 2020-05-19 | 罗伯特·博世有限公司 | 用于保护对控制仪器的诊断指令的设备和相应的机动车 |
CN111183412B (zh) * | 2017-10-13 | 2024-03-01 | 罗伯特·博世有限公司 | 用于保护对控制仪器的诊断指令的设备和相应的机动车 |
WO2019072840A1 (de) * | 2017-10-13 | 2019-04-18 | Robert Bosch Gmbh | Vorrichtung zur absicherung von diagnosebefehlen an ein steuergerät und entsprechendes kraftfahrzeug |
CN111742293A (zh) * | 2018-03-05 | 2020-10-02 | 株式会社自动网络技术研究所 | 保存装置、通信系统、保存方法及计算机程序 |
CN110362321A (zh) * | 2018-04-10 | 2019-10-22 | 台达电子工业股份有限公司 | 应用程序的更新方法 |
CN110362321B (zh) * | 2018-04-10 | 2022-10-11 | 台达电子工业股份有限公司 | 应用程序的更新方法 |
CN112136106A (zh) * | 2018-05-15 | 2020-12-25 | 株式会社电装 | 电子控制装置以及会话确立程序 |
CN109697079A (zh) * | 2018-12-13 | 2019-04-30 | 杭州迪普科技股份有限公司 | 引导加载程序的更新方法及装置 |
CN110532001A (zh) * | 2019-09-09 | 2019-12-03 | 阳光电源股份有限公司 | 车辆控制器的刷写方法、系统、诊断设备及车辆控制器 |
CN110795159A (zh) * | 2019-10-30 | 2020-02-14 | 福建省汽车工业集团云度新能源汽车股份有限公司 | 一种防止车载ecu错误升级无法重刷的方法及存储设备 |
CN110795159B (zh) * | 2019-10-30 | 2023-07-21 | 福建省汽车工业集团云度新能源汽车股份有限公司 | 一种防止车载ecu错误升级无法重刷的方法及存储设备 |
CN112783519B (zh) * | 2019-11-04 | 2023-10-20 | 航天科工惯性技术有限公司 | 一种用于测量短节的应用程序更新方法和系统 |
CN112783519A (zh) * | 2019-11-04 | 2021-05-11 | 航天科工惯性技术有限公司 | 一种用于测量短节的应用程序更新方法和系统 |
CN111983948A (zh) * | 2020-07-07 | 2020-11-24 | 宝能(广州)汽车研究院有限公司 | 多传感器数据同步方法及其设备 |
CN112198863A (zh) * | 2020-09-23 | 2021-01-08 | 江铃汽车股份有限公司 | 诊断功能控制方法、系统、存储介质、车载通讯盒及车辆 |
CN112667265A (zh) * | 2021-01-20 | 2021-04-16 | 北京经纬恒润科技股份有限公司 | 一种引导程序更新方法及装置 |
CN112667265B (zh) * | 2021-01-20 | 2024-05-07 | 北京经纬恒润科技股份有限公司 | 一种引导程序更新方法及装置 |
CN113419748A (zh) * | 2021-07-06 | 2021-09-21 | 柏科(常熟)电机有限公司 | 一种ecu原车数据的查找与清除方法、存储介质 |
CN113419748B (zh) * | 2021-07-06 | 2024-03-15 | 柏科(常熟)电机有限公司 | 一种ecu原车数据的查找与清除方法、存储介质 |
CN114760161A (zh) * | 2021-11-19 | 2022-07-15 | 广州汽车集团股份有限公司 | Lin总线调度方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104572141B (zh) | 2019-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104572141A (zh) | 车用电控单元ecu的引导程序的在线更新方法 | |
CN109933348B (zh) | 一种电子控制单元中Bootloader的更新方法和装置 | |
US9880927B2 (en) | Functionally expandable vehicle control device and method for supplementing the functionality of a vehicle control device | |
CN102902556A (zh) | 一种嵌入式设备的多级引导加载方法 | |
CN110244966A (zh) | 一种基于uds的bootloader程序在线更新方法 | |
CN103577201B (zh) | 嵌入式双系统的更新方法及系统 | |
CN105573787A (zh) | 基于车载T-Box实现软件升级的方法及装置 | |
CN107506309B (zh) | 终端及闪存数据写入方法和计算机可读存储介质 | |
CN109358887A (zh) | 一种单片机程序的在线升级方法、装置及系统 | |
US20210141634A1 (en) | Device and method for over the air update of vehicle | |
US20150160940A1 (en) | Method for changing the software in the memory of an electronic control unit | |
CN103617058B (zh) | 基于qnx的应用软件安装、卸载系统及方法 | |
CN105893090A (zh) | 一种嵌入式系统bootrom和应用程序升级方法 | |
CN105739961A (zh) | 一种嵌入式系统的启动方法和装置 | |
CN103677943A (zh) | 一种缝纫机控制器软件升级方法 | |
CN103744712A (zh) | 一种应用程序的更新方法及装置 | |
CN103501327A (zh) | 基于移动终端应用的下载方法和装置 | |
CN108958784A (zh) | 软件升级控制方法、家电设备、服务器、装置及介质 | |
CN108874422B (zh) | 一种冰箱电控板的软件在线升级方法、冰箱电控板和冰箱 | |
CN101667133A (zh) | 固件更新方法和使用该方法更新固件的芯片 | |
CN109683470A (zh) | 一种软硬件自适应匹配方法、装置及驱动装置 | |
CN104137074A (zh) | 多环境计算系统中资源使用的优化 | |
CN108920196A (zh) | 整车控制器启动装载升级方法、装置、整车控制器及车辆 | |
CN116893837A (zh) | 一种用于电动汽车的ecu的无感刷新方法 | |
CN116431186A (zh) | 一种车载ecu的升级方法、装置及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |