открыть последовательный порт и записать данные на него в C - PullRequest
0 голосов
/ 19 сентября 2018

WIN7

Я написал программу для открытия последовательного порта и записи в него данных, например, COM4.Я подключил COM4 и 5, чтобы получить форму отправки данных COM4.Но я не получил никаких данных от com4.

HANDLE hCom = CreateFile(TEXT("COM4"), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (hCom == INVALID_HANDLE_VALUE) return false;

DCB CommDCB;
GetCommState(hCom, &CommDCB);
CommDCB.BaudRate = 19200;
CommDCB.Parity = EVENPARITY;
CommDCB.StopBits = ONESTOPBIT;
CommDCB.ByteSize = 8;
CommDCB.fBinary = 1;
CommDCB.fParity = 1;
CommDCB.fOutxCtsFlow = 0;
CommDCB.fOutxDsrFlow = 0;
CommDCB.fDtrControl = 0;
CommDCB.fDsrSensitivity = 0;
CommDCB.fTXContinueOnXoff = 0;
CommDCB.fOutX = 0;
CommDCB.fInX = 0;
CommDCB.fErrorChar = 0;
CommDCB.fNull = 0;
CommDCB.fRtsControl = RTS_CONTROL_TOGGLE;
CommDCB.fAbortOnError = 0;
SetCommState(hCom, &CommDCB);

SetupComm(hCom, 100, 100);
COMMTIMEOUTS CommTimeouts;
GetCommTimeouts(hCom, &CommTimeouts);
CommTimeouts.ReadIntervalTimeout = MAXDWORD;
CommTimeouts.ReadTotalTimeoutMultiplier = 0;
CommTimeouts.ReadTotalTimeoutConstant = 0;
SetCommTimeouts(hCom, &CommTimeouts);

ULONG32 dwWrite = 0UL;
write(hCom, &dwWrite, 4);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...