Vector工具录制的数据,一般有ASC和BLF两种格式,本文介绍ASC。
1. ASC定义
ASC(ASCII)即文本文件,数据已可视化的文本存储。
2.ASC查看
通常情况下,用记事本就可以打开。但文本文件占用空间大,而且车辆CAN通道越来越多,1个小时的数据可以超过1G,普通记事本或开源软件(如notepad++)已经无法打开。推荐使用UltraEdit。
当然,使用CANalyzer/CANoe等回放数据才是最正确的方式。
3.ASC组成
安装完Vector软件后,可以在DocLoggingFormat_ASCII目录下看到《CAN_LOG_TRIGGER_ASC_Format.pdf》。此文档详细说明了ASC内容。
1)示例
2)CAN Message Event
重点看一下CAN Message Event,这也是ASC文件的主要部分
从左到右一次是:时间戳、CAN通道编号、帧ID(16进制)、帧方向(发送或接收)、d。之后跟的DLC、数据。
4.ASC解析
1)读取方式
因ASC文件会有千万行以上的规模,因此选择效率最高的方式,至关重要。推荐使用ReadLine,每次读一行的形式。
2)取值
正则表达式(Regular Expression)是处理文本的好工具,多语言都支持。
取出所有非空格的字符串:(S+)
输入:2.5009 1 64 Tx d 8 00 01 02 03 04 05 06 07
输出:
(回复“ASCI例子”获取)
3)解析
从ASC中获取CAN数据后,阅读本公众号DBC的文章,就可以了。