CN111736873A - 电子控制单元的程序更新方法、装置、设备和存储介质 - Google Patents
电子控制单元的程序更新方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN111736873A CN111736873A CN202010577074.7A CN202010577074A CN111736873A CN 111736873 A CN111736873 A CN 111736873A CN 202010577074 A CN202010577074 A CN 202010577074A CN 111736873 A CN111736873 A CN 111736873A
- Authority
- CN
- China
- Prior art keywords
- electronic control
- control unit
- vehicle
- updated
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种电子控制单元的程序更新方法、装置、设备和存储介质。该方法包括:向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进入扩展模式;控制车辆内的待更新电子控制单元进入编程模式;根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新。本发明实施例通过采用上述技术方案,在进行程序更新之前,通过包含肯定响应抑制位的扩展模式切换指令将车辆内的所有电子控制单元切换为扩展模式,能够降低车辆数据总线的负载,从而降低车辆电子控制单元程序更新过程发送错误的概率,提高程序更新过程的可靠性,并降低车辆行驶中存在的安全隐患。
Description
技术领域
本发明涉及自动化技术领域,尤其涉及一种电子控制单元的程序更新方法、装置、设备和存储介质。
背景技术
随着车辆电子技术的迅速发展,汽车上所安装的电子控制单元的数量也越来越多,为了满足汽车在开发、生产和售后等阶段的不同需求,汽车电子控制单元的程序更新也越来越多,越来越频繁。
现有技术在对汽车上的电子控制单元进行程序更新时,会将汽车内需要进行程序更新的电子控制单元切换为非工作状态,并保持汽车内其他不需要进行程序更新的电子控制单元的工作状态,以使汽车内其他不需要进行程序更新的电子控制单元正常工作。
然而,现有技术中的程序更新方式会使得电子控制单元的程序更新过程极易发生错误,程序更新过程的可靠性较低,且会为汽车行驶带来安全隐患。
发明内容
有鉴于此,本发明实施例提供一种电子控制单元的程序更新方法、装置、设备和存储介质,以提高电子控制单元程序更新过程的可靠性。
第一方面,本发明实施例提供了一种电子控制单元的程序更新方法,包括:
向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进入扩展模式;
控制车辆内的待更新电子控制单元进入编程模式;
根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新。
第二方面,本发明实施例提供了一种电子控制单元的程序更新装置,包括:
扩展发送模块,用于向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进入扩展模式;
编程控制模块,用于控制车辆内的待更新电子控制单元进入编程模式;
程序更新模块,用于根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新。
第三方面,本发明实施例提供了一种诊断设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例所述的电子控制单元的程序更新方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所述的电子控制单元的程序更新方法。
在上述更新电子控制单元的程序的技术方案中,向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进行扩展模式;控制车辆内的待更新电子控制单元进入编程模式;进而,根据本地存储的待更新程序文件控制待更新电子控制单元进行程序更新。本发明实施例通过采用上述技术方案,在进行程序更新之前,通过包含肯定响应抑制位的扩展模式切换指令将车辆内的所有电子控制单元切换为扩展模式,能够降低车辆数据总线的负载,从而降低车辆电子控制单元程序更新过程发送错误的概率,提高程序更新过程的可靠性,并降低车辆行驶中存在的安全隐患。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明实施例一提供的一种电子控制单元的程序更新方法的流程示意图;
图2为本发明实施例二提供的一种电子控制单元的程序更新方法的流程示意图;
图3为本发明实施例二提供的一种电子控制单元的程序更新方法的示例图;
图4为本发明实施例三提供的一种电子控制单元的程序更新装置的结构框图;
图5为本发明实施例四提供的一种诊断设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。此外,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合
实施例一
本发明实施例一提供一种电子控制单元的程序更新方法。该方法可以由电子控制单元的程序更新装置执行,其中,该装置可以由软件和/或硬件实现,一般可集成在计算机设备中,典型的,可以集成在诊断设备中。图1是本发明实施例一提供的电子控制单元的程序更新方法的流程示意图,如图1所示,该方法包括:
S101、向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进入扩展模式。
在本实施例中,电子控制单元具体可以为汽车电子控制单元(AutomotiveElectronic Control Unit),汽车电子控制单元可以理解为汽车中由集成电路组成的、用于实现车辆数据分析和处理发送等功能的控制装置;肯定响应抑制位可以理解为用于禁止电子控制单元对肯定响应抑制位所属的指令进行肯定响应的比特位,即,若某一指令中存在肯定响应抑制位,则电子控制单元不对该指令进行肯定响应。
示例性的,诊断设备可以与车辆内的所有电子控制单元建立通信连接,控制待更新电子控制单元检测车辆的当前工况,并在车辆的当前工况满足待更新电子控制单元的程序更新条件时,控制车辆内的电子控制单元由正常模式(Default Session)切换为扩展模式(Extended Session),以将车辆内的各电子控制单元调整为非工作状态,降低程序更新过程中车辆数据总线的负载。
其中,诊断设备可以直接或通过车辆内的网关与车辆内的各电子控制单元建立通信连接,相应的,诊断设备可以直接向车辆内的电子控制单元发送指令并接收车辆内的控制单元发送的响应信息;也可以经由车辆内的网关向车辆内的电子控制单元发送指令并通过车辆内的网关接收车辆内的控制单元发送的响应信息。程序更新条件可以根据需要设置,不同电子控制单元进行程序更新时所需满足的程序更新条件可以不相同,举例而言,待更新电子控制单元的程序更新条件可以包括车辆的钥匙状态、挡位信息、当前车速和电子控制单元电压中的一种或多种,相应的,当车辆的车辆钥匙处于上电状态、车辆处于P挡或N档、车辆当前车速为零和/或电子控制单元电压为12V时,可以确定车辆的当前公开满足其程序更新条件。
具体的,在控制车辆内的电子控制单元进行模式切换时,诊断设备可以生成包含肯定响应抑制位的扩展模式切换指令,并通过功能寻址的方式将所生成的扩展模式切换指令发送给车辆内的所有电子控制单元,如通过车辆的数据总线将扩展模式切换指令发送给车辆内的所有电子控制单元;相应的,车辆内的各电子控制单元在接收到诊断设备发送的包含肯定响应抑制位的扩展模式切换指令时,将自身的工作模式由正常模式切换为扩展模式,并在自身未正常切换为扩展模式时,对诊断设备进行否定响应,如向诊断设备发送否定响应信息。基于此,由于扩展模式切换指令中存在肯定响应抑制位,车辆内的各电子控制单元在正常切换为扩展模式时,并不会对诊断设备进行肯定响应,即无需通过数据总线向诊断设备发送肯定响应信息,从而能够进一步降低数据总线在程序更新过程中的负载。
S102、控制车辆内的待更新电子控制单元进入编程模式。
其中,待更新电子控制单元可以理解为车辆中需要进行程序更新的电子控制单元。当汽车中的电子控制单元处于编程模式(Programming Session)时,电子控制单元可以执行程序更新的操作。
具体的,诊断设备可以首先确定车辆内当前需要进行程序更新的待更新电子控制单元,然后通过物理寻址的方式向该待更新电子控制单元发送编程模式切换指令;相应的,待更新电子控制单元接收到诊断设备发送的编程模式切换指令后,将自身的工作模式切换为编程模式,并可以进一步根据自身是否成功切换为编程模式向诊断设备进行肯定响应或否定响应;从而,诊断设备可以在接收到待更新电子控制单元的肯定响应时,继续执行S103,并在接收到待更新电子控制单元的否定响应时,重复执行S102,直至接收到待更新电子控制单元的肯定响应为止。
S103、根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新。
具体的,诊断设备将本地存储的待更新程序文件发送给待更新电子控制单元,并控制该待更新电子控制单元基于该待更新程序文件进行程序更新。其中,待更新程序文件可以理解为待更新程序的程序文件,待更新程序具体可以为待更新电子控制单元本次需要更新的程序,其可以包括驱动程序和/或应用程序。
示例性的,诊断设备可以首先将待更新程序文件中的驱动程序文件发送给待更新电子控制单元,并向待更新电子控制单元发送驱动程序校验指令;相应的,待更新电子控制单元根据接收到的驱动程序文件写入新的驱动程序,在写入完成后,基于诊断设备发送的驱动程序校验指令对所安装的驱动程序进行校验,并在校验通过后,向诊断设备发送第一响应信息;诊断设备在接收到待更新电子控制单元发送的第一响应信息后,向待更新电子控制单元发送应用程序擦除指令;待更新电子控制单元在接收到诊断设备发送的应用程序擦除指令后,擦除自身已写入的原始应用程序,并向将诊断设备发送第二响应信息;诊断设备在接收到待更新电子通知单元发送的第二响应信息后,将待更新程序文件中的应用程序文件发送给待更新电子控制单元,并将待更新电子控制单元发送应用程序校验指令;待更新电子控制单元根据接收到的驱动程序文件更新自身的应用程序,在更新完成后,基于诊断设备发送的应用程序校验指令对所安装的应用程序进行校验,并在校验通过后,向诊断设备发送第三响应信息;诊断设备在接收到待更新电子控制单元发送的第三响应信息之后,向待更新电子控制单元发送一致性检查指令;相应的,待更新电子控制单元根据诊断设备发送的一致性检查指令检测写入的驱动程序和应用程序之间的一致性,若一致性检查通过,则向诊断设备发送第四响应信息,从而,诊断设备在接收到待更新电子控制单元发送的第四响应信息后,确定待更新电子控制单元程序成功写入。相应的,若一致性检查未通过,则可以向工作人员发送提醒信息,以提醒工作人员程序更新出现错误。
可以理解的是,当待更新电子控制单元具有锁定状态和未锁定状态,且待更新电子控制单元只有在未锁定状态下才能够进行程序更新时,在控制待更新电子控制单元进行程序更新之前,诊断设备还可以向待更新电子控制单元发送解锁指令,以将待更新电子控制单元解锁,即待更新电子控制单元在接收到诊断设备发送的解锁指令后,将自身由锁定状态切换为未锁定状态,以便后续进行程序更新。
本发明实施例一提供的电子控制单元的程序更新方法,向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进行扩展模式;控制车辆内的待更新电子控制单元进入编程模式;进而,根据本地存储的待更新程序文件控制待更新电子控制单元进行程序更新。本实施例通过采用上述技术方案,在进行程序更新之前,通过包含肯定响应抑制位的扩展模式切换指令将车辆内的所有电子控制单元切换为扩展模式,能够降低车辆数据总线的负载,从而降低车辆电子控制单元程序更新过程发送错误的概率,提高程序更新过程的可靠性,并降低车辆行驶中存在的安全隐患。
实施例二
图2为本发明实施例二提供的一种电子控制单元的程序更新方法的流程示意图。本实施例在上述实施例的基础上进行优化,进一步地,在所述控制车辆内的待更新电子控制单元进入编程模式之前,还包括:向车辆内的所有电子控制单元发送包含肯定响应抑制位的停止故障码设定指令,以控制车辆内的电子控制单元停止记录故障信息;向车辆内的所有电子控制单元发送包含肯定响应抑制位的停止总线通信指令,以控制车辆内的电子控制单元停止进行总线通信。
进一步地,在所述根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新之后,还包括:控制所述待更新电子控制单元复位以进入正常模式;向车辆内的所有电子控制单元发送包含肯定响应抑制位的工作恢复指令,以控制车辆内的电子控制单元进入正常模式;控制车辆内的所有电子控制单元清除在待更新电子控制单元程序更新期间生成的故障信息。
进一步地,在所述控制车辆内的待更新电子控制单元进入编程模式之后,还包括:控制所述待更新电子控制单元记录当前更新信息,所述当前更新信息包括本次程序更新的指纹信息和/或更新时间信息。
相应的,如图2所示,本实施例提供的电子控制单元的程序更新方法包括:
S201、向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进入扩展模式。
S202、向车辆内的所有电子控制单元发送包含肯定响应抑制位的停止故障码设定指令,以控制车辆内的电子控制单元停止记录故障信息。
示例性的,诊断设备可以在发送扩展模式切换指令之后经过设定时间长度时,或者,在发送扩展模式切换指令之后经过设定时间长度且未成功切换至扩展模式的电子控制单元的数量低于设定数量阈值时,生成包含肯定响应抑制位的停止故障设定指令,并通过功能寻址的方式将其发送给车辆内的所有电子控制单元;相应的,车辆内的电子控制单元在接收到诊断设备发送的停止故障码设定指令之后,停止记录故障信息,并在停止成功时,不向诊断设备发送任何响应信息,在停止失败时,向诊断设备发送否定响应信息。
其中,停止故障码设定指令可以理解为用于指示电子控制单元停止记录故障信息的指令,停止故障码设定指令中包含的肯定响应抑制位能够禁止电子控制单元向诊断设备发送针对该停止故障码设定指令的肯定响应信息。未成功切换至扩展模式的电子控制单元的数量可以基于在诊断设备发送扩展模式切换指令之后的设定时间长度内向诊断设备发送否定响应的电子控制单元的数量确定。
S203、向车辆内的所有电子控制单元发送包含肯定响应抑制位的停止总线通信指令,以控制车辆内的电子控制单元停止进行总线通信。
示例性的,诊断设备可以在发送停止故障码设定指令之后经过设定时间长度时,或者,在发送停止故障码设定指令之后经过预设时间长度且仍在记录故障信息的电子控制单元的数量低于预设数量阈值时,生成包含肯定响应抑制位的停止总线通信指令,并通过功能寻址的方式将其发送给车辆内的所有电子控制单元;相应的,车辆内的电子控制单元在接收到诊断设备发送的停止总线通信指令之后,停止进行总线通信,即停止通过车辆数据总线收发数据,并在停止成功时,不向诊断设备发送任何响应信息,在停止失败时,向诊断设备发送否定响应信息。
其中,停止总线通信指令可以理解为用于指示电子控制单元停止通过数据总线进行通信的指令,停止总线通信指令中包含的肯定响应抑制位能够禁止电子控制单元向诊断设备发送针对该停止总线通信指令的肯定响应信息。仍在记录故障信息的电子控制单元的数量可以基于在诊断设备发送停止故障码设定指令之后的预设时间长度内向诊断设备发送否定响应的电子控制单元的数量确定。
S204、控制车辆内的待更新电子控制单元进入编程模式。
示例性的,诊断设备可以在发送停止总线通信指令之后经过一设定的时间长度时,或者,在发送停止总线通信指令之后经过一设定的时间长度且此时仍在进行总线通信的电子控制单元的数量低于预设数量阈值时,控制车辆内的待更新电子控制单元进入编程模式。
S205、控制所述待更新电子控制单元记录当前更新信息,所述当前更新信息包括本次程序更新的指纹信息和/或更新时间信息。
示例性的,诊断设备可以获取本次程序更新的指纹信息,生成携带有该指纹信息的写入指纹信息指令,并将所生成的写入指纹信息指令发送给待更新电子控制单元;相应的,待更新电子控制单元可以获取并写入诊断设备中携带的指纹信息,并在写入完成后,向诊断设备发送针对该写入指纹信息指令的肯定响应信息;诊断设备接收到待更新电子控制单元发送的肯定响应信息之后,生成写入更新时间信息指令,并将其发送给待更新电子控制单元;从而,待更新电子控制单元可以在接收到诊断设备发送的写入更新时间信息指令后,写入本次的更新时间信息,并在写入完成后,向诊断设备发送针对该写入更新时间信息指令的肯定响应信息。
其中,指纹信息可以为表征本次程序更新的控制方的相关信息,如待更新程序文件的版本信息、诊断设备的标识信息和/或诊断设备所属4S店的身份ID等;更新时间信息可以为本次程序更新的时间信息。写入更新时间信息指令中可以携带或不携带本次程序更新的更新时间信息,相应的,当写入更新时间信息指令中携带有本次程序更新的更新时间信息时,待更新电子控制单元可以直接自该写入更新时间信息指令中获取需要写入的更新时间信息;当写入更新时间信息中未携带本次程序更新的更新时间信息时,待更新电子控制单元可以获取当前的时间信息作为需要写入的更新时间信息。
在本实施例中,待更新电子控制单元中所写入的更新信息可用于后续展现给工作人员,以便于工作人员后期追溯待更新电子控制单元的程序更新信息;还可以用于供诊断设备在控制待更新电子控制单元进行程序更新之前,确定待更新电子控制单元当前是否满足程序更新的条件,此时,优选的,在所述控制所述待更新电子控制单元记录当前更新信息之前,还包括:获取所述待更新电子控制单元中记录的历史更新信息;根据所述历史更新信息确定所述待更新电子控制单元满足预设更新条件。其中,预设更新条件可以根据需要设置,如可以设置为距离上次更新时间大于等于预设时间阈值和/或待更新程序的版本号高于待更新电子控制单元已经安装的历史程序的版本号,等等,本实施例不对此进行限制。
S206、根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新。
S207、控制所述待更新电子控制单元复位以进入正常模式。
具体的,诊断设备可以生成并向待更新电子控制单元发送复位指令;相应的,待更新电子控制单元在接收到诊断设备发送的复位指令之后,可以根据该复位指令进行复位,将自身的工作模式调整为正常模式,由此,仅控制待更新电子控制单元进行复位,能够避免车辆内的各电子控制单元出现复位不同步的情况,进而避免由于车辆内的各电子控制单元复位不同步导致的故障信息无法清除的情况。其中,正常模式为电子控制单元能够正常工作的模式;复位指令可以为硬复位指令或软复位指令,优选为硬复位指令,此时,待更新电子控制单元接收到诊断设备发送的硬复位指令之后,可以进行硬复位。
在一个实施方式中,待更新电子控制单元硬复位之后,诊断设备还可以控制控制待更新电子控制单元进入扩展模式,以使待更新电子控制单元与车辆内的其他电子控制单元具有相同的工作状态,提高后续控制的统一性。其中,诊断设备可以通过物理寻址或功能寻址的方式控制待更新电子控制单元进入扩展模式,如诊断设备可以生成包含或不包含肯定响应抑制位的扩展模式切换指令,并仅向待更新电子控制单元发送该扩展模式切换指令;也可以生成包含肯定响应抑制位的扩展模式切换指令,并将其发送给车辆内的所有电子控制单元,本实施例不对此进行限制。
S208、向车辆内的所有电子控制单元发送包含肯定响应抑制位的工作恢复指令,以控制车辆内的电子控制单元进入正常模式。
具体的,诊断设备向车辆内的所有电子控制单元发送包含肯定响应抑制位的工作模式恢复指令,从而,通过该工作模式恢复指令指示车辆内的电子控制单元恢复正常工作状态。
在一个实施方式中,所述向车辆内的所有电子控制单元发送包含肯定响应抑制位的工作恢复指令,以控制车辆内的电子控制单元进入正常模式,包括:向车辆内的所有电子控制单元依次发送包含肯定响应抑制位的启动总线通信指令、开启故障码设定指令和正常模式切换指令,以控制车辆内的电子控制单元依次启动总线通信、开启记录故障信息以及进入正常模式。
示例性的,诊断设备首先向车辆内的所有电子控制单元发送包含肯定响应抑制位的启动总线通信指令,通过该启动总线通信指令指示车辆内的各电子控制单元启动总线通信,且不向诊断设备发送针对该启动总线通信指令的肯定响应信息;然后向车辆内的所有电子控制单元发送包含肯定响应抑制位的开启故障码设定指令,通过该开启故障码设定指令指示车辆内的各电子控制单元开启记录故障信息,且不向诊断设备发送针对该开启故障码设定执行的肯定响应信息;之后向车辆内的所述有电子控制单元发送包含肯定响应抑制位的正常模式切换指令,通过该正常模式切换指令指示车辆内的各电子控制单元将工作模式切换为正常模式,且不向诊断设备发送针对该正常模式切换指令的肯定响应信息。
S209、控制车辆内的所有电子控制单元清除在待更新电子控制单元程序更新期间生成的故障信息。
在本发明实施例中,车辆内的各电子控制单元进入正常模式后,诊断设备可以控制待更新电子控制单元清除其在程序更新期间生成的故障信息,以降低故障信息清除过程所占用的资源和所需的计算量;也可以控制车辆内的所述有电子控制单元清除自身在待更新电子控制单元程序更新期间生成的故障信息,以确保程序更新期间生成的所有故障信息都能够被清除,提高程序更新的成功率。本实施例以控制车辆内的所有电子控制单元清除其在待更新电子控制单元程序跟新期间生成的故障信息为例进行说明。
具体的,诊断设备可以通过功能寻址的方式向车辆内的所有电子控制单元故障清除指令;相应的,车辆内的电子控制单元在接收到诊断设备发送的故障清除指令后,清除自身在待更新电子控制单元程序更新期间生成的故障信息。
示例性的,图3是本发明实施例二提供的一种电子控制单元的程序更新方法的示例图,参见图3,以诊断设备为实施主体的电子控制单元的程序更新方法实施过程如下:
步骤1,以物理寻址的方式发送连接指令,以与车辆内的待更新电子控制单元建立连接,并以物理寻址的方式发送正常模式切换指令,以将待更新电子控制单元切换为正常模式。
步骤2,以物理寻址的方式发送工况检测指令,以使待更新电子控制单元反馈车辆的当前工况;进而确定待更新电子控制单元反馈的当前工况是否满足程序更新条件。
步骤3,以功能寻址的方式发送包含肯定响应抑制位的扩展模式切换指令,以将车辆内的所有电子控制单元切换到扩展模式。
步骤4,以功能寻址的方式发送包含肯定响应抑制位的停止故障码设定指令,以控制车辆内的所有电子控制单元停止记录故障信息。
步骤5,以功能寻址的方式发送包含肯定响应抑制位的停止总线通信指令,以控制车辆内的所有电子控制单元停止进行总线通信。
步骤6,以物理寻址的方式发送编程模式切换指令,以将车辆内的待更新电子控制单元切换到编程模式。
步骤7,以物理寻址的方式发送解锁指令,以控制待更新电子控制单元解锁。
步骤8,以物理寻址的方式发送携带有指纹信息的写入指纹信息指令,以控制待更新电子控制单元写入本次程序更新的指纹信息。
步骤9,以物理寻址的方式发送写入更新时间信息指令,以控制待更新电子控制单元写入本次的更新时间信息。
步骤10,以物理寻址的方式发送驱动程序文件和驱动程序校验指令,以控制待更新电子控制单元写入驱动程序并对写入的驱动程序进行校验。
步骤11,以物理寻址的方式发送应用程序擦除指令,以控制待更新电子控制单元擦除已写入的历史应用程序。
步骤12,以物理寻址的方式发送应用程序文件和应用程序校验指令,以控制待更新电子控制单元写入应用程序并对写入的应用程序进行校验。
步骤13,以物理寻址方式发送一致性检查指令,以控制待更新电子控制单元检查所写入的驱动程序与应用程序之间的一致性。
步骤14,以物理寻址的方式发送硬复位指令,以控制待更新电子控制单元进行硬复位。
步骤15,以功能寻址的方式发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的所有电子控制单元切换到扩展模式。
步骤16,以功能寻址的方式发送包含肯定响应抑制位的启动总线通信指令,以控制车辆内的所有电子控制单元启动总线通信。
步骤17,以功能寻址的方式发送包含肯定响应抑制位的开启故障码设定指令,以控制车辆内的所有电子控制单元开启记录故障信息。
步骤18,以功能寻址的方式发送包含肯定响应抑制位的正常模式切换指令,以控制车辆内的所有电子控制单元切换到正常模式。
步骤19,以功能寻址的方式发送故障清除指令,以控制车辆内的所有电子控制单元清除在待更新电子控制器程序更新期间记录的故障信息。
本发明实施例二提供的电子控制单元的程序更新方法,在通过功能寻址发送各指令中设置肯定响应抑制位,能够减少程序更新过程中数据总线的负载,保证程序更新的可靠性;在待更新电子控制单元中写入本次更新的指纹信息和更新时间信息,能够便于后期电子控制单元程序更新的追溯;在一致性校验通过后,仅控制待更新电子控制单元进行复位,而并非控制车辆内的所有电子控制单元均进行复位,能够避免出现由于车辆各电子控制单元复位不同步导致的故障信息无法清除的情况。并且,在车辆的各电子控制单元切换到正常模式后,进一步控制各电子控制单元清除自身在待更新电子控制单元更新期间记录的故障信息,还能够进一步提高程序更新的可靠性,降低程序更新出现错误的概率。
实施例三
本发明实施例三提供一种电子控制单元的程序更新装置。该装置可以由软件和/或硬件实现,一般可集成在计算机设备中,典型的,可以集成在诊断设备中,可通过执行电子控制单元的程序更新方法更新电子控制单元内的程序。图4为本发明实施例三提供的一种电子控制单元的程序更新装置的结构框图,如图4所示,该装置包括扩展发送模块301、编程控制模块302和程序更新模块303,其中,
扩展发送模块301,用于向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进入扩展模式;
编程控制模块302,用于控制车辆内的待更新电子控制单元进入编程模式;
程序更新模块303,用于根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新。
本发明实施例三提供的电子控制单元的程序更新装置,通过扩展发送模块向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进行扩展模式;通过编程控制模块控制车辆内的待更新电子控制单元进入编程模式;进而,通过程序更新模块根据本地存储的待更新程序文件控制待更新电子控制单元进行程序更新。本实施例通过采用上述技术方案,在进行程序更新之前,通过包含肯定响应抑制位的扩展模式切换指令将车辆内的所有电子控制单元切换为扩展模式,能够降低车辆数据总线的负载,从而降低车辆电子控制单元程序更新过程发送错误的概率,提高程序更新过程的可靠性,并降低车辆行驶中存在的安全隐患。
进一步地,所述电子控制单元的程序更新装置还可以包括:故障禁止模块,用于在所述控制车辆内的待更新电子控制单元进入编程模式之前,向车辆内的所有电子控制单元发送包含肯定响应抑制位的停止故障码设定指令,以控制车辆内的电子控制单元停止记录故障信息;通信禁止模块,用于向车辆内的所有电子控制单元发送包含肯定响应抑制位的停止总线通信指令,以控制车辆内的电子控制单元停止进行总线通信。
进一步地,所述电子控制单元的程序更新装置还可以包括:正常控制模块,用于在所述根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新之后,控制所述待更新电子控制单元复位以进入正常模式;工作恢复模块,用于向车辆内的所有电子控制单元发送包含肯定响应抑制位的工作恢复指令,以控制车辆内的电子控制单元进入正常模式;故障清除模块,用于控制车辆内的所有电子控制单元清除在待更新电子控制单元程序更新期间生成的故障信息。
在上述方案中,所述工作恢复模块具体可以用于:向车辆内的所有电子控制单元依次发送包含肯定响应抑制位的启动总线通信指令、开启故障码设定指令和正常模式切换指令,以控制车辆内的电子控制单元依次启动总线通信、开启记录故障信息以及进入正常模式。
进一步地,所述电子控制单元的程序更新装置还可以包括:扩展控制模块,用于在所述向车辆内的所有电子控制单元发送包含肯定响应抑制位的工作恢复指令之前,控制所述待更新电子控制单元进入扩展模式。
进一步地,所述电子控制单元的程序更新装置还可以包括:信息记录模块,用于在所述控制车辆内的待更新电子控制单元进入编程模式之后,控制所述待更新电子控制单元记录当前更新信息,所述当前更新信息包括本次程序更新的指纹信息和/或更新时间信息。
进一步地,所述电子控制单元的程序更新装置还可以包括:信息获取模块,用于在所述控制所述待更新电子控制单元记录当前更新信息之前,获取所述待更新电子控制单元中记录的历史更新信息;更新确定模块,用于根据所述历史更新信息确定所述待更新电子控制单元满足预设更新条件。
本发明实施例三提供的电子控制单元的程序更新装置可执行本发明任意实施例提供的电子控制单元的程序更新方法,具备执行电子控制单元的程序更新方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的电子控制单元的程序更新方法。
实施例四
图5为本发明实施例四提供的一种诊断设备的结构示意图,如图5所示,该诊断设备包括处理器40和存储器41,还可以包括输入装置42和输出装置43;诊断设备中处理器40的数量可以是一个或多个,图5中以一个处理器40为例;诊断设备中的处理器40、存储器41、输入装置42和输出装置43可以通过总线或其他方式连接,图5中以通过总线连接为例。
存储器41作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的电子控制单元的程序更新方法对应的程序指令/模块(例如,电子控制单元的程序更新装置中的扩展发送模块301、编程控制模块302和程序更新模块303)。处理器40通过运行存储在存储器41中的软件程序、指令以及模块,从而执行诊断设备的各种功能应用以及数据处理,即实现上述的电子控制单元的程序更新方法。
存储器41可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器41可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器41可进一步包括相对于处理器40远程设置的存储器,这些远程存储器可以通过网络连接至诊断设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置42可用于接收输入的数字或字符信息,以及产生与诊断设备的用户设置以及功能控制有关的键信号输入。输出装置43可包括显示屏等显示设备。
本发明实施例四还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种电子控制单元的程序更新方法,该方法包括:
向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进入扩展模式;
控制车辆内的待更新电子控制单元进入编程模式;
根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的电子控制单元的程序更新方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述电子控制单元的程序更新装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种电子控制单元的程序更新方法,其特征在于,包括:
向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进入扩展模式;
控制车辆内的待更新电子控制单元进入编程模式;
根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新。
2.根据权利要求1所述的方法,其特征在于,在所述控制车辆内的待更新电子控制单元进入编程模式之前,还包括:
向车辆内的所有电子控制单元发送包含肯定响应抑制位的停止故障码设定指令,以控制车辆内的电子控制单元停止记录故障信息;
向车辆内的所有电子控制单元发送包含肯定响应抑制位的停止总线通信指令,以控制车辆内的电子控制单元停止进行总线通信。
3.根据权利要求2所述的方法,其特征在于,在所述根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新之后,还包括:
控制所述待更新电子控制单元复位以进入正常模式;
向车辆内的所有电子控制单元发送包含肯定响应抑制位的工作恢复指令,以控制车辆内的电子控制单元进入正常模式;
控制车辆内的所有电子控制单元清除在待更新电子控制单元程序更新期间生成的故障信息。
4.根据权利要求3所述的方法,其特征在于,所述向车辆内的所有电子控制单元发送包含肯定响应抑制位的工作恢复指令,以控制车辆内的电子控制单元进入正常模式,包括:
向车辆内的所有电子控制单元依次发送包含肯定响应抑制位的启动总线通信指令、开启故障码设定指令和正常模式切换指令,以控制车辆内的电子控制单元依次启动总线通信、开启记录故障信息以及进入正常模式。
5.根据权利要求3所述的方法,其特征在于,在所述向车辆内的所有电子控制单元发送包含肯定响应抑制位的工作恢复指令之前,还包括:
控制所述待更新电子控制单元进入扩展模式。
6.根据权利要求1-5任一所述的方法,其特征在于,在所述控制车辆内的待更新电子控制单元进入编程模式之后,还包括:
控制所述待更新电子控制单元记录当前更新信息,所述当前更新信息包括本次程序更新的指纹信息和/或更新时间信息。
7.根据权利要求6所述的方法,其特征在于,在所述控制所述待更新电子控制单元记录当前更新信息之前,还包括:
获取所述待更新电子控制单元中记录的历史更新信息;
根据所述历史更新信息确定所述待更新电子控制单元满足预设更新条件。
8.一种电子控制单元的程序更新装置,其特征在于,包括:
扩展发送模块,用于向车辆内的所有电子控制单元发送包含肯定响应抑制位的扩展模式切换指令,以控制车辆内的电子控制单元进入扩展模式;
编程控制模块,用于控制车辆内的待更新电子控制单元进入编程模式;
程序更新模块,用于根据本地存储的待更新程序文件控制所述待更新电子控制单元进行程序更新。
9.一种诊断设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的电子控制单元的程序更新方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的电子控制单元的程序更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010577074.7A CN111736873B (zh) | 2020-06-22 | 2020-06-22 | 电子控制单元的程序更新方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010577074.7A CN111736873B (zh) | 2020-06-22 | 2020-06-22 | 电子控制单元的程序更新方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111736873A true CN111736873A (zh) | 2020-10-02 |
CN111736873B CN111736873B (zh) | 2023-02-24 |
Family
ID=72650594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010577074.7A Active CN111736873B (zh) | 2020-06-22 | 2020-06-22 | 电子控制单元的程序更新方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111736873B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732982A (zh) * | 2021-01-18 | 2021-04-30 | 深圳市元征科技股份有限公司 | 一种故障码存储方法、装置、终端设备及可读存储介质 |
CN113335208A (zh) * | 2021-08-06 | 2021-09-03 | 江铃汽车股份有限公司 | 倒车影像下线配置方法、***、存储介质及计算机设备 |
CN113452761A (zh) * | 2021-06-07 | 2021-09-28 | 阳光电源股份有限公司 | 储能***的更新方法、更新管理设备、储能***及介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090307400A1 (en) * | 2006-07-12 | 2009-12-10 | Ralf Machauer | Method for Operating a Lin Bus |
JP2010266279A (ja) * | 2009-05-13 | 2010-11-25 | Suzuki Motor Corp | 車両用通信制御装置 |
CN105848958A (zh) * | 2013-12-25 | 2016-08-10 | 丰田自动车株式会社 | 非接触式电力传输***和控制该***的方法 |
CN106469072A (zh) * | 2015-08-19 | 2017-03-01 | 比亚迪股份有限公司 | 车辆程序更新***及车辆程序更新方法 |
CN107113209A (zh) * | 2014-08-05 | 2017-08-29 | 罗伯特·博世有限公司 | 用于总线***的用户站的通信控制装置、编程工具和用于对总线***中的用户站进行编程的方法,所述总线***具有按照不同的协议通信的用户站 |
CN110244966A (zh) * | 2019-06-18 | 2019-09-17 | 广东戈兰玛汽车***有限公司 | 一种基于uds的bootloader程序在线更新方法 |
CN110347412A (zh) * | 2019-06-27 | 2019-10-18 | 中国第一汽车股份有限公司 | 电子控制单元固件升级管理方法、装置、设备和存储介质 |
CN110474950A (zh) * | 2019-06-27 | 2019-11-19 | 陕西法士特齿轮有限责任公司 | Uds网络层协议实现方法、计算机可读存储介质、计算机设备 |
JP2020022019A (ja) * | 2018-07-31 | 2020-02-06 | 日立オートモティブシステムズ株式会社 | 車両システム |
-
2020
- 2020-06-22 CN CN202010577074.7A patent/CN111736873B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090307400A1 (en) * | 2006-07-12 | 2009-12-10 | Ralf Machauer | Method for Operating a Lin Bus |
JP2010266279A (ja) * | 2009-05-13 | 2010-11-25 | Suzuki Motor Corp | 車両用通信制御装置 |
CN105848958A (zh) * | 2013-12-25 | 2016-08-10 | 丰田自动车株式会社 | 非接触式电力传输***和控制该***的方法 |
CN107113209A (zh) * | 2014-08-05 | 2017-08-29 | 罗伯特·博世有限公司 | 用于总线***的用户站的通信控制装置、编程工具和用于对总线***中的用户站进行编程的方法,所述总线***具有按照不同的协议通信的用户站 |
CN106469072A (zh) * | 2015-08-19 | 2017-03-01 | 比亚迪股份有限公司 | 车辆程序更新***及车辆程序更新方法 |
JP2020022019A (ja) * | 2018-07-31 | 2020-02-06 | 日立オートモティブシステムズ株式会社 | 車両システム |
CN110244966A (zh) * | 2019-06-18 | 2019-09-17 | 广东戈兰玛汽车***有限公司 | 一种基于uds的bootloader程序在线更新方法 |
CN110347412A (zh) * | 2019-06-27 | 2019-10-18 | 中国第一汽车股份有限公司 | 电子控制单元固件升级管理方法、装置、设备和存储介质 |
CN110474950A (zh) * | 2019-06-27 | 2019-11-19 | 陕西法士特齿轮有限责任公司 | Uds网络层协议实现方法、计算机可读存储介质、计算机设备 |
Non-Patent Citations (4)
Title |
---|
DAVID PEHRSSON: "Unified Diagnostic Services", 《HTTPS://WWW.DIVA-PORTAL.ORG/SMASH/GET/DIVA2:580183/FULLTEXT01.PDF》 * |
LIQIAN999: "统一诊断服务 (Unified diagnostic services , UDS)", 《HTTPS://BLOG.CSDN.NET/U012252959/ARTICLE/DETAILS/83077247》 * |
MANSHQ163COM: "can 總線 uds", 《HTTPS://WWW.TWBLOGS.NET/A/5EDC71328ECBC10C342CEF71》 * |
SMAH: "DCM之诊断服务调度程序(DSD)详解一", 《HTTPS://WWW.CNBLOGS.COM/STILL-SMILE/P/12146329.HTML》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732982A (zh) * | 2021-01-18 | 2021-04-30 | 深圳市元征科技股份有限公司 | 一种故障码存储方法、装置、终端设备及可读存储介质 |
CN113452761A (zh) * | 2021-06-07 | 2021-09-28 | 阳光电源股份有限公司 | 储能***的更新方法、更新管理设备、储能***及介质 |
CN113452761B (zh) * | 2021-06-07 | 2023-08-15 | 阳光电源股份有限公司 | 储能***的更新方法、更新管理设备、储能***及介质 |
CN113335208A (zh) * | 2021-08-06 | 2021-09-03 | 江铃汽车股份有限公司 | 倒车影像下线配置方法、***、存储介质及计算机设备 |
CN113335208B (zh) * | 2021-08-06 | 2021-10-12 | 江铃汽车股份有限公司 | 倒车影像下线配置方法、***、存储介质及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111736873B (zh) | 2023-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110347412B (zh) | 电子控制单元固件升级管理方法、装置、设备和存储介质 | |
CN111736873B (zh) | 电子控制单元的程序更新方法、装置、设备和存储介质 | |
CN109673009B (zh) | 一种vcu软件空中升级方法及装置 | |
CN113064748B (zh) | 进程接替的方法、装置、电子设备及存储介质 | |
CN110908682B (zh) | 一种车辆控制器的固件升级方法、***、车辆和存储介质 | |
CN112000358B (zh) | 充电桩的升级方法与智能充电桩 | |
CN113341924A (zh) | 一种ecu下电方法、装置、设备及存储介质 | |
CN112148312A (zh) | 一种电子控制器的固件升级管理方法、装置、设备和介质 | |
CN114385421A (zh) | 数据存储方法、装置、电子设备及存储介质 | |
US20220171855A1 (en) | Electronic control device and security verification method for electronic control device | |
CN105573872A (zh) | 数据存储***的硬盘维护方法和装置 | |
CN111856257B (zh) | 一种cpld固件检测及保护的方法、***、设备及介质 | |
CN106951771B (zh) | 一种安卓操作***的移动终端使用方法 | |
CN113608602A (zh) | 一种片上***的复位方法和装置 | |
CN107368389B (zh) | 操作***一键恢复功能的控制方法、控制装置和emmc | |
CN113724422B (zh) | 防盗***的配置方法、装置、设备和存储介质 | |
CN115033502A (zh) | 一种数据防丢失方法、装置、计算机设备和存储介质 | |
CN111177028B (zh) | 一种动态多级缓存的方法和设备 | |
CN101971562B (zh) | 控制自动运行过程执行的方法、装置及*** | |
CN110427280B (zh) | 一种缓存管理方法、***、计算机设备及存储介质 | |
CN108037942B (zh) | 一种嵌入式设备的自适应数据恢复与更新方法及装置 | |
CN107346403B (zh) | 外接存储器的操作方法、装置和智能终端 | |
CN113799734B (zh) | 一种车辆防盗***的防盗匹配方法、装置、服务器及介质 | |
CN114115755B (zh) | 用于数据写入的方法及装置、存储介质 | |
CN114442924B (zh) | 一种不规则控制器的控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |