CN113760334A - 一种ecu程序刷写方法以及装置 - Google Patents
一种ecu程序刷写方法以及装置 Download PDFInfo
- Publication number
- CN113760334A CN113760334A CN202111135228.8A CN202111135228A CN113760334A CN 113760334 A CN113760334 A CN 113760334A CN 202111135228 A CN202111135228 A CN 202111135228A CN 113760334 A CN113760334 A CN 113760334A
- Authority
- CN
- China
- Prior art keywords
- ecu
- program
- connection
- flash
- flashing
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000004891 communication Methods 0.000 claims abstract description 29
- 230000001680 brushing effect Effects 0.000 claims abstract description 6
- 238000012795 verification Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000009191 jumping Effects 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 abstract description 2
- 238000013461 design Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/73—Program documentation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Library & Information Science (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及汽车技术领域,具体涉及一种ECU程序刷写方法以及装置,所述方法包括与ECU建立通讯连接;读取ECU硬件版本,依据ECU硬件版本查找对应的APP程序文件,并校验该程序文件是否符合要求;若符合要求,则ECU主动启动刷写流程,并反馈刷写结果;若成功则与ECU断开连接;本发明不用频繁更改刷写软件的配置,实现不同硬件版本汽车ECU的程序刷写;可以只配置一次刷写软件,实现刷写多种不同硬件版本汽车ECU程序的方法;降低下线刷写程序的出错率,节省工作步骤,降低对下线操作人员的技术要求,提供生产效率。
Description
技术领域
本发明涉及汽车技术领域,具体涉及一种ECU程序刷写方法以及装置。
背景技术
在车载终端中,通常需要实现电子控制单元(Electronic Control Unit,ECU)的数据刷写功能,该数据刷写功能用于将新的程序包更新至ECU中。目前,汽车ECU下线前需要刷写相应的程序,这就需要一套刷写汽车ECU程序的方法;而不同的硬件版本的ECU的程序是不同的,就需要这套刷写方法支持刷写不同硬件版本的汽车ECU程序;通常方法是通过重新配置刷写软件实现不同硬件版本汽车ECU的程序刷写。
但是在增加新车型的数据刷写逻辑时,需要考虑各功能模块之间的依赖性以及融合处理,需要修改大量的代码,甚至修改软件架构,开发人员改动难度高、工作量大,后期也不便于维护。每次更改刷写软件的配置都会带来配置错误的风险,而使ECU刷写错误程序的风险很高,效率低。
发明内容
本发明所要解决的技术问题是:提供一种只配置一次刷写软件实现刷写多种不同硬件版本汽车ECU程序的ECU程序刷写方法以及装置。
为了解决上述技术问题,本发明采用的技术方案为:
一种ECU程序刷写方法,包括
与ECU建立通讯连接;
读取ECU硬件版本,依据ECU硬件版本查找对应的APP程序文件,并校验该程序文件是否符合要求;
若符合要求,则ECU主动启动刷写流程,并反馈刷写结果;若成功则与ECU断开连接。
优选地,与ECU建立通讯连接时,若连接失败大于等于5次,则认为连接出错,并报错同时确认是否有与ECU连接;
若与ECU建立通讯连接时,连接次数在5次之内失败,则尝试重新建立连接。
优选地,反馈刷写结果,若成功则提示成功,若失败则报错同时确认是否有与ECU连接。
优选地,所述ECU刷写流程包括
读取ECU的刷写标志位,若ECU中无APP程序,则标志位内容为1;若有APP程序,则标志位内容为0;
判断标志位内容,若为1则等待刷写装置指令;若为10,则无需刷写启动APP程序;
判断外部指令是否为读硬件版本命令,是则读取ECU硬件版本,并回复刷写装置,等待下一个命令;
判断外部指令是否为刷写指令,是则进入刷写流程实现程序文件合法性验证、刷写工具合法性验证以及控制程序文件的正确传输;
程序刷写成功后,清除刷写标志位,并跳转至刷写后的APP运行。
优选地,判断外部指令是否为读硬件版本命令,是则读取ECU硬件版本,并回复刷写装置,等待下一个命令;否则判断外部指令是否为刷写指令,是则进入刷写流程实现程序文件合法性验证、刷写工具合法性验证以及控制程序文件的正确传输,否则回复无法识别该指令。
为了解决上述技术问题,本发明采用的另一技术方案为:
一种ECU程序刷写装置,包括
第一通讯接口,与ECU建立通讯连接;
储存器,存储有多个硬件版本汽车ECU的程序;
处理器,通过第一通讯接口读取ECU硬件版本,依据ECU硬件版本查找储存器内对应的APP程序文件,并校验该程序文件是否符合要求;若符合要求,则指令ECU启动刷写流程,并反馈刷写结果;若成功则与ECU断开连接。
优选地,还包括显示件;
与ECU建立通讯连接时,若连接失败大于等于5次,则认为连接出错,并通过显示件报错同时确认是否有与ECU连接;
若与ECU建立通讯连接时,连接次数在5次之内失败,则尝试重新建立连接。
优选地,反馈刷写结果,若成功则通过显示件提示成功,若失败则通过显示件报错同时确认是否有与ECU连接。
优选地,还包括第二通讯接口,接收来自上位机的刷写软件,并存入存储器内。
优选地,所述第一通讯接口、第二通讯接口为CAN、USB、串口、网口、GPIO中的一种或多种。
本发明的有益效果在于:通过本申请的方法,不用频繁更改刷写软件的配置,实现不同硬件版本汽车ECU的程序刷写;可以只配置一次刷写软件,实现刷写多种不同硬件版本汽车ECU程序的方法;降低下线刷写程序的出错率,节省工作步骤,降低对下线操作人员的技术要求,提供生产效率。
附图说明
图1为本发明具体实施方式的一种ECU硬件设计图;
图2为本发明具体实施方式的一种ECU程序刷写装置与ECU硬件设计连接的示意图;
图3为本发明具体实施方式的一种ECU程序刷写方法的流程示意图;
图4为本发明具体实施方式的一种ECU程序刷写方法的ECU的流程示意图。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
实施例一
一种ECU程序刷写装置,用于汽车ECU进行程序刷写,其中
ECU程序刷写装置的功能:
输出电源给汽车ECU;
与汽车ECU的CAN通讯;
检测ECU上线;
刷写指示灯(显示件),指示忙闲;
存储多个硬件版本汽车ECU的程序;
根据ECU不同硬件版本刷写相应程序;
PC上位机可以配置硬件版本对应的ECU程序;
汽车ECU应具备功能:
已刷写有bootloader程序,支持CAN总线(或者其他线路)程序刷写;
bootloader支持硬件版本读取;
硬件设计了ECU硬件版本电路;硬件版本设计电路参考图1的汽车ECU硬件设计。
以图1为例,可以对其中的硬件版本进行进行定义;定义内容如下表:
使用时ECU程序刷写装置与ECU的物理连接图可以参照图2。
实施例二
一种实施例一的ECU程序刷写装置的ECU程序刷写方法,
参照图3,其中ECU程序刷写装置部分包括
上电启动,程序初始化;
通过GPIO输入电路检测是否有ECU连接,GPIO输入默认状态为低电平,当有ECU连接时为高电平;
检测有ECU连接后,通过CAN总线与ECU建立通讯连接;主动建立通讯连接失败5次,则认为出错,通过指示灯(显示件)报错;
建立连接成功后,读取汽车ECU硬件版本,并依据硬件版本查找该版本对应的APP程序文件,并校验该程序文件的完整性及有效性;
确定好升级文件之后,启动ECU刷写流程,该流程实现文件正确的传输给汽车ECU,并控制汽车ECU刷写成功,并反馈刷写结果。
刷写流程反馈刷写成功后,通过指示灯指示成功;如反馈刷写失败,则通过指示灯报错;
刷写成功,指示灯指示成功后,则断开刷写装置与汽车ECU连接,更换下一个汽车ECU进行刷写;
等待另一个汽车ECU连接,重复以上刷写过程。
参照图4,其中汽车ECU Bootloader程序流程:
上电启动,程序初始化;
读ECU的刷写标志位,如果ECU中无APP程序,该位置1;如果有APP程序,但该位也可被APP的刷写流程置位;
判断该刷写标志位如为1,则等待刷写装置指令;如果该位为零,无需刷写启动APP程序;
判断外部指令是读硬件版本命令,则读取GPIO输入的硬件版本,并回复刷写装置,等待下一个命令;
判断外部指令是刷写指令,则进入刷写流程;该刷写流程实现程序文件合法性验证,刷写工具合法性验证,控制程序文件的正确传输;
程序刷写成功后,清除刷写标志位,并跳转至刷写后的APP运行。
综上,本发明公开了一种方法,更新一次刷写软件配置,实现不同硬件版本ECU的程序刷写;
刷写程序可以是PC上位机软件,也可以是手持设备软件,需要能够进行数据通讯,如CAN,USB,串口等;
汽车ECU一般都会存在CAN通讯链路,输入输出IO管脚;
汽车ECU硬件设计时,需要通过MCU的多路GPIO的上下拉电阻实现不同硬件版本定义,MCU程序识别并可以输出自身硬件版本。
汽车ECU通过刷写装置和刷写软件进行ECU应用软件的刷写;
刷写装置能够给ECU供电,并能检测到ECU在线;
刷写装置具有与汽车ECU通讯的CAN通讯接口;
刷写软件可以在刷写装置中,也可以在PC上位机;
但如果在PC上位机,刷写装置需要有与PC软件通讯的接口,如CAN,USB,串口,网口等。
汽车ECU主动获取程序数据,授权,校验并升级的boot程序。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种ECU程序刷写方法,其特征在于,包括
与ECU建立通讯连接;
读取ECU硬件版本,依据ECU硬件版本查找对应的APP程序文件,并校验该程序文件是否符合要求;
若符合要求,则ECU主动启动刷写流程,并反馈刷写结果;若成功则与ECU断开连接。
2.根据权利要求1所述的ECU程序刷写方法,其特征在于,与ECU建立通讯连接时,若连接失败大于等于5次,则认为连接出错,并报错同时确认是否有与ECU连接;
若与ECU建立通讯连接时,连接次数在5次之内失败,则尝试重新建立连接。
3.根据权利要求1所述的ECU程序刷写方法,其特征在于,反馈刷写结果,若成功则提示成功,若失败则报错同时确认是否有与ECU连接。
4.根据权利要求1所述的ECU程序刷写方法,其特征在于,所述ECU刷写流程包括
读取ECU的刷写标志位,若ECU中无APP程序,则标志位内容为1;若有APP程序,则标志位内容为0;
判断标志位内容,若为1则等待刷写装置指令;若为10,则无需刷写启动APP程序;
判断外部指令是否为读硬件版本命令,是则读取ECU硬件版本,并回复刷写装置,等待下一个命令;
判断外部指令是否为刷写指令,是则进入刷写流程实现程序文件合法性验证、刷写工具合法性验证以及控制程序文件的正确传输;
程序刷写成功后,清除刷写标志位,并跳转至刷写后的APP运行。
5.根据权利要求4所述的ECU程序刷写方法,其特征在于,判断外部指令是否为读硬件版本命令,是则读取ECU硬件版本,并回复刷写装置,等待下一个命令;否则判断外部指令是否为刷写指令,是则进入刷写流程实现程序文件合法性验证、刷写工具合法性验证以及控制程序文件的正确传输,否则回复无法识别该指令。
6.一种ECU程序刷写装置,其特征在于,包括
第一通讯接口,与ECU建立通讯连接;
储存器,存储有多个硬件版本汽车ECU的程序;
处理器,通过第一通讯接口读取ECU硬件版本,依据ECU硬件版本查找储存器内对应的APP程序文件,并校验该程序文件是否符合要求;若符合要求,则指令ECU启动刷写流程,并反馈刷写结果;若成功则与ECU断开连接。
7.根据权利要求6所述的ECU程序刷写装置,其特征在于,还包括显示件;
与ECU建立通讯连接时,若连接失败大于等于5次,则认为连接出错,并通过显示件报错同时确认是否有与ECU连接;
若与ECU建立通讯连接时,连接次数在5次之内失败,则尝试重新建立连接。
8.根据权利要求7所述的ECU程序刷写装置,其特征在于,反馈刷写结果,若成功则通过显示件提示成功,若失败则通过显示件报错同时确认是否有与ECU连接。
9.根据权利要求6所述的ECU程序刷写装置,其特征在于,还包括第二通讯接口,接收来自上位机的刷写软件,并存入存储器内。
10.根据权利要求9所述的ECU程序刷写装置,其特征在于,所述第一通讯接口、第二通讯接口为CAN、USB、串口、网口、GPIO中的一种或多种。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111135228.8A CN113760334A (zh) | 2021-09-27 | 2021-09-27 | 一种ecu程序刷写方法以及装置 |
PCT/CN2022/099857 WO2023045440A1 (zh) | 2021-09-27 | 2022-06-20 | 一种ecu程序刷写方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111135228.8A CN113760334A (zh) | 2021-09-27 | 2021-09-27 | 一种ecu程序刷写方法以及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113760334A true CN113760334A (zh) | 2021-12-07 |
Family
ID=78797691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111135228.8A Pending CN113760334A (zh) | 2021-09-27 | 2021-09-27 | 一种ecu程序刷写方法以及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113760334A (zh) |
WO (1) | WO2023045440A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114281065A (zh) * | 2021-12-28 | 2022-04-05 | 深圳市元征科技股份有限公司 | 车辆的电子控制单元刷写方法、装置及诊断设备 |
CN114488997A (zh) * | 2021-12-28 | 2022-05-13 | 深圳市元征科技股份有限公司 | Ecu刷写的方法、装置、电子设备及存储介质 |
WO2023045440A1 (zh) * | 2021-09-27 | 2023-03-30 | 北京国家新能源汽车技术创新中心有限公司 | 一种ecu程序刷写方法以及装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117744389A (zh) * | 2023-12-25 | 2024-03-22 | 广州虹科电子科技有限公司 | 一种ecu模拟方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103412561A (zh) * | 2013-08-08 | 2013-11-27 | 奇瑞汽车股份有限公司 | 一种汽车控制器的刷新方法及装置 |
CN107450953A (zh) * | 2017-08-01 | 2017-12-08 | 合肥联宝信息技术有限公司 | 一种更新bios的方法及装置 |
CN107577220A (zh) * | 2017-09-01 | 2018-01-12 | 潍柴动力股份有限公司 | 一种程序的修复方法、装置及电子设备 |
CN109189422A (zh) * | 2018-08-13 | 2019-01-11 | 北京新能源汽车股份有限公司 | 一种电子控制单元的远程升级方法及装置 |
CN111538511A (zh) * | 2020-04-02 | 2020-08-14 | 国电南瑞南京控制系统有限公司 | 一种电池包bms软件自动刷写系统及方法 |
CN112506535A (zh) * | 2020-05-22 | 2021-03-16 | 上海擎度汽车科技有限公司 | 一种汽车ECU控制器更新升级Bootloader软件的方法 |
CN113010191A (zh) * | 2021-03-31 | 2021-06-22 | 东风商用车有限公司 | 一种集成式车辆ecu刷写方法及系统 |
CN113010200A (zh) * | 2021-03-23 | 2021-06-22 | 深圳市元征科技股份有限公司 | 一种刷写方法、刷写系统、刷写装置及服务器 |
CN113031974A (zh) * | 2021-03-18 | 2021-06-25 | 重庆青山工业有限责任公司 | 一种变速器控制单元软件刷写方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106874055B (zh) * | 2017-03-07 | 2020-01-31 | 上海怿星电子科技有限公司 | 一种用于汽车ecu程序自动刷写测试的方法和装置 |
US11237816B2 (en) * | 2017-09-25 | 2022-02-01 | Thyssenkrupp Presta Ag | Method for remote online software update in motor vehicles |
CN110806894B (zh) * | 2019-10-31 | 2021-02-05 | 安徽江淮汽车集团股份有限公司 | 汽车零部件软件版本管理方法、设备、存储介质及装置 |
CN113760334A (zh) * | 2021-09-27 | 2021-12-07 | 北京国家新能源汽车技术创新中心有限公司 | 一种ecu程序刷写方法以及装置 |
-
2021
- 2021-09-27 CN CN202111135228.8A patent/CN113760334A/zh active Pending
-
2022
- 2022-06-20 WO PCT/CN2022/099857 patent/WO2023045440A1/zh unknown
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103412561A (zh) * | 2013-08-08 | 2013-11-27 | 奇瑞汽车股份有限公司 | 一种汽车控制器的刷新方法及装置 |
CN107450953A (zh) * | 2017-08-01 | 2017-12-08 | 合肥联宝信息技术有限公司 | 一种更新bios的方法及装置 |
CN107577220A (zh) * | 2017-09-01 | 2018-01-12 | 潍柴动力股份有限公司 | 一种程序的修复方法、装置及电子设备 |
CN109189422A (zh) * | 2018-08-13 | 2019-01-11 | 北京新能源汽车股份有限公司 | 一种电子控制单元的远程升级方法及装置 |
CN111538511A (zh) * | 2020-04-02 | 2020-08-14 | 国电南瑞南京控制系统有限公司 | 一种电池包bms软件自动刷写系统及方法 |
CN112506535A (zh) * | 2020-05-22 | 2021-03-16 | 上海擎度汽车科技有限公司 | 一种汽车ECU控制器更新升级Bootloader软件的方法 |
CN113031974A (zh) * | 2021-03-18 | 2021-06-25 | 重庆青山工业有限责任公司 | 一种变速器控制单元软件刷写方法 |
CN113010200A (zh) * | 2021-03-23 | 2021-06-22 | 深圳市元征科技股份有限公司 | 一种刷写方法、刷写系统、刷写装置及服务器 |
CN113010191A (zh) * | 2021-03-31 | 2021-06-22 | 东风商用车有限公司 | 一种集成式车辆ecu刷写方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023045440A1 (zh) * | 2021-09-27 | 2023-03-30 | 北京国家新能源汽车技术创新中心有限公司 | 一种ecu程序刷写方法以及装置 |
CN114281065A (zh) * | 2021-12-28 | 2022-04-05 | 深圳市元征科技股份有限公司 | 车辆的电子控制单元刷写方法、装置及诊断设备 |
CN114488997A (zh) * | 2021-12-28 | 2022-05-13 | 深圳市元征科技股份有限公司 | Ecu刷写的方法、装置、电子设备及存储介质 |
CN114488997B (zh) * | 2021-12-28 | 2024-05-10 | 深圳市元征科技股份有限公司 | Ecu刷写的方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2023045440A1 (zh) | 2023-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113760334A (zh) | 一种ecu程序刷写方法以及装置 | |
US7099818B1 (en) | System and method for automatically matching components in a debugging system | |
CN102388366B (zh) | 实现不同处理器兼容的方法及装置 | |
JP2006065857A (ja) | 移動通信端末機のプログラム強制ダウンロード方法及び装置 | |
CN102426531A (zh) | 一种智能终端、应用程序更新系统及其更新方法 | |
CN114860279B (zh) | 一种快速空片升级方法 | |
CN110187909B (zh) | 一种基于安卓系统的单片机固件升级方法 | |
CN114281394A (zh) | 一种快速在线升级程序的方法、系统、设备及介质 | |
CN110809755A (zh) | 电子控制系统 | |
CN112181455B (zh) | 微控制器的在线升级方法、微控制器及存储介质 | |
CN113608772B (zh) | 一种应用程序升级方法及装置 | |
US20020095619A1 (en) | Fault tolerant/redundant boot ROM reprogramming | |
CN108920168B (zh) | 支持多个同类ECU同时升级且具防程序不匹配功能的Bootloader方法 | |
US6904484B1 (en) | Low pin count (LPC) firmware hub recovery | |
CN105045671A (zh) | 一种智能终端的系统升级方法及装置 | |
CN112306536B (zh) | 一种主板及其芯片以及芯片升级方法 | |
CN117519749A (zh) | 一种stm32在线升级功能解决方法 | |
WO2022199622A1 (zh) | 一种电子设备的启动程序的运行方法和电子设备 | |
CN114968299A (zh) | 基于Multiboot设备固件升级及异常处理方法 | |
CN110737480B (zh) | 一种串口驱动程序复用方法和装置 | |
CN117492800B (zh) | 一种通过usb升级固件的方法 | |
CN111522573B (zh) | 一种基于txt文件的伺服程序在线升级方法 | |
CN113672477B (zh) | 基本输入输出系统的除错讯息自动提供方法 | |
CN113467842B (zh) | 适用于工业级应用场景的嵌入式设备的启动方法、嵌入式设备和计算机可读存储介质 | |
CN118151977B (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 |