10.2.8.Serial Protocol 3.0
This version utilizes a new approach to record transmitting:
It sends the INIT package, where instrument and PC should establish the communication.
nterpret the binary data
using the descriptors in the XML file.
typedef struct _DateTime
{
unsigned minute : 6; // 0..59 (64 = 2^6 : 6 bits)
unsigned hour : 5; // 0..23 (32 = 2^5 : 5 bits)
unsigned day : 5; // 1..31 (32 = 2^5 : 5 bits)
unsigned month : 4; // 1..12 (16 = 2^4 : 4 bits)
unsigned year : 12; // 0..4095 (4096 = 2^12 : 12 bits)
} DateTime;
#define MaxParams 23
struct TMeasData
{
WORD RecNo; // 2 bytes
DateTime TimeStamp; // 4 bytes
WORD OperatorID; // 2 bytes
char SampleID[8]; // 8 bytes
char PatientID[20]; // 20 bytes
char Name[32]; // 32 bytes
DateTime BirthDate; // 4 bytes
BYTE Sex; // 1 byte
char Doctor[16]; // 16 bytes
float LimitsLow[MaxParams];// 23 * 4 = 92 bytes
float LimitsHigh[MaxParams];// 23 * 4 = 92 bytes
char PatTypeName[20]; // 20 bytes
WORD VetMode; // 2 bytes
BYTE HistoRBC[256]; // 256 bytes
BYTE HistoPLT[256]; // 256 bytes
BYTE HistoWBC[256]; // 256 bytes
BYTE PLTlo; // 1 byte
BYTE PLThi; // 1 byte
BYTE RBClo; // 1 byte
BYTE WBClo; // 1 byte
BYTE LYMhi; // 1 byte
BYTE GRAlo; // 1 byte
float Param[MaxParams]; // 23 * 4 = 92 bytes
BYTE Flag[MaxParams]; // 23 * 1 = 23 bytes
DWORD Warning; // 4 bytes
float Lyse; // 4 bytes
float Lyse_2; // 4 bytes
WORD Options; // 2 bytes
WORD PrVMinW; // 2 bytes
WORD PrVMaxW; // 2 bytes
WORD PrVMinR; // 2 bytes
WORD PrVMaxR; // 2 bytes
WORD PrVMinW2; // 2 bytes
WORD PrVMaxW2; // 2 bytes
BYTE Age; // 1 byte
char ClogReport[29]; // 29 bytes
// Total: 1240 bytes
};