Форматы файлов программы L-Graph
Файл "*.dat" содержит последовательность собранных отсчетов (по-кадрово) в бинарном виде.
Каждый отсчет имеет размер SHORT (16 бит).
Формат файла "*.par" имеет следующий вид (Borland Builder 4.0):
#pragma pack(1)
struct PARS_OF_WRITE_FILE
{
char Code[20]; // 20 байт - "2571090,1618190 "
char PlataName[17]; // 17 байт - название платы
char TimeString[26]; // 26 байт - число и время завершения ввода данных
WORD ChannelsMax; // 2 байта - общее число каналов для выбранной платы
WORD RealChannelsQuantity; // 2 байта - число введенных (активных) каналов
int RealKadrsQuantity; // 4 байта - число собранных кадров
// в формате 'int' ( < 2.147.483.648)
int RealSamplesQuantity; // 4 байта - число собранных отсчетов
// в формате 'int' (<2.147.483.648)
double TotalTime; // 8 байта - время ввода в cекундах в формате 'DOUBLE'
float AdcRate; // 4 байта - частота АЦП в кГц в формате 'FLOAT'
float InterkadrDelay; // 4 байта - межкадровая задержка в млс в формате 'FLOAT'
float ChannelRate; // 4 байта - частота сбора данных с одного канала в кГц
// в формате 'FLOAT'
bool ActiveAdcChannelArray[32]; // 1байт*32 - массив, каждый элемент которого
// равен нулю или единице, единичное значение
// соответствует тому, что данный вход активен
BYTE AdcChannelArray[32]; // 1байт*32 - массив, каждый элемент которого
// равен номеру канала АЦП для соответствующего входа
BYTE AdcGainArray[32]; //1байт*32 - массив, каждый элемент которого
// равен индексу коэффициенту усиления (0,1,2 или 3)
BYTE IsSignalArray[32]; //1байт*32 - массив, каждый элемент которого
// которого равен нулю или единице, единичное значение
// соответствует тому, что данный канал был заземлен на плате
};
#pragma pack()
Cуществует простенькая досовская конвертилка (Borland C++ 3.1) из бинарного файла "*.dat" в обычный текстовый файл ASCII (с учетом информации из "*.par"). Исходники этой программы находятся здесь: convert1.arj и здесь: convert1.zip.