一种DBC信号导出起始位格式转换方法及系统技术方案

技术编号:34007170 阅读:42 留言:0更新日期:2022-07-02 13:41
本发明专利技术公开了一种DBC信号导出起始位格式转换方法及系统。该方法包括:提取DBC文件中的数据信息,获得起始位、字节长度和字节顺序;判断字节顺序对应的信号格式;在字节顺序为Intel格式时,根据定义的文本格式规范,将最低信号位LSB的数值导入Excel表格中;在字节顺序为Motorola格式时,根据定义的文本格式规范,获取文本格式中的最高信号位MSB,将MSB计算转换为最低信号位LSB后,将LSB的数值导入Excel表格中。本发明专利技术将DBC文本格式中的Motorola格式信号起始位准确地计算转换为CANDB++中的起始位导入Excel表格中,使得导入的起始位即为设计所需。设计所需。设计所需。

【技术实现步骤摘要】
一种DBC信号导出起始位格式转换方法及系统


[0001]本专利技术属于汽车数据库开发
,更具体地,涉及一种DBC信号导出起始位格式转换方法及系统。

技术介绍

[0002]DBC文件是描述CAN网络节点间的数据通讯的文件,.dbc文件是一个ASCII格式的文件,其.dbc扩展名可用于定义CAN网络。汽车网络开发过程中,离不开DBC数据库,为了方便查看DBC中的通讯矩阵信息,需要将现有的DBC导入Excel表格。目前有很多DBC导入工具,有的采用EXCEL VBA,有的采用Python,这些导入工具在转换过程中都会面临Motorola格式信号起始位CANDB++格式中与文本格式中不同的问题,很多工具都会直接将文本格式中的起始位导入Excel表格中,导致导入的起始位非设计值,再根据CANDB++中起始位调整Excel表格导入值,这样导致了在导入Excel后还需进行人工操作,花费大量时间及增加出错可能,最终导致分析时信号判断错误。

技术实现思路

[0003]针对现有技术的以上缺陷或改进需求,本专利技术提供了一种DBC信号导出起始位格式转换方法及系统,能有效解决现有DBC信号导出转换Motorola格式信号时出现的CANDB++格式起始位与文本格式定义起始位不同的问题,生成正确的Excel表格文件。
[0004]为实现上述目的,按照本专利技术的一个方面,提供了一种DBC信号导出起始位格式转换方法,包括:提取DBC文件中的数据信息,获得起始位、字节长度和字节顺序;判断字节顺序对应的信号格式;在字节顺序为Intel格式时,根据定义的文本格式规范,将最低信号位LSB的数值导入Excel表格中;在字节顺序为Motorola格式时,根据定义的文本格式规范,获取文本格式中的最高信号位MSB,将MSB计算转换为最低信号位LSB后,将LSB的数值导入Excel表格中。
[0005]在一些实施方式中,将MSB计算转换为最低信号位LSB具体为:根据MSB判断信号所在字节,再根据信号长度Bitlen判断出LSB所在字节,得到LSB所在字节的最大BIT位LSB(Max);根据信号的MSB计算MSB所在字节的信号占用长度N(MSB)以及非MSB与LSB所在字节的信号占用长度N(Other),得到LSB所在字节需要占用的剩余BIT位R;根据LSB所在字节的最大BIT位LSB(Max)以及LSB所在字节需要占用的剩余BIT位R,计算得到LSB。
[0006]在一些实施方式中,LSB所在字节需要占用的剩余BIT位R=Bitlen
ꢀ‑
N(MSB)

N(Other),计算得到LSB= LSB(Max)+1

