#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#include <time.h>
#include <windows.h>
//globale Variablen definieren
volatile DF;
volatile Wa_Tp;
/*************Lesefunktionen***********************/
void rdpm1() //Durchfluss
{
DF=54; //hier wird der Wert gelesen
}
void rdpm2() //Wassertemperatur
{
Wa_Tp=23;
}
/******************LOG-Funktion********************/
void LOG()
{
//Funktion für die Uhrzeit
struct tm *Zeit;
long Jetzt;
time(&Jetzt);
Zeit = localtime(&Jetzt);
//erstmal die Messwerte und andere Zahlen in Zeichenketten umwandeln...
//1. Durchfluss
char Durchfluss[20]; //String
sprintf(Durchfluss,"%d",DF); //Umwandlung
printf("Durchfluss: %s\n",Durchfluss); //Ausgabe
//2. Wassertemperatur
char Wassertemperatur[20];
sprintf(Wassertemperatur,"%d",Wa_Tp);
printf("Wassertemperatur: %s\n",Wassertemperatur);
//3. Datum
char Jahr[20];
char Monat[20];
char Tag[20];
sprintf(Jahr,"%d",Zeit->tm_year + 1900);
sprintf(Monat,"%d",Zeit->tm_mon + 1);
sprintf(Tag,"%d",Zeit->tm_mday);
//4. Uhrzeit
char Stunde[20];
char Minute[20];
char Sekunde[20];
sprintf(Stunde,"%d",Zeit->tm_hour);
sprintf(Minute,"%d",Zeit->tm_min);
sprintf(Sekunde,"%d",Zeit->tm_sec);
//...dann Dateistream öffnen
FILE *f;// Dateistream definieren (Pointer)
f = fopen(".\\data\\LOG.txt","w"); //LOG Datei wird geöffnet
if(f==NULL) //falls die Datei nicht geöffnet werden kann...
{
printf("Streaming Error\n");
system("pause");
}
//...dann Zeichenketten in die LOG Datei schreiben
fputs("\nMesswertaufzeichnung:\n\n", f);
fputs("Datum:\n",f);
fputs(Tag,f);
fputs(".",f);
fputs(Monat,f);
fputs(".",f);
fputs(Jahr,f);
fputs("\n\nUhrzeit:\n",f);
fputs(Stunde,f);
fputs(":",f);
fputs(Minute,f);
fputs(":",f);
fputs(Sekunde,f);
fputs(":",f);
fputs("\n\n\nDurchfluss: ",f);
fputs(Durchfluss,f);
fputs("\nWassertemperatur: ",f);
fputs(Wassertemperatur,f);
fputs("\n",f);
}
/*********************main*************************/
int main(int argc, char *argv[])
{
//erst einmal LCD Hype starten... (im Hintergrund)
ShellExecute(NULL,"open","C:\\Program Files (x86)\\LCDHype\\lcdhype.exe",NULL,NULL,SW_HIDE);
printf("\nControlCenter\n");
printf("Datenerfassungssystem\n\n\n");
//...dann die Funktionen ausführen
rdpm1(); //Durchfluss
rdpm2(); //Wassertemperatur
//hier kommt noch eine Schleife hin {}
LOG(); //LOG
system("pause");
return 0;
}