#include
#include
BOOL fSuccess;
RĘKOJEŚĆ hSerial; //Handle dla COM Port
kawitacyjny initComm ()
{
COMMTIMEOUTS noblock;
DCB comSettings; //Various Portowy Położenie
// Initialize Serial Port
hSerial = CreateFile ("COM1", //Open COM1
GENERIC_READ, //Read tylko
(0), //Exclusive Dostęp
NIEOBOWIĄZUJĄCY, //No Ochrona Atrybut
OPEN_EXISTING, //COM port już istnieć
(0),
NIEOBOWIĄZUJĄCY);
jeżeli (hSerial==INVALID_HANDLE_VALUE)
{
printf ("Nieważny Rękojeść Wartość %d. \ n", GetLastError ());
}
//Set Timeout w Milisecs
fSuccess = GetCommTimeouts (hSerial, &noblock);
noblock.ReadTotalTimeoutConstant = (1);
noblock.ReadTotalTimeoutMultiplier = MAXWORD;
noblock.ReadIntervalTimeout = MAXWORD;
fSuccess = SetCommTimeouts (hSerial, &noblock);
//Set Portowy Parametr
fSuccess = GetCommState (hSerial, &comSettings);
jeżeli (! fSuccess)
{
printf ("\ nGetCommState Błąd! ");
}
comSettings.BaudRate = 9600;
comSettings.ByteSize = 8;
comSettings.fParity = FAŁSZYWY;
comSettings.Parity = NOPARITY;
comSettings.StopBits = ONESTOPBIT;
fSuccess = SetCommState (hSerial, &comSettings);
jeżeli (! fSuccess) {
printf ("\ nSetCommState Błąd! ");
}
printf ("Comm portowy set \ n");
}
//Read Dane od Serial Port
char readComm ()
{
char inBuffer;
int bytesRead;
fSuccess = ReadFile (hSerial, //Handle
&inBuffer, //Incoming dane
1000, //No bajt read
&bytesRead, //Bytes Czytać
(0));
jeżeli (bytesRead >0)
powrotny inBuffer;
inny powrót (0);
}
|