VC串口编程DCB.fparity设置失败
源代码如下:
GetCommState(hSerialPort, &dcb);printf("dcb.BaudRate = %d\n", dcb.BaudRate);printf("dcb.fParity = %d\n", dcb.fParity); #if 1 dcb.DCBlength = sizeof(DCB); dcb.BaudRate = 115200; dcb.fBinary = TRUE; dcb.fParity = 1; dcb.fOutxCtsFlow = FALSE; dcb.fOutxDsrFlow = FALSE; dcb.fDtrControl = DTR_CONTROL_DISABLE; dcb.fDsrSensitivity = FALSE; dcb.fTXContinueOnXoff = TRUE; dcb.fOutX = FALSE; dcb.fInX = FALSE; dcb.fErrorChar = FALSE; dcb.fNull = FALSE; dcb.fRtsControl = RTS_CONTROL_DISABLE; dcb.fAbortOnError = FALSE; dcb.XonLim = 0; dcb.XoffLim = 0; dcb.ByteSize = 8; dcb.Parity = EVENPARITY; dcb.StopBits = ONESTOPBIT; dcb.XonChar = 17; dcb.XoffChar = 19; dcb.ErrorChar = 0; dcb.EofChar = 0; dcb.EvtChar = 0; dcb.wReserved = 0; // // Set the new serial port configuration. // printf("set %d \n", SetCommState(hSerialPort, &dcb));printf("after set dcb.fParity = %d\n", dcb.fParity);printf("after set dcb.Parity = %d\n", dcb.Parity);printf("get last error %d\n", GetLastError());printf("get %d \n", GetCommState(hSerialPort, &dcb));printf("dcb.BaudRate = %d\n", dcb.BaudRate);printf("dcb.fParity = %d\n", dcb.fParity);printf(" dcb.Parity = %d\n", dcb.Parity);printf("dcb.ByteSize = %d\n", dcb.ByteSize);