OLD-idmessage-59324

#1880120
-sc-
Участник

/* A sample program to illustrate setting up a serial port. */
#include
int main(int argc, char *argv[]){ DCB dcb; HANDLE hCom; BOOL fSuccess; char *pcCommPort = “COM2”;
hCom = CreateFile( pcCommPort, GENERIC_READ | GENERIC_WRITE, 0, // must be opened with exclusive-access NULL, // no security attributes OPEN_EXISTING, // must use OPEN_EXISTING 0, // not overlapped I/O NULL // hTemplate must be NULL for comm devices );
if (hCom == INVALID_HANDLE_VALUE) { // Handle the error. printf (“CreateFile failed with error %d.\n”, GetLastError()); return (1); }
// Build on the current configuration, and skip setting the size // of the input and output buffers with SetupComm.
fSuccess = GetCommState(hCom, &dcb);
if (!fSuccess) { // Handle the error. printf (“GetCommState failed with error %d.\n”, GetLastError()); return (2); }
// Fill in DCB: 57,600 bps, 8 data bits, no parity, and 1 stop bit.
dcb.BaudRate = CBR_57600; // set the baud rate dcb.ByteSize = 8; // data size, xmit, and rcv dcb.Parity = NOPARITY; // no parity bit dcb.StopBits = ONESTOPBIT; // one stop bit
fSuccess = SetCommState(hCom, &dcb);
if (!fSuccess) { // Handle the error. printf (“SetCommState failed with error %d.\n”, GetLastError()); return (3); }
printf (“Serial port %s successfully reconfigured.\n”, pcCommPort); return (0);}