CN113448596A - 一种车辆控制器刷写系统、方法及相关设备 - Google Patents
一种车辆控制器刷写系统、方法及相关设备 Download PDFInfo
- Publication number
- CN113448596A CN113448596A CN202010215701.2A CN202010215701A CN113448596A CN 113448596 A CN113448596 A CN 113448596A CN 202010215701 A CN202010215701 A CN 202010215701A CN 113448596 A CN113448596 A CN 113448596A
- Authority
- CN
- China
- Prior art keywords
- ecu
- target ecu
- file
- flash
- target
- 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 44
- 238000004891 communication Methods 0.000 claims abstract description 64
- 238000013500 data storage Methods 0.000 claims abstract description 43
- 230000010365 information processing Effects 0.000 claims abstract description 16
- 238000007726 management method Methods 0.000 claims description 33
- 230000002159 abnormal effect Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 8
- 238000004806 packaging method and process Methods 0.000 description 4
- 239000000243 solution Substances 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000006467 substitution reaction Methods 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/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
Abstract
本申请公开了一种车辆控制器刷写系统、方法及相关设备,系统包括:ECU信息处理模块,用于根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,配置信息包括目标ECU数据存储区的地址和大小;刷写文件处理模块,用于根据ECU数据存储区的地址和大小解析待刷写文件,并生成目标ECU的二进制bin文件;指令识别模块,用于根据目标ECU的通信协议和刷写指令配置文件,解析出目标ECU的刷写指令集;报文生成模块,用于对目标ECU的配置信息、目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,报文数据被用于刷写目标ECU。该系统支持多种通信协议的控制器刷写,支持多种不同类型的控制器刷写,且支持多种CAN硬件设备,适用性强,刷写控制器的效率高。
Description
技术领域
本申请涉及车辆技术领域,特别是涉及一种车辆控制器刷写系统、方法及相关设备。
背景技术
电子控制单元(ECU,Electronic Control Unit)又称行车电脑,ECU可以控制发动机的进气量、喷油量和点火时间等,从而可以间接决定发动机运转效率、功率和扭矩等。
通过对ECU进行重新刷写,可以改变ECU控制发动机间接决定发动机运转效率、功率和扭矩等的参数,以提高车辆的动力性能,并降低车辆的油耗。
但是,现有技术中,对ECU进行刷写时所采用的控制器刷写系统是根据特定的控制器、控制器局域网络(CAN,Controller Area Network)设备和通信协议进行开发的。当另一车辆的控制器、CAN设备和通信协议中任一项与该控制器刷写系统不对应时,会出现无法对另一车辆的ECU进行刷写的情况,该控制器刷写系统适用性较差。
发明内容
为了解决上述技术问题,本申请提供了一种车辆控制器刷写系统、方法及相关设备,能够实现对多种不同类型的控制器进行同时刷写,适用性强,提高了刷写控制器的效率。
本申请实施例公开了如下技术方案:
第一方面,本申请提供了一种车辆控制器刷写系统,包括:电子控制单元ECU信息处理模块、刷写文件处理模块、指令识别模块和报文生成模块;
所述ECU信息处理模块,用于根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,所述配置信息包括所述目标ECU数据存储区的地址和大小;
所述刷写文件处理模块,用于根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件;
所述指令识别模块,用于根据所述目标ECU的通信协议和刷写指令配置文件,解析出所述目标ECU的刷写指令集;
所述报文生成模块,用于对所述目标ECU的配置信息、所述目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,所述报文数据被用于刷写所述目标ECU。
可选的,所述目标ECU包括第一ECU和第二ECU;
所述ECU信息处理模块,用于根据所述第一ECU和所述第二ECU的配置文件,解析出所述第一ECU的数据存储区的第一地址和第一大小,以及所述第二ECU的数据存储区的第二地址和第二大小;并保存到数组中;
所述刷写文件处理模块,用于根据从所述数组中获取的所述第一地址和所述第一大小生成所述第一ECU的第一bin文件,以及根据从所述数组中获取的所述第二地址和所述第二大小生成所述第二ECU的第二bin文件。
可选的,所述系统还包括:报文发送模块;
所述报文发送模块,用于确定控制器局域网络CAN设备的驱动接口和通信协议,将所述报文数据发送到所述CAN硬线,以便于对所述报文数据进行传输。
可选的,所述系统还包括输入模块和CAN设备初始化模块;
所述输入模块,用于输入目标CAN设备信息;
所述CAN设备初始化模块,用于基于所述目标CAN设备信息,初始化所述目标CAN设备的驱动。
可选的,所述系统还包括显示器;
所述显示器,用于显示所述目标ECU的配置信息;
所述输入模块,还用于对所述目标ECU的配置信息进行修正。
可选的,所述系统还包括ECU信息管理模块;
所述输入模块,用于输入目标ECU的配置文件;
所述ECU信息管理模块,用于根据所述目标ECU的配置文件,对ECU配置文件数据库进行更新;还用于在刷写目标ECU之前,判断所述目标ECU的配置文件是否与所述ECU配置文件数据库中的一致;若不一致,停止刷写;
所述显示器,还用于若不一致时,显示异常信息,以提示输入的所述目标ECU的配置文件的正确性;
所述ECU信息管理模块,还用于若不一致且未收到所述输入模块输入的修正所述目标ECU的配置文件的信息时,从所述ECU配置文件数据库中下载所述目标ECU的配置文件。
可选的,所述系统还包括刷写文件管理模块;
所述刷写文件管理模块,用于刷写所述目标ECU成功后,将所述待刷写文件上传到刷写文件数据库;还用于从所述刷写文件数据库下载所述待刷写文件。
可选的,所述系统还包括指令管理模块;
所述输入模块,用于输入所述目标ECU的通信协议和刷写指令配置文件;
所述指令管理模块,用于根据所述目标ECU的通信协议和刷写指令配置文件,对指令数据库进行更新;还用于在刷写目标ECU之前,判断所述目标ECU的通信协议和刷写指令配置文件是否与所述指令数据库中的一致;若不一致,停止刷写;
所述显示器,还用于若不一致时,显示异常信息,以提示所述目标ECU的通信协议和刷写指令配置文件的正确性;
所述指令管理模块,还用于若不一致且未收到所述输入模块输入的修正所述目标ECU的通信协议和刷写指令配置文件时,从所述指令数据库下载所述目标ECU的通信协议和刷写指令配置文件。
第二方面,本申请提供了一种车辆控制器刷写方法,应用于车辆控制器刷写系统,所述方法包括:
根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,所述配置信息包括所述目标ECU数据存储区的地址和大小;
根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件;
根据所述目标ECU的通信协议和刷写指令配置文件,解析出所述目标ECU的刷写指令集;
对所述目标ECU的配置信息、所述目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,所述报文数据被用于刷写所述目标ECU。
可选的,所述目标ECU包括第一ECU和第二ECU;
所述根据目标ECU的配置文件,解析出目标ECU的配置信息包括:
根据所述第一ECU和所述第二ECU的配置文件,解析出所述第一ECU的数据存储区的第一地址和第一大小,以及所述第二ECU的数据存储区的第二地址和第二大小;并保存到数组中;
所述根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件包括:
根据从所述数组中获取的所述第一地址和所述第一大小生成所述第一ECU的第一bin文件,以及根据从所述数组中获取的所述第二地址和所述第二大小生成所述第二ECU的第二bin文件。
可选的,所述方法还包括:
确定控制器局域网络CAN设备的驱动接口和通信协议,将所述报文数据发送到所述CAN硬线,以便于对所述报文数据进行传输。
可选的,所述方法还包括:
获得目标CAN设备信息;
基于所述目标CAN设备信息,初始化所述目标CAN设备的驱动。
可选的,所述方法还包括:
显示所述目标ECU的配置信息;
对所述目标ECU的配置信息进行修正。
可选的,所述方法还包括:
根据所述目标ECU的配置文件,对ECU配置文件数据库进行更新;
在刷写目标ECU之前,判断所述目标ECU的配置文件是否与所述ECU配置文件数据库中的一致;若不一致,停止刷写;
若未收到修正所述目标ECU的配置文件的信息时,从所述ECU配置文件数据库中下载所述目标ECU的配置文件。
可选的,所述方法还包括:
刷写所述目标ECU成功后,将所述待刷写文件上传到刷写文件数据库,或;
刷写所述目标ECU之前,从所述刷写文件数据库下载所述待刷写文件。
可选的,所述方法还包括:
根据所述目标ECU的通信协议和刷写指令配置文件,对指令数据库进行更新;
在刷写目标ECU之前,判断所述目标ECU的通信协议和刷写指令配置文件是否与所述指令数据库中的一致;若不一致,停止刷写;
若未收到修正所述目标ECU的通信协议和刷写指令配置文件时,从所述指令数据库下载所述目标ECU的通信协议和刷写指令配置文件。
第三方面,本申请提供了一种车辆控制器刷写设备,包括本申请第一方面中任一项所述的刷写系统;所述设备还包括待刷写控制器;
所述刷写系统,用于刷写所述待刷写控制器。
由上述技术方案可以看出,本申请实施例具有以下优点:
本发明提供的一种车辆控制器刷写系统、方法及相关设备,该系统包括:电子控制单元ECU信息处理模块、刷写文件处理模块、指令识别模块和报文生成模块;所述ECU信息处理模块,用于根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,所述配置信息包括所述目标ECU数据存储区的地址和大小;所述刷写文件处理模块,用于根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件;所述指令识别模块,用于根据所述目标ECU的通信协议和刷写指令配置文件,解析出所述目标ECU的刷写指令集;所述报文生成模块,用于对所述目标ECU的配置信息、所述目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,所述报文数据被用于刷写所述目标ECU。该控制器刷写系统支持多种通信协议的控制器刷写,支持多种不同类型的控制器刷写,且支持多种CAN硬件设备,适用性强,刷写控制器的效率高。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种车辆控制器刷写系统的示意图;
图2为本申请实施例提供的一种刷写文件处理模块处理数据的流程图;
图3为本申请实施例提供的一种报文生成模块处理数据的流程图;
图4为本申请实施例提供的又一种车辆控制器刷写系统的示意图;
图5为本申请实施例提供的一种报文发送模块处理数据的流程图;
图6为本申请实施例提供的另一种车辆控制器刷写系统的示意图;
图7为本申请实施例提供的一种车辆控制器刷写方法的流程图;
图8为本申请实施例提供的一种车辆控制器刷写设备的示意图。
具体实施方式
在现有技术中,控制器刷写系统是根据特定的控制器、CAN设备以及通信协议进行开发,因此,仅支持一种控制器的刷写,无法实现对其他不同类型的控制器进行刷写,并且CAN设备和通信协议也是与该控制器相互对应的适应性较差。
为了解决上述问题,本申请提供了一种车辆控制器刷写系统、方法及相关设备。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一:
本申请实施例一提供了一种车辆控制器刷写系统。下面结合附图进行详细介绍。
参见图1,该图为本申请实施例提供的一种车辆控制器刷写系统的示意图。
该系统包括:电子控制单元ECU信息处理模块101、刷写文件处理模块102、指令识别模块103和报文生成模块104。
所述ECU信息处理模块101,用于根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,所述配置信息包括所述目标ECU数据存储区的地址和大小。
所述刷写文件处理模块102,用于根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件。
所述指令识别模块103,用于根据所述目标ECU的通信协议和刷写指令配置文件,解析出所述目标ECU的刷写指令集。
所述报文生成模块104,用于对所述目标ECU的配置信息、所述目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,所述报文数据被用于刷写所述目标ECU。
作为一种可能的实施方式,所述目标ECU包括第一ECU和第二ECU。
所述ECU信息处理模块101,用于根据所述第一ECU和所述第二ECU的配置文件,解析出所述第一ECU的数据存储区的第一地址和第一大小,以及所述第二ECU的数据存储区的第二地址和第二大小;并保存到数组中;
所述刷写文件处理模块102,用于根据从所述数组中获取的所述第一地址和所述第一大小生成所述第一ECU的第一bin文件,以及根据从所述数组中获取的所述第二地址和所述第二大小生成所述第二ECU的第二bin文件。
本申请实施例提供的车辆控制器刷写系统,不仅支持对当个控制器的刷写,而且还支持同时对多种不同的控制器进行同时刷写。下面分两种情况进行详细介绍。
第一种:对多个控制器刷写。
参见图2,该图为本申请实施例提供的一种刷写文件处理模块处理数据的流程图。
该刷写文件处理模块处理数据以生成bin文件的流程包括:
步骤201:获得多个控制器的待刷写文件的路径,并保存在数组中。
可以理解的是,每个控制器的待刷写文件与每个控制器唯一对应。
所述待刷写文件可以为hex格式文件,也可为s19格式文件。
步骤202:判断是否存在未处理的控制器对应的待刷写文件。
可以理解的是,判断过程可以是逐一检查每个控制器对应的待刷写文件是否已经转换,也可以通过其他方式进行判断,在实施例中不做限定。
步骤203:获取多个控制器的数据存储区的地址和大小。
可以理解的是,可以通过所述ECU信息处理模块101根据多个控制器的配置文件,解析出多个控制器的配置信息,即可获得多个控制器的数据存储区的地址和大小。
步骤204:根据控制器的数据存储区的地址和大小对解析所述待刷写文件,并生成bin文件。然后执行“步骤202”。
第二种:对单个控制器刷写。
对单个控制器刷写过程与所述多个控制器刷写过程相类似,即无需上述“步骤202”,在“步骤201”后执行“步骤203”和“步骤204”,此处不再赘述。
下面结合所述指令识别模块解析出的刷写指令集,详细介绍报文生成模块如何生成报文数据。
参见图3,该图为本申请实施例提供的一种报文生成模块处理数据的流程图。
在上述“步骤204”后,该报文生成模块处理数据以生成报文数据的流程包括:
步骤301:判断是否存在未处理的刷写指令集。
可以理解的是,所述刷写指令集可以是通过UDS协议进行刷写,还可以是通过CCP协议进行刷写。
参见表1,该表为刷写指令集配置项。
配置项 | 示例 |
Com Protocal | UDS/CCP |
Address Mode | Function/Physical |
Delay Time(ms) | 0 |
Erase Command Message | Request Seed/Send Key |
Erase Command Req Data | 0x27 0x05/0x27 0x06 |
Erase Command Resp Expect Data | 0x67 0x05/0x67 0x06 |
表1
步骤302:判断是否为擦除命令;若是,则执行“步骤303”;若否,则执行“步骤304”。
步骤303:将ECU的配置信息进行封装到CAN报文中。然后执行“步骤309”。
可以理解的是,所述配置信息包括所述目标ECU数据存储区的地址和大小。
步骤304:判断是否为下载命令;若是,则执行“步骤305”;若否,则执行“步骤306”。
步骤305:将ECU的bin文件封装到CAN报文中。然后执行“步骤309”。
步骤306:判断是否为请求密钥命令;若是,则执行“步骤307”;若否,则执行“步骤308”。
步骤307:将计算后的密钥封装到CAN报文中。然后执行“步骤309”。
步骤308:将刷写指令集封装到CAN报文中。
步骤309:对CAN报文增加文件头信息,以生成报文数据。
下面介绍如何将传输所述报文数据。
参见图4,该图为本申请实施例提供的另一种车辆控制器刷写系统的示意图。
结合图1,该系统还包括:报文发送模块105。
所述报文发送模块105,用于确定CAN设备的驱动接口和通信协议,将所述报文数据发送到所述CAN硬线,以便于对所述报文数据进行传输。
所述系统还包括输入模块106和CAN设备初始化模块107。
所述输入模块106,用于输入目标CAN设备信息。
所述CAN设备初始化模块107,用于基于所述目标CAN设备信息,初始化所述目标CAN设备的驱动。
可以理解的是,可以根据输入模块106中输入的已连接到控制器刷写系统中的CAN设备来初始化CAN设备的驱动,以便为报文数据的传输。本申请实施例中所述CAN硬件可以包括:ES581、Peak CAN、SPY3、ZLG CAN和VALUE CAN。本申请实施例中不对CAN硬件进行限定。
作为一种可能的实施方式,所述报文发送模块105通过获取CAN设备识别信息,确定CAN设备的驱动接口。根据所述驱动接口和所述通信协议,将所述报文生成模块104生成的报文数据发送到CAN硬线。
参见图5,该图为本申请实施例提供的一种报文发送模块处理数据的流程图。
在上述“步骤309”后,该报文发送模块处理数据以传输报文数据的流程包括:
步骤501:判断CAN报文流字节数目是否大于预设值;若是,则执行“步骤502”;若否,则执行“步骤503”。
需要说明的是,预设值可以为7Bytes,本领域技术人员可以根据实际需要进行设定,在本实施例中,优选为7Bytes。进而提高CAN报文传输效率。
步骤502:将CAN报文拆包成连续帧,使用连续帧传输。
步骤503:将CAN报文使用单帧传输。
步骤504:确定CAN设备的驱动接口和通信协议。
其中,可供选择的CAN设备的驱动接口包括:ES581驱动、Peak CAN驱动、SPY3驱动、ZLG CAN驱动和VALUE CAN驱动。可供选择的通信协议包括:UDS通信协议、SAE J2534通信协议和CCP通信协议。具体选择何种根据CAN设备信息而确定,也可以根据用户的选择而定。本领域技术人员可以根据具体的实际需要而确定选择何种驱动接口和传输协议。进而本申请实施例提供的控制器刷写系统可以支持多种CAN硬件设备,从而节约了人力成本和硬件成本。
步骤505:通过CAN硬线传输CAN报文。
下面介绍本申请实施例提供的车辆控制器刷写系统如何实现对ECU的配置信息的管理、控制器软件的版本管理以及刷写指令的管理。
参见图6,该为本申请实施例提供的另一种车辆控制器刷写系统的示意图。
结合图1和图4,该系统还包括:显示器108、ECU信息管理模块109、刷写文件管理模块110和指令管理模块111。
所述显示器108,用于显示所述目标ECU的配置信息。
所述输入模块106,还用于对所述目标ECU的配置信息进行修正。
所述ECU信息处理模块101解析出ECU的配置信息后,可以通过所述显示器108将指定界面显示所述配置信息。并且可以通过所述输入模块106对所述配置信息进行修改。
参见表2,该表为ECU的配置信息。
配置项 | 示例 |
Project Name | HCU_MPC5746 |
ECU Type | HCU |
Phy ID | 0x485 |
Func ID | 0x7DF |
Resp ID | 0x4C5 |
ASWO_BaseAddr | 0x80000000 |
ASWO_Size | 0x00001000 |
ASW1_BaseAddr | 0x80400000 |
ASW1_Size | 0x00020000 |
CaliData0_BaseAddr | 0x80600000 |
CaliData0_Size | 0x00001000 |
CaliData1_BaseAddr | - |
CaliData1_Size | - |
表2
本申请实施例表2中的所述ECU的配置信息仅仅是示例性的展示,可理解的是,本申请实施例中,所述ECU包括一个或多个数据存储区,并且配置信息包括数据存储区的地址以及大小,例如:表2中“ASWO_BaseAddr”和“Ox80000000”为第一数据存储区的地址,“ASWO_Size”和“0x00001000”为第一数据存储区对应的大小。本申请并不限定于上述表2中所展示的示例。
下面介绍如何实现对ECU的配置信息的管理。
可以理解的是,对于开发车型较少的情况下,能够使用本地配置文件对各个车型的控制器进行刷写。但是,当车型较多时,若仍然用本地配置文件对各个车型的控制器进行刷写,会面临大量的控制器的配置文件,给开发人员带来管理数据的负担。由此,本申请实施例的车辆控制器的刷写系统提供了ECU信息管理模块109。
作为一种可能的实施方式,所述输入模块106,用于输入目标ECU的配置文件。所述ECU信息管理模块109,用于根据所述目标ECU的配置文件,对ECU配置文件数据库进行更新;还用于在刷写目标ECU之前,判断所述目标ECU的配置文件是否与所述ECU配置文件数据库中的一致;若不一致,停止刷写。所述显示器108,还用于若不一致时,显示异常信息,以提示输入的所述目标ECU的配置文件的正确性。所述ECU信息管理模块109,还用于若不一致且未收到所述输入模块输入的修正所述目标ECU的配置文件的信息时,从所述ECU配置文件数据库中下载所述目标ECU的配置文件。
在本实施例中,通过建立ECU配置文件数据库,实现对ECU的配置信息的管理,可以实现获得各个车型控制器的配置文件,由此,可以快速对各个车型的控制器进行刷写。减轻了开发人员管理ECU的配置文件的负担。
下面介绍本申请实施例提供的车辆控制器刷写系统如何实现对控制器软件的版本管理。
可以理解的是,控制器软件在开发过程中需要做到版本的管理与控制,不同的版本之间可能会存在刷写文件等数据不兼容的问题。由此,本申请实施例的车辆控制器的刷写系统提供了刷写文件管理模块110。
作为一种可能的实施方式,所述刷写文件管理模块110,用于刷写所述目标ECU成功后,将所述待刷写文件上传到刷写文件数据库;还用于从所述刷写文件数据库下载所述待刷写文件。
在本实施例中,可以将刷写成功的待刷写文件上传到刷写文件数据库中,也可以从刷写文件数据库中下载待刷写文件。即使控制器软件的版本更新后,也能从刷写文件数据库获得待刷写文件,实现了控制器软件版本跟踪,避免了版本不同刷写文件数据不兼容的问题。
下面介绍本申请实施例提供的车辆控制器刷写系统如何实现对刷写指令的管理。
可以理解的是,对于开发车型较少的情况下,能够使用本地刷写指令配置文件管理各个车型的控制器刷写指令。但是,当车型较多时,若仍然用本地刷写指令配置文件管理各个车型的控制器刷写指令时,会面临大量的控制器的刷写指令配置文件,给开发人员带来管理数据的负担。由此,本申请实施例的车辆控制器的刷写系统提供了指令管理模块111。
作为一种可能的实施方式,所述输入模块106,用于输入所述目标ECU的通信协议和刷写指令配置文件。所述指令管理模块111,用于根据所述目标ECU的通信协议和刷写指令配置文件,对指令数据库进行更新;还用于在刷写目标ECU之前,判断所述目标ECU的通信协议和刷写指令配置文件是否与所述指令数据库中的一致;若不一致,停止刷写。所述显示器108,还用于若不一致时,显示异常信息,以提示所述目标ECU的通信协议和刷写指令配置文件的正确性。所述指令管理模块111,还用于若不一致且未收到所述输入模块输入的修正所述目标ECU的通信协议和刷写指令配置文件时,从所述指令数据库下载所述目标ECU的通信协议和刷写指令配置文件。
在本实施例中,通过建立指令数据库,实现对刷写指令配置文件的管理,可以实现获得各个车型控制器的刷写指令配置文件,减轻了开发人员管理刷写指令配置文件的负担。
由上述技术方案可以看出,本申请实施例具有以下优点:
本发明提供的一种车辆控制器刷写系统,该系统包括:电子控制单元ECU信息处理模块、刷写文件处理模块、指令识别模块和报文生成模块;所述ECU信息处理模块,用于根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,所述配置信息包括所述目标ECU数据存储区的地址和大小;所述刷写文件处理模块,用于根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件;所述指令识别模块,用于根据所述目标ECU的通信协议和刷写指令配置文件,解析出所述目标ECU的刷写指令集;所述报文生成模块,用于对所述目标ECU的配置信息、所述目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,所述报文数据被用于刷写所述目标ECU。该控制器刷写系统支持多种通信协议的控制器刷写,支持多种不同类型的控制器刷写,且支持多种CAN硬件设备,适用性强,刷写控制器的效率高。
实施例二:
本申请实施例二提供了一种车辆控制器刷写分法。下面结合附图进行详细介绍。
参见图7,该图为本申请实施例提供的一种车辆控制器刷写方法的流程图。
该车辆控制器刷写方法包括:
步骤701:根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,所述配置信息包括所述目标ECU数据存储区的地址和大小。
步骤702:根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件。
步骤703:根据所述目标ECU的通信协议和刷写指令配置文件,解析出所述目标ECU的刷写指令集。
步骤704:对所述目标ECU的配置信息、所述目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,所述报文数据被用于刷写所述目标ECU。
作为一种可能的实施方式,所述目标ECU包括第一ECU和第二ECU;所述根据目标ECU的配置文件,解析出目标ECU的配置信息包括:根据所述第一ECU和所述第二ECU的配置文件,解析出所述第一ECU的数据存储区的第一地址和第一大小,以及所述第二ECU的数据存储区的第二地址和第二大小;并保存到数组中;所述根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件包括:根据从所述数组中获取的所述第一地址和所述第一大小生成所述第一ECU的第一bin文件,以及根据从所述数组中获取的所述第二地址和所述第二大小生成所述第二ECU的第二bin文件。
作为一种可能的实施方式,所述方法还包括:确定控制器局域网络CAN设备的驱动接口和通信协议,将所述报文数据发送到所述CAN硬线,以便于对所述报文数据进行传输。
作为一种可能的实施方式,所述方法还包括:获得目标CAN设备信息;
基于所述目标CAN设备信息,初始化所述目标CAN设备的驱动。
作为一种可能的实施方式,所述方法还包括:显示所述目标ECU的配置信息;对所述目标ECU的配置信息进行修正。
作为一种可能的实施方式,所述方法还包括:根据所述目标ECU的配置文件,对ECU配置文件数据库进行更新;在刷写目标ECU之前,判断所述目标ECU的配置文件是否与所述ECU配置文件数据库中的一致;若不一致,停止刷写;若未收到修正所述目标ECU的配置文件的信息时,从所述ECU配置文件数据库中下载所述目标ECU的配置文件。
作为一种可能的实施方式,所述方法还包括:刷写所述目标ECU成功后,将所述待刷写文件上传到刷写文件数据库,或;刷写所述目标ECU之前,从所述刷写文件数据库下载所述待刷写文件。
作为一种可能的实施方式,所述方法还包括:根据所述目标ECU的通信协议和刷写指令配置文件,对指令数据库进行更新;在刷写目标ECU之前,判断所述目标ECU的通信协议和刷写指令配置文件是否与所述指令数据库中的一致;若不一致,停止刷写;若未收到修正所述目标ECU的通信协议和刷写指令配置文件时,从所述指令数据库下载所述目标ECU的通信协议和刷写指令配置文件。
本发明提供的一种车辆控制器刷写方法,该方法包括:根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,所述配置信息包括所述目标ECU数据存储区的地址和大小;根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件;根据所述目标ECU的通信协议和刷写指令配置文件,解析出所述目标ECU的刷写指令集;对所述目标ECU的配置信息、所述目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,所述报文数据被用于刷写所述目标ECU。该控制器刷写方法支持多种通信协议的控制器刷写,支持多种不同类型的控制器刷写,且支持多种CAN硬件设备,适用性强,刷写控制器的效率高。
实施例三:
本申请实施例三提供了一种车辆控制器刷写设备。下面结合附图进行详细介绍。
参见图8,该图为本申请实施例提供的一种车辆控制器刷写设备的示意图。
该车辆控制器刷写设备,包括实施例一中任一项所述的刷写系统801;所述设备还包括待刷写控制器802。
所述刷写系统801,用于刷写所述待刷写控制器802。
本发明提供的一种车辆控制器刷写设备,包括实施例一中任一项所述的刷写系统801;所述设备还包括待刷写控制器802;所述刷写系统801,用于刷写所述待刷写控制器802。该控制器刷写设备支持多种通信协议的控制器刷写,支持多种不同类型的控制器刷写,且支持多种CAN硬件设备,适用性强,刷写控制器的效率高。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (17)
1.一种车辆控制器刷写系统,其特征在于,包括:电子控制单元ECU信息处理模块、刷写文件处理模块、指令识别模块和报文生成模块;
所述ECU信息处理模块,用于根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,所述配置信息包括所述目标ECU数据存储区的地址和大小;
所述刷写文件处理模块,用于根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件;
所述指令识别模块,用于根据所述目标ECU的通信协议和刷写指令配置文件,解析出所述目标ECU的刷写指令集;
所述报文生成模块,用于对所述目标ECU的配置信息、所述目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,所述报文数据被用于刷写所述目标ECU。
2.根据权利要求1所述的系统,其特征在于,所述目标ECU包括第一ECU和第二ECU;
所述ECU信息处理模块,用于根据所述第一ECU和所述第二ECU的配置文件,解析出所述第一ECU的数据存储区的第一地址和第一大小,以及所述第二ECU的数据存储区的第二地址和第二大小;并保存到数组中;
所述刷写文件处理模块,用于根据从所述数组中获取的所述第一地址和所述第一大小生成所述第一ECU的第一bin文件,以及根据从所述数组中获取的所述第二地址和所述第二大小生成所述第二ECU的第二bin文件。
3.根据权利要求2所述的系统,其特征在于,所述系统还包括:报文发送模块;
所述报文发送模块,用于确定控制器局域网络CAN设备的驱动接口和通信协议,将所述报文数据发送到所述CAN硬线,以便于对所述报文数据进行传输。
4.根据权利要求3所述的系统,其特征在于,所述系统还包括输入模块和CAN设备初始化模块;
所述输入模块,用于输入目标CAN设备信息;
所述CAN设备初始化模块,用于基于所述目标CAN设备信息,初始化所述目标CAN设备的驱动。
5.根据权利要求4所述的系统,其特征在于,所述系统还包括显示器;
所述显示器,用于显示所述目标ECU的配置信息;
所述输入模块,还用于对所述目标ECU的配置信息进行修正。
6.根据权利要求4所述的系统,其特征在于,所述系统还包括ECU信息管理模块;
所述输入模块,用于输入目标ECU的配置文件;
所述ECU信息管理模块,用于根据所述目标ECU的配置文件,对ECU配置文件数据库进行更新;还用于在刷写目标ECU之前,判断所述目标ECU的配置文件是否与所述ECU配置文件数据库中的一致;若不一致,停止刷写;
所述显示器,还用于若不一致时,显示异常信息,以提示输入的所述目标ECU的配置文件的正确性;
所述ECU信息管理模块,还用于若不一致且未收到所述输入模块输入的修正所述目标ECU的配置文件的信息时,从所述ECU配置文件数据库中下载所述目标ECU的配置文件。
7.根据权利要求4所述的系统,其特征在于,所述系统还包括刷写文件管理模块;
所述刷写文件管理模块,用于刷写所述目标ECU成功后,将所述待刷写文件上传到刷写文件数据库;还用于从所述刷写文件数据库下载所述待刷写文件。
8.根据权利要求4所述的系统,其特征在于,所述系统还包括指令管理模块;
所述输入模块,用于输入所述目标ECU的通信协议和刷写指令配置文件;
所述指令管理模块,用于根据所述目标ECU的通信协议和刷写指令配置文件,对指令数据库进行更新;还用于在刷写目标ECU之前,判断所述目标ECU的通信协议和刷写指令配置文件是否与所述指令数据库中的一致;若不一致,停止刷写;
所述显示器,还用于若不一致时,显示异常信息,以提示所述目标ECU的通信协议和刷写指令配置文件的正确性;
所述指令管理模块,还用于若不一致且未收到所述输入模块输入的修正所述目标ECU的通信协议和刷写指令配置文件时,从所述指令数据库下载所述目标ECU的通信协议和刷写指令配置文件。
9.一种车辆控制器刷写方法,其特征在于,应用于车辆控制器刷写系统,所述方法包括:
根据目标ECU的配置文件,解析出目标ECU的配置信息;其中,所述配置信息包括所述目标ECU数据存储区的地址和大小;
根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件;
根据所述目标ECU的通信协议和刷写指令配置文件,解析出所述目标ECU的刷写指令集;
对所述目标ECU的配置信息、所述目标ECU的bin文件和所述刷写指令集进行封装成报文数据;其中,所述报文数据被用于刷写所述目标ECU。
10.根据权利要求9所述的方法,其特征在于,所述目标ECU包括第一ECU和第二ECU;
所述根据目标ECU的配置文件,解析出目标ECU的配置信息包括:
根据所述第一ECU和所述第二ECU的配置文件,解析出所述第一ECU的数据存储区的第一地址和第一大小,以及所述第二ECU的数据存储区的第二地址和第二大小;并保存到数组中;
所述根据所述ECU数据存储区的地址和大小解析待刷写文件,并生成所述目标ECU的二进制bin文件包括:
根据从所述数组中获取的所述第一地址和所述第一大小生成所述第一ECU的第一bin文件,以及根据从所述数组中获取的所述第二地址和所述第二大小生成所述第二ECU的第二bin文件。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
确定控制器局域网络CAN设备的驱动接口和通信协议,将所述报文数据发送到所述CAN硬线,以便于对所述报文数据进行传输。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
获得目标CAN设备信息;
基于所述目标CAN设备信息,初始化所述目标CAN设备的驱动。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
显示所述目标ECU的配置信息;
对所述目标ECU的配置信息进行修正。
14.根据权利要求12所述的方法,其特征在于,所述方法还包括:
根据所述目标ECU的配置文件,对ECU配置文件数据库进行更新;
在刷写目标ECU之前,判断所述目标ECU的配置文件是否与所述ECU配置文件数据库中的一致;若不一致,停止刷写;
若未收到修正所述目标ECU的配置文件的信息时,从所述ECU配置文件数据库中下载所述目标ECU的配置文件。
15.根据权利要求12所述的方法,其特征在于,所述方法还包括:
刷写所述目标ECU成功后,将所述待刷写文件上传到刷写文件数据库,或;
刷写所述目标ECU之前,从所述刷写文件数据库下载所述待刷写文件。
16.根据权利要求12所述的方法,其特征在于,所述方法还包括:
根据所述目标ECU的通信协议和刷写指令配置文件,对指令数据库进行更新;
在刷写目标ECU之前,判断所述目标ECU的通信协议和刷写指令配置文件是否与所述指令数据库中的一致;若不一致,停止刷写;
若未收到修正所述目标ECU的通信协议和刷写指令配置文件时,从所述指令数据库下载所述目标ECU的通信协议和刷写指令配置文件。
17.一种车辆控制器刷写设备,其特征在于,包括权利要求1-8中任一项所述的刷写系统;所述设备还包括待刷写控制器;
所述刷写系统,用于刷写所述待刷写控制器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010215701.2A CN113448596A (zh) | 2020-03-24 | 2020-03-24 | 一种车辆控制器刷写系统、方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010215701.2A CN113448596A (zh) | 2020-03-24 | 2020-03-24 | 一种车辆控制器刷写系统、方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113448596A true CN113448596A (zh) | 2021-09-28 |
Family
ID=77806655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010215701.2A Pending CN113448596A (zh) | 2020-03-24 | 2020-03-24 | 一种车辆控制器刷写系统、方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113448596A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114625393A (zh) * | 2022-02-23 | 2022-06-14 | 阿波罗智能技术(北京)有限公司 | 电子控制单元的刷写方法、装置、设备以及存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572221A (zh) * | 2015-01-30 | 2015-04-29 | 重庆邮电大学 | 一种车载ecu在线升级系统及方法 |
CN105278978A (zh) * | 2014-07-23 | 2016-01-27 | 广州汽车集团股份有限公司 | 一种基于CANoe的ECU软件刷新方法及装置 |
CN105426198A (zh) * | 2014-09-09 | 2016-03-23 | 联创汽车电子有限公司 | 车载双控制芯片系统及其辅助控制芯片程序更新方法 |
CN106874018A (zh) * | 2017-03-16 | 2017-06-20 | 武汉理工大学 | 一种电动汽车电动空调控制器软件刷新系统和方法 |
US20170214568A1 (en) * | 2014-07-23 | 2017-07-27 | Huawei Technologies Co., Ltd. | Terminal upgrade method and related device |
CN106990983A (zh) * | 2017-03-21 | 2017-07-28 | 北京新能源汽车股份有限公司 | 单片机烧写方法、装置、系统及单片机 |
US20170255459A1 (en) * | 2016-03-01 | 2017-09-07 | Renesas Electronics Corporation | Embedded device and program updating method |
CN107273170A (zh) * | 2017-07-03 | 2017-10-20 | 西南交通大学 | 一种SoPC程序远程更新系统及方法 |
US20180018164A1 (en) * | 2015-01-26 | 2018-01-18 | Hitachi Automotive Systems, Ltd. | Vehicle-mounted control device, program writing device, program generating device and program |
CN108121553A (zh) * | 2017-12-20 | 2018-06-05 | 北京经纬恒润科技有限公司 | 一种更新应用程序的方法及装置 |
CN109324813A (zh) * | 2018-08-16 | 2019-02-12 | 深圳市元征科技股份有限公司 | 电子控制系统刷写方法、装置及计算机介质 |
CN109947465A (zh) * | 2019-03-29 | 2019-06-28 | 北京经纬恒润科技有限公司 | 一种数据处理方法及系统 |
CN110825412A (zh) * | 2019-11-01 | 2020-02-21 | 上海电气集团股份有限公司 | 基于LabVIEW的控制器程序的刷写系统及方法 |
-
2020
- 2020-03-24 CN CN202010215701.2A patent/CN113448596A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105278978A (zh) * | 2014-07-23 | 2016-01-27 | 广州汽车集团股份有限公司 | 一种基于CANoe的ECU软件刷新方法及装置 |
US20170214568A1 (en) * | 2014-07-23 | 2017-07-27 | Huawei Technologies Co., Ltd. | Terminal upgrade method and related device |
CN105426198A (zh) * | 2014-09-09 | 2016-03-23 | 联创汽车电子有限公司 | 车载双控制芯片系统及其辅助控制芯片程序更新方法 |
US20180018164A1 (en) * | 2015-01-26 | 2018-01-18 | Hitachi Automotive Systems, Ltd. | Vehicle-mounted control device, program writing device, program generating device and program |
CN104572221A (zh) * | 2015-01-30 | 2015-04-29 | 重庆邮电大学 | 一种车载ecu在线升级系统及方法 |
US20170255459A1 (en) * | 2016-03-01 | 2017-09-07 | Renesas Electronics Corporation | Embedded device and program updating method |
CN106874018A (zh) * | 2017-03-16 | 2017-06-20 | 武汉理工大学 | 一种电动汽车电动空调控制器软件刷新系统和方法 |
CN106990983A (zh) * | 2017-03-21 | 2017-07-28 | 北京新能源汽车股份有限公司 | 单片机烧写方法、装置、系统及单片机 |
CN107273170A (zh) * | 2017-07-03 | 2017-10-20 | 西南交通大学 | 一种SoPC程序远程更新系统及方法 |
CN108121553A (zh) * | 2017-12-20 | 2018-06-05 | 北京经纬恒润科技有限公司 | 一种更新应用程序的方法及装置 |
CN109324813A (zh) * | 2018-08-16 | 2019-02-12 | 深圳市元征科技股份有限公司 | 电子控制系统刷写方法、装置及计算机介质 |
CN109947465A (zh) * | 2019-03-29 | 2019-06-28 | 北京经纬恒润科技有限公司 | 一种数据处理方法及系统 |
CN110825412A (zh) * | 2019-11-01 | 2020-02-21 | 上海电气集团股份有限公司 | 基于LabVIEW的控制器程序的刷写系统及方法 |
Non-Patent Citations (1)
Title |
---|
曾宇文;: "基于LabVIEW实现Flash Bootloader刷写方法的研究", 科技视界, no. 09, 25 March 2017 (2017-03-25) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114625393A (zh) * | 2022-02-23 | 2022-06-14 | 阿波罗智能技术(北京)有限公司 | 电子控制单元的刷写方法、装置、设备以及存储介质 |
CN114625393B (zh) * | 2022-02-23 | 2023-06-23 | 阿波罗智能技术(北京)有限公司 | 电子控制单元的刷写方法、装置、设备以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11223525B2 (en) | Gateway device, firmware update method, and recording medium | |
US10409587B2 (en) | Method for programming vehicle electronic control modules | |
CN104145452B (zh) | 信息处理装置、电子控制单元以及信息处理方法 | |
CN112286170B (zh) | 车辆ecu刷写方法、装置、设备及存储介质 | |
CN110297608B (zh) | 数据的处理方法、装置和存储介质 | |
CN111381844A (zh) | 更新车辆ecu固件的方法及装置 | |
CN111176695A (zh) | 一种车辆ecu配置的方法、服务器及终端 | |
CN111769962A (zh) | 一种mcu固件ota升级方法 | |
CN112181449B (zh) | 车载软件升级方法、装置、系统及存储介质 | |
CN107807624B (zh) | 一种控制器中应用程序的刷新方法 | |
CN112104501A (zh) | 一种农机深松物联网终端设备的软件远程升级的方法 | |
CN111722864A (zh) | 一种ecu数据刷写方法及相关装置 | |
CN113094072A (zh) | 车辆升级方法、装置、电子装置及存储介质 | |
CN113608763A (zh) | 车载ota升级方法、装置、设备及作业机械 | |
CN104133699A (zh) | 设备系统软件升级方法与系统 | |
CN112015489A (zh) | 一种车载软件的管理方法、装置、存储介质及系统 | |
CN113448596A (zh) | 一种车辆控制器刷写系统、方法及相关设备 | |
CN110990046A (zh) | 一种基于动态文件的升级方法 | |
CN113741936B (zh) | 一种基于uds协议的并行刷写方法、装置、车辆及计算机可读存储介质 | |
CN101340311A (zh) | 显示控制设备、显示控制程序和显示控制方法 | |
CN111338681A (zh) | 一种设备的固件升级方法及系统 | |
CN111459519A (zh) | 一种mcu升级方法及装置 | |
CN113220317A (zh) | 车辆控制器并行刷新方法、装置、计算机设备和存储介质 | |
CN110780893A (zh) | Android智能终端FOTA方案 | |
CN114115955B (zh) | 服务器资源盒子fpga固件升级方法、系统、终端及存储介质 |
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 |