C Program to Send Data to USB Port
#include<stdio.h>
#include<conio.h>
#include<windows.h>
#include<io.h>
#include<stdlib.h>
HANDLE GetSerialPort(char *);
void delay();
int main(void)
{
do
{
HANDLE h1, h2;
char h1_buffer[] = ("Hello World:");
char h2_buffer[24];
DWORD byteswritten = 0, bytesread = 0;
char c1[] = {"COM14"};
char c2[] = {"COM14"};
h1 = GetSerialPort(c1);
h2 = GetSerialPort(c2);
WriteFile(h1, h1_buffer, 17, &byteswritten, NULL);
ReadFile(h2, h2_buffer, strlen(h1_buffer) + 1, &bytesread, NULL);
if (bytesread)
{
printf("%s\n", h2_buffer);
}
else
{ printf("Nothing read\n");
}
CloseHandle(h1);
CloseHandle(h2);
delay();
//getch();
}while(1);
}
HANDLE GetSerialPort(char *prt)
{
HANDLE hSerial;
hSerial = CreateFile(prt, GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
DCB dcbSerialParams = {0};
dcbSerialParams.DCBlength=sizeof(dcbSerialParams);
dcbSerialParams.BaudRate=CBR_19200;
dcbSerialParams.ByteSize=8;
dcbSerialParams.StopBits=ONESTOPBIT;
dcbSerialParams.Parity=NOPARITY;
SetCommState(hSerial, &dcbSerialParams);
return hSerial;
}
void delay ()
{
int i = 1000000000;
printf("In delay\n");
while(i>0)
{
i--;
}
}