您现在的位置是:首页 >技术杂谈 >Python解析CANoe录制的blf文件&asc文件通用方法网站首页技术杂谈

Python解析CANoe录制的blf文件&asc文件通用方法

码上寒山石径斜 2023-06-09 00:00:03
简介Python解析CANoe录制的blf文件&asc文件通用方法

Python解析CANoe录制的blf文件&asc文件通用方法

一、背景

    由于很多时候我们在录制日志文件的时候更愿意选择BLF文件,至少目前我见到的很多公司都是使用的BLF文件来作为最后的日志文件,相比较ASC文件,BLF文件属于二进制文件,所以没有办法通过文本编辑器直接读写,所以本文章介绍了如何解析blf文件的方法,便于后面自己使用的时候能有地方可以回顾,但是在解析过程中,发现can库提供了接口方式,解析出来的内容也是相同的结构,所以就把两种解析放在一起做了,发现是没有什么问题的。

二、了解文件的结构

  • 在这里推荐一篇文章介绍的比较细致,点击直达

  • 在我的解析文件中,我只关注了以下属性:

    • CAN报文类型(CAN还是CANFD)
    • 录制时报文所在的通道
    • 报文id
    • 报文方向(外发还是接受)
    • 报文长度
    • 时间戳-报文byte数据(字典)

三、代码主要的架构

  • 定义message类,类成员有(二)中提到的关心的属性;
  • 定义一个key为报文id,value为message类的字典,将所有解析出来的报文放在这个字典中;
  • 解析报文,按照CAN
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。