R。
[0007]在一些实施方式中,该方法还包括:定义文本格式规范为:起始位| 字节长度 @ 字节顺序。
[0008]在一些实施方式中,起始位为最低信号位LSB或者最高信号位MSB,字节顺序对应Intel格式或者Motorola格式。
[0009]在一些实施方式中,首先判断字节顺序是否为Intel格式,在判定字节顺序不是
Intel格式时,进一步判断字节顺序是否为Motorola格式。
[0010]在一些实施方式中,在判定字节顺序不是Motorola格式时,判定DBC文件中数据信息的字节格式异常,并报错。
[0011]根据本专利技术的另一方面,提供了一种DBC信号导出起始位格式转换系统,包括:文件信息提取模块,提取DBC文件中的数据信息,获得起始位、字节长度和字节顺序;格式判断模块,用于判断字节顺序对应的信号格式;写入模块,用于根据信号格式及文本格式的写入规范,向Excel表格中导入对应的内容。
[0012]在一些实施方式中,写入模块用于在格式判断模块判断信号格式为Intel格式时,根据定义的文本格式规范,将LSB的数值导入Excel表格中的起始位栏内。
[0013]在一些实施方式中,该系统还包括计算模块,用于在格式判断模块判断信号格式为Motorola格式时,根据定义的文本格式规范,将MSB通过计算转为LSB。
[0014]在一些实施方式中,计算模块具体通过如下方式计算得到LSB:根据MSB判断信号所在字节,再根据信号长度Bitlen判断出LSB所在字节,得到LSB所在字节的最大BIT位LSB(Max);根据信号的MSB计算MSB所在字节的信号占用长度N(MSB)以及非MSB与LSB所在字节的信号占用长度N(Other),得到LSB所在字节需要占用的剩余BIT位R;根据LSB所在字节的最大BIT位LSB(Max)以及LSB所在字节需要占用的剩余BIT位R,计算得到LSB。
[0015]在一些实施方式中,写入模块还用于在格式判断模块判断信号格式为Motorola格式时,根据定义的文本格式规范,将计算模块计算得到的LSB填入Excel表格中的起始位栏内。
[0016]在一些实施方式中,该系统还包括提示模块,用于在格式判断模块判定字节顺序既不是Intel格式,又不是Motorola格式时,判定DBC文件中数据信息的字节格式异常,并报错。
[0017]根据本专利技术的又一方面,提供了一种车辆,包括上述DBC信号导出起始位格式转换系统。
[0018]根据本专利技术的又一方面,提供了一种电子设备,包括:处理器;与处理器通信连接的存储器;存储器存储有可被处理器执行的指令,指令被处理器执行,以使处理器能够执行上述方法。
[0019]根据本专利技术的又一方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令被处理器执行时实现上述方法。
[0020]总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,具有以下有益效果:将DBC文本格式中的Motorola格式信号起始位准确地计算转换为CANDB++中的起始位导入Excel表格中,使得导入的起始位即为设计所需。
附图说明
[0021]图1是Intel格式信号在CANDB++中打开时的示意图;图2是Motorola格式信号在CANDB++中打开时的示意图;图3是本专利技术实施例的DBC信号导出起始位格式转换方法流程图;图4是本专利技术一实施例的电子设备的结构框图。
具体实施方式
[0022]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。正如本领域技术人员可以认识到的那样,在不脱离本申请的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
[0023]无论是Motorola格式还是Intel格式,在CANDB++中打开的DBC文件起始位都为最低位(LSB),如图1和图2所示,Intel格式和Motorola格式均为起始位30、信号长度为24 Bit的信号。而在文本格式中,Intel格式定义的起始位为最低信号位(LSB),Moto本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种DBC信号导出起始位格式转换方法,其特征在于,包括:提取DBC文件中的数据信息,获得起始位、字节长度和字节顺序;判断字节顺序对应的信号格式;在字节顺序为Intel格式时,根据定义的文本格式规范,将最低信号位LSB的数值导入Excel表格中;在字节顺序为Motorola格式时,根据定义的文本格式规范,获取文本格式中的最高信号位MSB,将MSB计算转换为最低信号位LSB后,将LSB的数值导入Excel表格中。2.如权利要求1所述的DBC信号导出起始位格式转换方法,其特征在于,所述将MSB计算转换为最低信号位LSB具体为:根据MSB判断信号所在字节,再根据信号长度Bitlen判断出LSB所在字节,得到LSB所在字节的最大BIT位LSB(Max);根据信号的MSB计算MSB所在字节的信号占用长度N(MSB)以及非MSB与LSB所在字节的信号占用长度N(Other),得到LSB所在字节需要占用的剩余BIT位R;根据LSB所在字节的最大BIT位LSB(Max)以及LSB所在字节需要占用的剩余BIT位R,计算得到LSB。3.如权利要求2所述的DBC信号导出起始位格式转换方法,其特征在于,LSB所在字节需要占用的剩余BIT位R=Bitlen
ꢀ‑
N(MSB)

N(Other),计算得到LSB= LSB(Max)+1

R。4.如权利要求1所述的DBC信号导出起始位格式转换方法,其特征在于,还包括:定义文本格式规范为:起始位| 字节长度 @ 字节顺序。5.如权利要求4所述的DBC信号导出起始位格式转换方法,其特征在于,起始位为最低信号位LSB或者最高信号位MSB,字节顺序对应Intel格式或者Motorola格式。6.如权利要求1至5中任一项所述的DBC信号导出起始位格式转换方法,其特征在于,首先判断字节顺序是否为Intel格式,在判定字节顺序不是Intel格式时,进一步判断字节顺序是否为Motorola格式。7.如权利要求6所述的DBC信号导出起始位格式转换方法,其特征在于,在判定字节顺序不是Motorola格式时,判定DBC文件中数据信息的字节格式异常,并报错。8.一种DBC信号导出起始位格式转换系统,其特征在于,包括:文件信息提取模块,提取DBC文件中的数据信息...

【专利技术属性】
技术研发人员:殷婷婷
申请(专利权)人:智己汽车科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1