не могу записать строку в порт, а хочется что бы в "com1" порт писалась строка "ath/r/n", подскажите пожалуйста, где у меня ошибка
| Код | #include "stdafx.h" #include <windows.h> #include <conio.h>
int main(int argc, char* argv[]) { char serialName[] = "com1"; char bufrd[] = "ath/r/n"; HANDLE hPort; DWORD feedback; COMMTIMEOUTS commTimeouts; hPort = CreateFile(serialName, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, NULL); if(hPort!=INVALID_HANDLE_VALUE){ COMMCONFIG comm; GetCommState(serialName, &comm.dcb); comm.dcb.BaudRate = 9600; comm.dcb.ByteSize = 8; comm.dcb.Parity = NOPARITY; comm.dcb.StopBits = ONESTOPBIT; if(SetCommState(hPort, &comm.dcb)!=0) if(PurgeComm(hPort, PURGE_RXCLEAR | PURGE_TXCLEAR)!=0) if(SetCommMask(hPort, EV_RXCHAR)!=0){ GetCommTimeouts(hPort, &commTimeouts); commTimeouts.ReadIntervalTimeout = 100; commTimeouts.ReadTotalTimeoutConstant = 300; commTimeouts.ReadTotalTimeoutMultiplier = 50; if(SetCommTimeouts(hPort,&commTimeouts)) if(WriteFile(hPort, &bufrd[0], 5, &feedback, 0) && feedback == 5) { printf("succeed write port"); CloseHandle(hPort); getch(); return 0; } } } CloseHandle(hPort); printf("failed write port"); getch(); return 0; }
|
|