L-Card | Личная страница Алексея Лапина | Форматы файлов программы L-Graph

Форматы файлов программы 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.

На  мою личную страницу На страницу фирмы