12
Datacommunicatie
Code-voorbeelden datalogger
rest = z % 10;
// cijfer na de komma afsnijden
z = z / 10;
// getal vóór de komma berekenen en kopiëren
for (i = 0; i < 12; i++){
// waarde berekenen
a[i] = z%10+0x30;
// aangegeven waarde verkleinen
z = z/10;
// getal compleet gekopieerd?
if (z == 0) break;
}
for ( ; i >= 0; i--)b[l++] = a[i];
// getal na de komma berekenen en kopiëren
b[l++] = ',';
// waarde berekenen
b[l++] = rest%10+0x30;
return (l);
}
read_datalogger
int read_datalogger ()
{
#define SIZE_DATA2 16
#define EVENT_STATUS 0x01
unsigned char buffer[300], string [300];
unsigned char zahlenstring [150], datestring, timestring;
unsigned char excelstring [150];
unsigned char len, h,i;
unsigned int read_count,status;
#define EVENT_DATA.END 0xFF
char data;
int GetTele = 0
GetError = 0,
// schrijven van de titelregel in het bestand
WriteFile (FileHandle, „Date;Time;Comment;Temp Act.;CO2 Act.;O2
Act.;rH Act.;Temp Set;CO2 Set;O2 Set;rH Set;\n", 85);
// eindeloze lus
while (1)
{
// datalogger op aanvang zetten en lezen
if (!GetTele) {
send_telegramm („2400");
}
else{
// overige datasets lezen
send_telegramm („2401");
}
len = get_telegramm (buffer);
// geen telegram ontvangen
12-18
HERA
CELL VIOS
160i LK / 250i LK
Thermo Scientific