?
**@all Danke es hat geklappt
Habe aber ein neues Problem:**
Ich programmiere ein Programm welches über die Com-Schnittstelle Daten von einer Wetterstation (von ELV - www.elv.de) empfängt.
Gesendet wird mit: 19200 Baud, 8 Bit, ungerade Parität und 2 Stopp-Bit
Hier ist das Datenprotokoll: http://www.elv-downloads.de/service/manuals/PC-WS-Testempfaenger/39061-PC-WS-Testempfaenger.pdf
Also habe ich erstmal den Port geöffnet ....
DCB dcb;
hCom = CreateFile ("Com1",GENERIC_READ,0,NULL,OPEN_EXISTING,0,NULL);
dcb.DCBlength = sizeof (DCB);
GetCommState (hCom,&dcb);
dcb.BaudRate=9600;
dcb.ByteSize=8;
dcb.Parity=NOPARITY;
dcb.StopBits=ONESTOPBIT;
SetCommState (hCom, &dcb);
if (hCom == INVALID_HANDLE_VALUE) // hat es geklappt? Bei Fehler ist hier Schluss!
{
MessageBox (NULL, "Fehler beim Öffnen des COM-Ports", NULL, NULL);
}
}
.... dann die Read funkion ausgeführt ....
unsigned char InString[COM_BUFFER_SIZE + 1];
DWORD dwRead = 0;
if(!ReadFile (hCom,&InString,sizeof (InString),&dwRead,NULL))Application->MessageBox("Fehler!!!!","",0);
if(dwRead != 0)
{
InString[dwRead]='\0';
}
Label1->Caption = reinterpret_cast<char *>(InString);
Nun zum Problem:
Die Wetterstation schickt alle 3min neue Daten.
Aber schon nach 10 sek bekomme ich eine Antwort von der COM.
Und zwar sehr merkwürdige zeichen, zB ˜ï
Brauche dringend Hilfe! Danke!
gruß FB4