CN109696904A - 一种电子控制单元数据描述文件的地址替换方法及系统 - Google Patents
一种电子控制单元数据描述文件的地址替换方法及系统 Download PDFInfo
- Publication number
- CN109696904A CN109696904A CN201811585097.1A CN201811585097A CN109696904A CN 109696904 A CN109696904 A CN 109696904A CN 201811585097 A CN201811585097 A CN 201811585097A CN 109696904 A CN109696904 A CN 109696904A
- Authority
- CN
- China
- Prior art keywords
- address
- file
- data description
- description file
- array
- 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 24
- 238000012795 verification Methods 0.000 claims abstract description 40
- 238000012937 correction Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 7
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000003993 interaction Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 4
- 241000208340 Araliaceae Species 0.000 description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 235000008434 ginseng Nutrition 0.000 description 2
- 238000011217 control strategy Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0213—Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24065—Real time diagnostics
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种电子控制单元数据描述文件的地址替换方法,包括:S1,读取对象地址文件;S2,生成一数组;S3,读取数组中的第一个元素作为当前元素,并获取当前元素中的对象;S4,查找与对象对应的第一对象,并获取第一地址;S5,以地址对第一地址进行替换;S6,判断当前元素是否为数组的最后一个元素;若是,则保存为一第二数据描述文件;若否,则转向S7;S7,读取下一个元素作为当前元素,并转向S4。本发明的技术方案有益效果在于:使非专业人员在人机交互界面也可完成A2L文件地址的替换和校验,节省集成工作的时间和人力成本,提高地址替换的效率;对局部地址范围的进行替换,确保A2L文件地址替换的可靠和准确。
Description
技术领域
本发明涉及汽车电子控制器技术领域,尤其涉及一种电子控制单元数据描述文件的地址替换方法及系统。
背景技术
A2L文件是控制器的数据描述文件,标定工具可以根据A2L文件提供的消息,读取电子控制单元(Electronic Control Unit,ECU)中可测量和标定参数的数值,并按用户的要求标定参数数值以优化控制策略。然而,A2L文件地址替换工作单调且工作量极大,手动修改A2L文件中的参数地址耗时耗力,且错误率高,使得后续标定工作极大的拖延,为加快A2L地址替换,提高A2L文件中地址替换的高效和准确,需要一种便捷、高效的A2L文件替换方法和系统。
现有同类技术发明在识别参数及地址位置时,需要进行区域块的多段识别,多以/begin CHARACTERISTIC到/end CHARACTERISTIC,/begin MEASUREME到/endMEASUREMENT,/beginAXIS_PTS到/endAXIS_PTS为匹配区域,这样多行匹配使得匹配效率不高,且容易出错。
现有A2L文件地址替换方法没有考虑局部范围替换的可能性,只能进行全局替换。在标定过程中有时可能需要局部地址替换或者多段地址替换,因此进行局部或者多段地址替换是亟待解决关键。
现有A2L地址替换后通用性不高,使非专业人员无法完成替换工作。
发明内容
针对上述问题,现提供一种解决A2L文件地址的快速替换问题,使非专业人员在人机交互界面也可完成A2L文件地址的替换和校验,节省集成工作的时间和人力成本,提高地址替换的效率;对局部地址范围的进行替换,确保A2L文件地址替换的可靠和准确的可变地址范围的电子控制单元数据描述文件的地址替换方法及系统。
具体技术方案如下:
一种电子控制单元数据描述文件的地址替换方法,提供一电子控制单元的对象地址文件和一第一数据描述文件;所述对象地址文件包括所述电子控制单元中的多个对象,以及与多个所述对象一一对应的地址;所述第一数据描述文件包括多个第一对象,以及与多个所述第一对象一一对应的第一地址;
还包括以下步骤:
步骤S1,读取所述对象地址文件;
步骤S2,生成一数组,将所述对象地址文件中的每个所述对象及对应的所述地址写入所述数组中对应的元素中;
步骤S3,读取所述数组中的第一个所述元素作为当前元素,并获取所述当前元素中的所述对象;
步骤S4,于所述第一数据描述文件中查找与所述对象对应的所述第一对象,并获取所述第一对象于所述第一数据描述文件中对应的所述第一地址;
步骤S5,以所述对象对应的所述地址对所述第一数据描述文件中的所述第一对象对应的所述第一地址进行替换;
步骤S6,判断所述当前元素是否为所述数组的最后一个所述元素;
若是,则将完成所述第一地址替换的所述第一数据描述文件保存为一第二数据描述文件,并退出;
若否,则转向所述步骤S7;
步骤S7,读取所述当前元素的下一个所述元素作为所述当前元素,并转向所述步骤S4。
优选的,所述步骤S2具体包括:
步骤S21,通过文件流控制对所述对象地址文件进行逐行读取;
步骤S22,控制所述文件流,读取一行所述对象地址文件;
步骤S23,通过正则表达式对所述对象地址文件中的所述对象和所述地址进行识别,并写入所述数组的当前元素中;
步骤S24,判断是否已读取到所述对象地址文件的最后一行;
若是,则将所述数组的指针指向第一元素,并退出;
如否,则控制所述文件流指针指向下一行,并返回所述步骤S22。
优选的,所述步骤S23中,将识别出的所述对象和所述地址通过字符串拼接后写入所述数组的所述当前元素中;或者
所述数组为二维数组,所述所述步骤S23中,将识别出的所述对象和所述地址分别写入所述数组的所述当前元素对应的子元素中。
优选的,提供一预先设定的地址范围,所述地址范围包括一地址上限和一地址下限;
所述步骤S5具体包括:
步骤S51,读取所述当前元素的所述对象对应的所述地址;
步骤S52,判断所述地址是否位于所述地址上限和所述地址下限限定的范围内;
若是,则转向所述步骤S53;
若否,则直接转向所述步骤S6;
步骤S53,对所述第一数据描述文件中的所述第一地址进行替换。
优选的,还包括对所述第二数据描述文件进行校验的过程;
具体包括以下步骤:
步骤A1,读取所述第二数据描述文件;
步骤A2,判断所述第二数据描述文件中的每个所述第一对象对应的所述第一地址是否为空;
若是,则于校验文件中记录第一错误提示信息,转向所述步骤A3;
若否,则直接转向所述步骤A3;
步骤A3,根据所述第一数据描述文件中每个所述第一对象对应的所述第一地址,判断所述第二数据描述文件中每个所述第一对象对应的所述第一地址是否未改变;
若是,则于所述校验文件中记录第二错误提示信息,转向所述步骤A4;
若否,则直接转向所述步骤A4;
步骤A4,输出所述校验文件,并完成校验。
一种电子控制单元数据描述文件的地址替换系统,包括:
第一读取模块,用于读取所述对象地址文件;
数组生成模块,连接所述第一读取模块,用于根据所述对象地址文件生成一数组,所述数组中的各个元素包括所述对象地址文件中的一个所述对象及对应的所述地址;
第一数组读取模块,连接所述数组生成模块,用于读取所述数组中的所述元素作为所述当前元素,并获取所述当前元素中的所述对象;
第二读取模块,用于读取所述第一数据描述文件;
匹配模块,分别连接所述第二读取模块和所述第一数组读取模块,用于对所述对象与所述第一数据描述文件中对应的所述第一对象进行匹配,输出匹配结果;
提取模块,分别连接所述匹配模块和所述第二读取模块,用于根据所述匹配结果,对所述第一数据描述文件中所述第一对象对应的所述第一地址进行提取;
地址替换模块,分别连接所述第一数组读取模块、所述匹配模块以及所述提取模块,用于以所述对象对应的所述地址,对所述第一数据描述文件中的所述第一对象对应的所述第一地址进行替换;
判断模块,连接所述数组读取模块,用于判断所述当前元素是否为所述数组的最后一个所述元素;
保存模块,连接所述判断模块,用于将完成所述第一地址替换的所述第一数据描述文件保存为所述第二数据描述文件;
第二数组读取模块,分别连接所述判断模块和所述匹配模块,用于读取所述当前元素的下一个所述元素作为所述当前元素,并获取所述当前元素中的所述对象。
优选的,所述数组生成模块具体包括:
文件读取单元,用于通过文件流控制对所述对象地址文件进行逐行读取;
识别单元,连接所述读取单元,用于通过正则表达式对所述对象地址文件中的所述对象和所述地址进行识别;
数组生成单元,连接所述识别单元,用于根据所述对象及对应的所述地址,生成所述数组;
判断单元,连接所述读取单元,用于对所述读取单元是否已读取到所述对象地址文件的最后一行进行判断。
优选的,所述地址替换模块具体包括:
地址读取单元,用于读取所述当前元素的所述对象对应的所述地址;
第二判断单元,连接所述地址读取单元,用于对所述地址是否位于所述地址上限和所述地址下限限定的范围内进行判断;
地址替换单元,连接所述第二判断单元,用于对所述第一数据描述文件中的所述第一地址进行替换。
优选的,还包括替换校验模块,连接所述保存模块,用于对所述第二数据描述文件的替换完成情况进行校验;
所述替换校验模块包括:
校验读取单元,用于读取所述第二数据描述文件;
第一校验单元,连接所述校验读取单元,用于对所述第二数据描述文件中的每个所述第一对象对应的所述第一地址是否为空进行判断;
第二校验单元,连接所述第一校验单元,用于根据所述第一数据描述文件中每个所述第一对象对应的所述第一地址,判断所述第二数据描述文件中每个所述第一对象对应的所述第一地址是否未改变。
上述技术方案有益效果在于:解决A2L文件地址的快速替换问题,使非专业人员在人机交互界面也可完成A2L文件地址的替换和校验,节省集成工作的时间和人力成本,提高地址替换的效率;对局部地址范围的进行替换,确保A2L文件地址替换的可靠和准确。
附图说明
参考所附附图,以更加充分地描述本发明的实施例。然而,所附附图仅用于说明和阐述,并不构成对本发明范围的限制。
图1是本发明的较佳的实施例中,电子控制单元数据描述文件的地址替换方法的总体流程图;
图2是本发明的较佳的实施例中,图1的基础上,对步骤S2做进一步描述的流程图;
图3是本发明的较佳的实施例中,图1的基础上,对步骤S5做进一步描述的流程图;
图4是本发明的较佳的实施例中,电子控制单元数据描述文件的地址替换方法中对第二数据描述文件进行校验的总体流程图;
图5是本发明的较佳的实施例中,电子控制单元数据描述文件的地址替换系统的总体结构示意图;
图6是本发明的较佳的实施例中,电子控制单元数据描述文件的地址替换系统的数组生成模块的结构示意图;
图7是本发明的较佳的实施例中,电子控制单元数据描述文件的地址替换系统的地址替换模块的结构示意图;
图8是本发明的较佳的实施例中,电子控制单元数据描述文件的地址替换系统的替换校验模块的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
本发明提供一种电子控制单元数据描述文件的地址替换方法,提供一电子控制单元的对象地址文件和一第一数据描述文件;对象地址文件包括电子控制单元中的多个对象,以及与多个对象一一对应的地址;第一数据描述文件包括多个第一对象,以及与多个第一对象一一对应的第一地址;
如图1所示,还包括以下步骤:
步骤S1,读取对象地址文件;
步骤S2,生成一数组,将对象地址文件中的每个对象及对应的地址写入数组中对应的元素中;
步骤S3,读取数组中的第一个元素作为当前元素,并获取当前元素中的对象;
步骤S4,于第一数据描述文件中查找与对象对应的第一对象,并获取第一对象于第一数据描述文件中对应的第一地址;
步骤S5,以对象对应的地址对第一数据描述文件中的第一对象对应的第一地址进行替换;
步骤S6,判断当前元素是否为数组的最后一个元素;
若是,则将完成第一地址替换的第一数据描述文件保存为一第二数据描述文件,并退出;
若否,则转向步骤S7;
步骤S7,读取当前元素的下一个元素作为当前元素,并转向步骤S4。
上述技术方案,通过将对象地址文件中的对象及其对应的地址读取至数组,并通过数组中的元素自动于数据描述文件中查找相同的对象,从而以数组元素中对象的地址替换数据描述文件中对象的地址,实现数据描述文件中对象地址的自动替换。
具体地,对象地址文件包含第一数据描述文件中的所有对象和真实物理地址参数,其中,参数物理地址与参数名在一行,属于固定格式。参数物理地址和参数名可以在一行的不同位置,即参数物理地址可以在参数名的前面也可以在参数名的后面。
本发明的具体实施例中,首先,读取对象地址文件;其次,生成一数组,将对象地址文件中的每个对象及对应的地址写入数组中对应的元素中;然后,读取数组中的第一个元素作为当前元素,并获取当前元素中的对象;进一步地,于第一数据描述文件中查找与对象对应的第一对象,并获取第一对象于第一数据描述文件中对应的第一地址;接着,以对象对应的地址对第一数据描述文件中的第一对象对应的第一地址进行替换;并且,判断当前元素是否为数组的最后一个元素;若是,则将完成第一地址替换的第一数据描述文件保存为一第二数据描述文件,并退出;若否,读取当前元素的下一个元素作为当前元素。
本发明的较佳的实施例中,如图2所示,步骤S2具体包括:
步骤S21,通过文件流控制对对象地址文件进行逐行读取;
步骤S22,控制文件流,读取一行对象地址文件;
步骤S23,通过正则表达式对对象地址文件中的对象和地址进行识别,并写入数组的当前元素中;
步骤S24,判断是否已读取到对象地址文件的最后一行;
若是,则将数组的指针指向第一元素,并退出;
如否,则控制文件流指针指向下一行,并返回步骤S22。
具体地,可以通过文件流控制对对象地址文件进行逐行读取。上述实施例中,首先,控制文件流读取一行对象地址文件;然后,通过perl语言的正则表达式识别对象地址文件中的对象和地址,并写入数组的当前元素中。
本发明的具体实施例中,在MATALB环境下使用perl调用命令,调用pl脚本,将需要替换的A2L文件和A2L头文件按行读取到pl脚本,并生成对应的字符串。进一步,判断是否已读取到A2L文件的最后一行;若是,则将数组的指针指向第一元素,并退出;如否,则控制文件流指针指向下一行,继续通过perl语言的正则表达式对A2L文件中的对象和地址进行识别。上述实施例中,在pl脚本中使用正则表达式匹配对象地址文件对应的字符串中以/*Name*/开始的行,并将/*Name*/行之后对应的参数名提出来,此时在数组中,通过参数名获取该参数名的地址。之后逐行向下继续匹配,匹配到以含有ECU_ADDRESS或者/*ECUAddress*/字符串的行,将含有ECU_ADDRESS或者/*ECUAddress*/字符串的行作为参数名地址的位置的初步判定。
本发明的较佳的实施例中,可以将识别出的对象和地址通过字符串拼接后写入数组的当前元素中;或者数组为二维数组,将识别出的对象和地址分别写入数组的当前元素对应的子元素中。
本发明的较佳的实施例中,提供一预先设定的地址范围,地址范围包括一地址上限和一地址下限;
如图3所示,步骤S5具体包括:
步骤S51,读取当前元素的对象对应的地址;
步骤S52,判断地址是否位于地址上限和地址下限限定的范围内;
若是,则转向步骤S53;
若否,则直接转向步骤S6;
步骤S53,对第一数据描述文件中的第一地址进行替换。
具体地,上述实施例中,判断ECU_ADDRESS或者/*ECUAddress*/字符串所在行是否存在0x0000或者0x字符串,这里并不局限于只有0x0000或者0x字符串标识符,可以是多个带有0x标识符集合,或者可以认定存放地址信息的标识符。将参数名对应的地址在数组中取出,并判断给地址是否在所设定的地址上下限范围内,如果在则完成地址替换,如果不在则跳过不进行地址替换。进而灵活实现参数地址范围替换,节省地址范围查找的时间。地址的替换不仅实现虚拟地址的替换,以及错误地址和地址正负偏移的替换。
进一步地,逐行读取的对象地址文件存放在pl脚本中的数组中,包含替换后的地址行,如数组@ArrayA2L。当所有的a2l行读取替换以后,将数组@ArrayA2L再连接成字符串,连接过程汇总在数组@ArrayA2L的每个元素后添加换行符,实现数组的换行连接。
进一步地,通过perl语言的流控制完成A2L文件的输出,A2L输出包括a2l头文件部分与替换参数地址后的A2L文件部分。其中A2L头部分删除指定信息,指定信息包含无用和重复信息,A2L头部分的格式自定义,A2L文件的头部分加载在A2L文件前部,A2L头文件和A2L文件在pl脚本中合并成新的字符串,通过流控制实现替换后的A2L文件输出。
本发明的较佳的实施例中,还包括对第二数据描述文件进行校验的过程;
如图4所示,具体包括以下步骤:
步骤A1,读取第二数据描述文件;
步骤A2,判断第二数据描述文件中的每个第一对象对应的第一地址是否为空;
若是,则于校验文件中记录第一错误提示信息,转向步骤A3;
若否,则直接转向步骤A3;
步骤A3,根据第一数据描述文件中每个第一对象对应的第一地址,判断第二数据描述文件中每个第一对象对应的第一地址是否未改变;
若是,则于校验文件中记录第二错误提示信息,转向步骤A4;
若否,则直接转向步骤A4;
步骤A4,输出校验文件,并完成校验。
具体地,首先读取替换后的A2L文件后在MATLAB环境下,以流控制的形式进行逐行读取,并形成字符串。其中流控制通过M语言的脚本实现;然后,判断a2l地址位置处是否为空或者地址未改变。使用M语言的正则表达式对字符串进行逐行匹配,如果匹配到关键字符串ECU_ADDRESS或者/*ECUAddress*/后没有信息或者是连续空格,则认为该位置处没有完成参数物理地址替换,如果存在则跳过;最后,提醒替换后的A2L文件是否替换正确:如果参数地址替换正确,则输出校验正确的提示字符;如果参数地址替换不正确,则在记录错误行,并将结果通过流控制输出TXT文本或者其他文本。
一种电子控制单元数据描述文件的地址替换系统,如图5所示,包括:
第一读取模块1,用于读取对象地址文件;
数组生成模块2,连接第一读取模块1,用于根据对象地址文件生成一数组,数组中的各个元素包括对象地址文件中的一个对象及对应的地址;
第一数组读取模块3,连接数组生成模块2,用于读取数组中的元素作为当前元素,并获取当前元素中的对象;
第二读取模块4,用于读取第一数据描述文件;
匹配模块5,分别连接第二读取模块4和第一数组读取模块3,用于对对象与第一数据描述文件中对应的第一对象进行匹配,输出匹配结果;
提取模块6,分别连接匹配模块5和第二读取模块4,用于根据匹配结果,对第一数据描述文件中第一对象对应的第一地址进行提取;
地址替换模块7,分别连接第一数组读取模块3、匹配模块5以及提取模块6,用于以对象对应的地址,对第一数据描述文件中的第一对象对应的第一地址进行替换;
判断模块8,连接第一数组读取模块3,用于判断当前元素是否为数组的最后一个元素;
保存模块9,连接判断模块8,用于将完成第一地址替换的第一数据描述文件保存为第二数据描述文件;
第二数组读取模块10,分别连接判断模块8和匹配模块5,用于读取当前元素的下一个元素作为当前元素,并获取当前元素中的对象。
具体地,首先,第一读取模块1读取对象地址文件后,由数组生成模块2根据对象地址文件生成一数组,数组中的各个元素包括对象地址文件中的一个对象及对应的地址,再通过第一数组读取模块3读取数组中的元素作为当前元素,并获取当前元素中的对象;然后,第二读取模块4读取第一数据描述文件后,匹配模块5对对象与第一数据描述文件中对应的第一对象进行匹配,输出匹配结果;接着,提取模块6根据匹配结果,对第一数据描述文件中第一对象对应的第一地址进行提取;进一步地,地址替换模块7以对象对应的地址,对第一数据描述文件中的第一对象对应的第一地址进行替换;接下来,判断模块8判断当前元素是否为数组的最后一个元素:如果当前元素是最后一个元素,那么保存模块9将完成第一地址替换的第一数据描述文件保存为第二数据描述文件;如果当前元素不是最后一个元素,那么第二数组读取模块10读取当前元素的下一个元素作为当前元素,并获取当前元素中的对象,继续由匹配模块5匹配后进行地址替换。
本发明的较佳的实施例中,如图6所示,数组生成模块2具体包括:
文件读取单元21,用于通过文件流控制对对象地址文件进行逐行读取;
识别单元22,连接文件读取单元21,用于通过正则表达式对对象地址文件中的对象和地址进行识别;
数组生成单元23,连接识别单元22,用于根据对象及对应的地址,生成数组;
判断单元24,连接文件读取单元21,用于对文件读取单元21是否已读取到对象地址文件的最后一行进行判断。
具体地,上述实施例中,文件读取单元21通过文件流控制对对象地址文件进行逐行读取;识别单元22通过正则表达式对对象地址文件中的对象和地址进行识别;数组生成单元23根据对象及对应的地址,生成数组;判断单元24对读取单元是否已读取到对象地址文件的最后一行进行判断:如果读取单元已经读取到对象地址文件的最后一行,那么输出数组;如果读取单元没有读取到对象地址文件的最后一行,那么继续读取对象地址文件的下一行。
本发明的较佳的实施例中,如图7所示,地址替换模块7具体包括:
地址读取单元71,用于读取当前元素的对象对应的地址;
第二判断单元7224,连接地址读取单元71,用于对地址是否位于地址上限和地址下限限定的范围内进行判断;
地址替换单元73,连接第二判断单元7224,用于对第一数据描述文件中的第一地址进行替换。
具体地,上述实施例中,地址读取单元71读取当前元素的对象对应的地址;第二判断单元7224对地址是否位于地址上限和地址下限限定的范围内进行判断:如果地址位于地址上限和地址下限限定的范围内,那么通过地址替换单元73对第一数据描述文件中的第一地址进行替换;如果地址没有处于地址上限和地址下限限定的范围内,那么地址替换单元73不对对第一数据描述文件中的第一地址进行替换。
本发明的较佳的实施例中,还包括替换校验模块,连接保存模块9,用于对第二数据描述文件的替换完成情况进行校验;
如图8所示,替换校验模块包括:
校验读取单元81,用于读取第二数据描述文件;
第一校验单元82,连接校验读取单元81,用于对第二数据描述文件中的每个第一对象对应的第一地址是否为空进行判断;
第二校验单元83,连接第一校验单元82,用于根据第一数据描述文件中每个第一对象对应的第一地址,判断第二数据描述文件中每个第一对象对应的第一地址是否未改变。
具体地,替换校验模块对第二数据描述文件的替换完成情况进行校验。首先,校验读取单元81读取第二数据描述文件;然后,第一校验单元82对第二数据描述文件中的每个第一对象对应的第一地址是否为空进行判断:如果第一地址为空,则输出第一错误提示到一个校验文件;如果第一地址不为空,那么第二校验单元83,根据第一数据描述文件中每个第一对象对应的第一地址,判断第二数据描述文件中每个第一对象对应的第一地址是否未改变:如果第一地址未改变,则输出第二错误提示到校验文件中,以完成校验;如果第一地址已经改变,则直接完成校验。
以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所做出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。
Claims (9)
1.一种电子控制单元数据描述文件的地址替换方法,其特征在于,提供一电子控制单元的对象地址文件和一第一数据描述文件;所述对象地址文件包括所述电子控制单元中的多个对象,以及与多个所述对象一一对应的地址;所述第一数据描述文件包括多个第一对象,以及与多个所述第一对象一一对应的第一地址;
还包括以下步骤:
步骤S1,读取所述对象地址文件;
步骤S2,生成一数组,将所述对象地址文件中的每个所述对象及对应的所述地址写入所述数组中对应的元素中;
步骤S3,读取所述数组中的第一个所述元素作为当前元素,并获取所述当前元素中的所述对象;
步骤S4,于所述第一数据描述文件中查找与所述对象对应的所述第一对象,并获取所述第一对象于所述第一数据描述文件中对应的所述第一地址;
步骤S5,以所述对象对应的所述地址对所述第一数据描述文件中的所述第一对象对应的所述第一地址进行替换;
步骤S6,判断所述当前元素是否为所述数组的最后一个所述元素;
若是,则将完成所述第一地址替换的所述第一数据描述文件保存为一第二数据描述文件,并退出;
若否,则转向所述步骤S7;
步骤S7,读取所述当前元素的下一个所述元素作为所述当前元素,并转向所述步骤S4。
2.如权利要求1所述的电子控制单元数据描述文件的地址替换方法,其特征在于,所述步骤S2具体包括:
步骤S21,通过文件流控制对所述对象地址文件进行逐行读取;
步骤S22,控制所述文件流,读取一行所述对象地址文件;
步骤S23,通过正则表达式对所述对象地址文件中的所述对象和所述地址进行识别,并写入所述数组的当前元素中;
步骤S24,判断是否已读取到所述对象地址文件的最后一行;
若是,则将所述数组的指针指向第一元素,并退出;
如否,则控制所述文件流指针指向下一行,并返回所述步骤S22。
3.如权利要求2所述的电子控制单元数据描述文件的地址替换方法,其特征在于,所述步骤S23中,将识别出的所述对象和所述地址通过字符串拼接后写入所述数组的所述当前元素中;或者
所述数组为二维数组,所述所述步骤S23中,将识别出的所述对象和所述地址分别写入所述数组的所述当前元素对应的子元素中。
4.如权利要求1所述的电子控制单元数据描述文件的地址替换方法,其特征在于,提供一预先设定的地址范围,所述地址范围包括一地址上限和一地址下限;
所述步骤S5具体包括:
步骤S51,读取所述当前元素的所述对象对应的所述地址;
步骤S52,判断所述地址是否位于所述地址上限和所述地址下限限定的范围内;
若是,则转向所述步骤S54;
若否,则直接转向所述步骤S6;
步骤S53,对所述第一数据描述文件中的所述第一地址进行替换。
5.如权利要求1所述的电子控制单元数据描述文件的地址替换方法,其特征在于,还包括对所述第二数据描述文件进行校验的过程;
具体包括以下步骤:
步骤A1,读取所述第二数据描述文件;
步骤A2,判断所述第二数据描述文件中的每个所述第一对象对应的所述第一地址是否为空;
若是,则于校验文件中记录第一错误提示信息,转向所述步骤A3;
若否,则直接转向所述步骤A3;
步骤A3,根据所述第一数据描述文件中每个所述第一对象对应的所述第一地址,判断所述第二数据描述文件中每个所述第一对象对应的所述第一地址是否未改变;
若是,则于所述校验文件中记录第二错误提示信息,转向所述步骤A4;
若否,则直接转向所述步骤A4;
步骤A4,输出所述校验文件,并完成校验。
6.一种电子控制单元数据描述文件的地址替换系统,其特征在于,应用如权利要求1-5中任意一项所述的电子控制单元数据描述文件的地址替换方法;所述地址替换系统包括:
第一读取模块,用于读取所述对象地址文件;
数组生成模块,连接所述第一读取模块,用于根据所述对象地址文件生成一数组,所述数组中的各个元素包括所述对象地址文件中的一个所述对象及对应的所述地址;
第一数组读取模块,连接所述数组生成模块,用于读取所述数组中的所述元素作为所述当前元素,并获取所述当前元素中的所述对象;
第二读取模块,用于读取所述第一数据描述文件;
匹配模块,分别连接所述第二读取模块和所述第一数组读取模块,用于对所述对象与所述第一数据描述文件中对应的所述第一对象进行匹配,输出匹配结果;
提取模块,分别连接所述匹配模块和所述第二读取模块,用于根据所述匹配结果,对所述第一数据描述文件中所述第一对象对应的所述第一地址进行提取;
地址替换模块,分别连接所述第一数组读取模块、所述匹配模块以及所述提取模块,用于以所述对象对应的所述地址,对所述第一数据描述文件中的所述第一对象对应的所述第一地址进行替换;
判断模块,连接所述数组读取模块,用于判断所述当前元素是否为所述数组的最后一个所述元素;
保存模块,连接所述判断模块,用于将完成所述第一地址替换的所述第一数据描述文件保存为所述第二数据描述文件;
第二数组读取模块,分别连接所述判断模块和所述匹配模块,用于读取所述当前元素的下一个所述元素作为所述当前元素,并获取所述当前元素中的所述对象。
7.如权利要求6所述的电子控制单元数据描述文件的地址替换系统,其特征在于,
所述数组生成模块具体包括:
文件读取单元,用于通过文件流控制对所述对象地址文件进行逐行读取;
识别单元,连接所述读取单元,用于通过正则表达式对所述对象地址文件中的所述对象和所述地址进行识别;
数组生成单元,连接所述识别单元,用于根据所述对象及对应的所述地址,生成所述数组;
判断单元,连接所述读取单元,用于对所述读取单元是否已读取到所述对象地址文件的最后一行进行判断。
8.如权利要求6所述的电子控制单元数据描述文件的地址替换系统,其特征在于,所述地址替换模块具体包括:
地址读取单元,用于读取所述当前元素的所述对象对应的所述地址;
第二判断单元,连接所述地址读取单元,用于对所述地址是否位于所述地址上限和所述地址下限限定的范围内进行判断;
地址替换单元,连接所述第二判断单元,用于对所述第一数据描述文件中的所述第一地址进行替换。
9.如权利要求6所述的电子控制单元数据描述文件的地址替换系统,其特征在于,还包括替换校验模块,连接所述保存模块,用于对所述第二数据描述文件的替换完成情况进行校验;
所述替换校验模块包括:
校验读取单元,用于读取所述第二数据描述文件;
第一校验单元,连接所述校验读取单元,用于对所述第二数据描述文件中的每个所述第一对象对应的所述第一地址是否为空进行判断;
第二校验单元,连接所述第一校验单元,用于根据所述第一数据描述文件中每个所述第一对象对应的所述第一地址,判断所述第二数据描述文件中每个所述第一对象对应的所述第一地址是否未改变。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811585097.1A CN109696904A (zh) | 2018-12-24 | 2018-12-24 | 一种电子控制单元数据描述文件的地址替换方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811585097.1A CN109696904A (zh) | 2018-12-24 | 2018-12-24 | 一种电子控制单元数据描述文件的地址替换方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109696904A true CN109696904A (zh) | 2019-04-30 |
Family
ID=66232733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811585097.1A Pending CN109696904A (zh) | 2018-12-24 | 2018-12-24 | 一种电子控制单元数据描述文件的地址替换方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109696904A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262289A (zh) * | 2019-07-18 | 2019-09-20 | 潍柴动力股份有限公司 | A2l文件中变量的处理方法、装置和存储介质 |
CN114153706A (zh) * | 2020-09-08 | 2022-03-08 | 福建天泉教育科技有限公司 | 一种iOS应用启动时执行load方法的耗时检测方法及终端 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR950004803A (ko) * | 1993-07-08 | 1995-02-18 | 양승택 | 다단 룩업테이블에 의한 가상채널 변환회로 |
CN103136211A (zh) * | 2011-11-23 | 2013-06-05 | 北汽福田汽车股份有限公司 | 一种a2l文件的自动生成方法和装置 |
CN104850570A (zh) * | 2014-08-29 | 2015-08-19 | 北汽福田汽车股份有限公司 | A2l文件自动生成方法及系统 |
JP2016045885A (ja) * | 2014-08-26 | 2016-04-04 | Kddi株式会社 | 記憶装置、方法及びプログラム |
CN106776633A (zh) * | 2015-11-23 | 2017-05-31 | 上海极能客车动力系统有限公司 | 用户可配置的自动生成a2l文件的装置和方法 |
CN107463401A (zh) * | 2017-07-31 | 2017-12-12 | 北京新能源汽车股份有限公司 | 变量读写文件的生成方法、装置及计算机可读存储介质 |
-
2018
- 2018-12-24 CN CN201811585097.1A patent/CN109696904A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR950004803A (ko) * | 1993-07-08 | 1995-02-18 | 양승택 | 다단 룩업테이블에 의한 가상채널 변환회로 |
CN103136211A (zh) * | 2011-11-23 | 2013-06-05 | 北汽福田汽车股份有限公司 | 一种a2l文件的自动生成方法和装置 |
JP2016045885A (ja) * | 2014-08-26 | 2016-04-04 | Kddi株式会社 | 記憶装置、方法及びプログラム |
CN104850570A (zh) * | 2014-08-29 | 2015-08-19 | 北汽福田汽车股份有限公司 | A2l文件自动生成方法及系统 |
CN106776633A (zh) * | 2015-11-23 | 2017-05-31 | 上海极能客车动力系统有限公司 | 用户可配置的自动生成a2l文件的装置和方法 |
CN107463401A (zh) * | 2017-07-31 | 2017-12-12 | 北京新能源汽车股份有限公司 | 变量读写文件的生成方法、装置及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
刘向 等: "应用XCP协议实现ECU BYPASS技术", 《应用XCP协议实现ECU BYPASS技术》 * |
齐政亮: "基于CCP协议的燃气发动机标定系统研究", 《中国优秀硕士学位论文全文数据库 工程科技II辑》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262289A (zh) * | 2019-07-18 | 2019-09-20 | 潍柴动力股份有限公司 | A2l文件中变量的处理方法、装置和存储介质 |
CN110262289B (zh) * | 2019-07-18 | 2022-04-26 | 潍柴动力股份有限公司 | A2l文件中变量的处理方法、装置和存储介质 |
CN114153706A (zh) * | 2020-09-08 | 2022-03-08 | 福建天泉教育科技有限公司 | 一种iOS应用启动时执行load方法的耗时检测方法及终端 |
CN114153706B (zh) * | 2020-09-08 | 2024-07-30 | 福建天泉教育科技有限公司 | 一种iOS应用启动时执行load方法的耗时检测方法及终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109086199B (zh) | 一种自动化生成测试脚本的方法、终端和可存储介质 | |
CN110457868B (zh) | Fpga逻辑综合的优化方法及装置、系统 | |
CN105868171B (zh) | 一种Excel文件的校验方法及装置 | |
EP3454256A1 (en) | Method and device for verifying recognition result in character recognition | |
CN107680591A (zh) | 基于车载终端的语音交互方法、装置及其设备 | |
CN109696904A (zh) | 一种电子控制单元数据描述文件的地址替换方法及系统 | |
CN103140889A (zh) | 语音转换装置、便携电话终端、语音转换方法和记录介质 | |
CN105354236A (zh) | 一种对账信息生成方法及系统 | |
CN110134343A (zh) | 云打印大文档快速打印的方法 | |
CN114371391B (zh) | 多参数霍尔集成电路高低温测试方法、装置及存储介质 | |
CN109978430A (zh) | 一种解析用户地址的方法、装置、服务器及存储介质 | |
CN106855835B (zh) | 一种基于xml技术的飞控系统上电启动自检测方法 | |
CN117667979B (zh) | 基于大语言模型的数据挖掘方法、装置、设备及介质 | |
CN106649293A (zh) | 一种翻译方法及系统 | |
CN106934918A (zh) | 利用基本语料库辅助进行票据字符识别的方法和装置 | |
CN116186310B (zh) | 一种融合ai通用助手的ar空间标注及展示方法 | |
CN108664505A (zh) | 一种数据库表结构的导出方法及装置 | |
CN105488271B (zh) | 一种油气模块型钢自动匹配方法 | |
CN116798053A (zh) | 图标生成方法及装置 | |
CN107220381B (zh) | 一种面向问答系统的输入文本自动纠错方法 | |
CN106776275A (zh) | 一种基于分组复用的测试流程自动生成方法 | |
CN103310002B (zh) | 用于气象预报计算系统MM5的Web服务封装方法以及系统 | |
CN112926136B (zh) | 一种船体水尺建模系统及方法 | |
CN115758963A (zh) | 芯片eda仿真中打印信息的处理装置、方法及系统 | |
CN103309993B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190430 |