Формат Trace файлов

На данный момент формат заголовка файла следующий:
Строка 1: @ <Format, always TEXT> @ <Version, always 2> @ <System, 32 or 64> @ <Devices count, always 1> @ <RowCount> @ <Time in ms> @ <Time hh:mm:ss.zzz> @
Строка 2: # <Device GUID> # <Device name> # <Source> # <Source bitrate code> # <Channel 1 alias>,<Channel 2 alias> # <Channel 1 bitrace code>,<Channel 2 bitrate code> #
Строка N: <TimeStamp>TAB<Channel>TAB<Flags>TAB<MsgID>TAB<DLC>TAB<Data>TAB<CRC>TAB<ASCII>TAB<Comment>

Теперь рассмотрим детально с имеющимися данными из вашего файла.

Строка 1: @ TEXT @ 2 @ 64 @ 1 @ 3008 @ 82453 @ 00:01:22.453 @

Поле Описание Значение из лога
Format Формат данных представленных в логе. На данный момент оставлен только TEXT TEXT
Version Версия формата лога. Текущая 2 2
System В какой системе сделан лог, 32-битной или 64-битной. Просто информационное поле 64
Device count Количество устройств, участвовавших в формировании лога. Обязательно 1 1
RowCount Количество строк с данными из шины в логе – в этом поле ошибка, после описания формата поясню почему 3008
Time in ms Информационное поле, в котором отмечен интервал времени в мс, за который снят лог. Можно задать 0 82453
Time Информационное поле, в котором отмечен интервал времени, за который снят лог. Можно задать 00:00:00 00:01:22.453

Строка 2: # 3b3acd90-7172-4232-9c72-1d5128281f99 # CAN-Hacker v3.x # COM3 # 2 # 1,2 # 8,10 #
Если у нас в логе данные только с одного канала, то эту строку можно удалить.

Поле Описание Значение из лога
Device GUID Внутренний идентификатор устройства, с помощью которого снимались данные с шины 3b3acd90-7172-4232-9c72-1d5128281f99
Device name Информационное поле с названием использованного устройства CAN-Hacker v3.x
Source Информационное поле с источником данных COM3
Source baudrate Информационное поле с идентификатором скорости взаимодействия с источником данных 2
Channel alias Список текстовых алиасов для каналов. Информационное поле 1,2
Channel baudrate Информационное поле с идентификатором скорости взаимодействия с шиной 8,10

Строка N: Столбцы в данных должны быть разделены символом табуляции.

Поле Описание
TimeStamp Временная метка, полученная от CAN-Hacker. Разделена на 2 части, разделенные символом “,” (запятая). Первая часть, значение в секунда. Вторая часть, значение в мс
Channel Логический номер канала
Flags Битовые флаги с видом данных
* 0001 – 29-bit
* 0002 – Error
* 0004 – CAN
* 0008 – RTR
* 0010 – зарезервировано
* 0020 – BRS
* и другие
MsgID Шестнадцатеричный идентификатор сообщения
DLC Длина сообщения 0-8
Data Шестнадцатеричное представление байтов данных с разбивкой пробелами
CRC Контрольная сумма. Используется для данных из LIN-шины
ASCII Текстовое представление данных. В разборе данных не участвует.
Comment Комментарий к записи в логе