12
Comunicación de datos
Ejemplos de códigos del registrador de datos
rest = z % 10;
// Recortar decimales
z = z / 10;
// Calcular enteros y copiar
for (i = 0; i < 12; i++){
// Calcular valor
a[i] = z%10+0x30;
// Reducir valor prescrito
z = z/10;
// ¿Número completamente copiado?
if (z == 0) break;
}
for ( ; i >= 0; i--)b[l++] = a[i];
// Calcular y copiar decimales
b[l++] = ',';
// Calcular valor
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,
// Escribir la línea titular del fichero
WriteFile (FileHandle, „Date;Time;Comment;Temp Act.;CO2 Act.;O2
Act.;rH Act.;Temp Set;CO2 Set;O2 Set;rH Set;\n", 85);
// Ciclo infinito
while (1)
{
// Poner el registrador de datos en comienzo y leer
if (!GetTele) {
send_telegramm („2400");
}
else{
// Leer otros grupos de datos
send_telegramm („2401");
}
len = get_telegramm (buffer);
// Ningún telegrama recibido
S
i160 LK / i250 LK
TERI-CYCLE
12-18
Thermo Scientific