#include #include #include #include //////////////////////// // Open COMXX HANDLE hSerial; hSerial = CreateFile("COMXX", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); if(hSerial==INVALID_HANDLE_VALUE) { if(GetLastError()==ERROR_FILE_NOT_FOUND) printf("File Not Found.\n"); else printf("Generic Error.\n"); exit(-1); } DCB dcbSerialParams = {0}; dcbSerialParams.DCBlength=sizeof(dcbSerialParams); if(!GetCommState(hSerial, &dcbSerialParams)) { printf("Error Getting State.\n"); CloseHandle(hSerial); exit(-1); } dcbSerialParams.BaudRate = CBR_9600; dcbSerialParams.ByteSize = 8; dcbSerialParams.StopBits = ONESTOPBIT; dcbSerialParams.Parity = NOPARITY; if(!SetCommState(hSerial, &dcbSerialParams)) { printf("Error setting State.\n"); CloseHandle(hSerial); exit(-1); } COMMTIMEOUTS timeouts = {0}; timeouts.ReadIntervalTimeout = 50; timeouts.ReadTotalTimeoutConstant = 50; timeouts.ReadTotalTimeoutMultiplier = 10; timeouts.WriteTotalTimeoutConstant = 50; timeouts.WriteTotalTimeoutMultiplier = 10; if(!SetCommTimeouts(hSerial, &timeouts)) { printf("Error setting timeouts.\n"); CloseHandle(hSerial); exit(-1); } // END Open COMXX ////////////////////////