reading from USB port using mex code .. the DLL is taking more time and less time in constently

h = CreateFile(portname,
GENERIC_READ | GENERIC_WRITE,
0, NULL,
OPEN_EXISTING, 0, NULL);
if (h == INVALID_HANDLE_VALUE)
{
mexPrintf("\n\n !! FAILED TO OPEN PORT %s\n\n", portname);
return -1;
}
dcb.DCBlength = sizeof(dcb);
dcb.BaudRate = 57600;
dcb.fBinary = 1;
dcb.Parity = NOPARITY;
dcb.StopBits = ONESTOPBIT;
dcb.ByteSize = 8;
if (!SetCommState(h, &dcb))
{
mexPrintf("\n\n SetCommState Failed\n\n");
return -1;
}
/* Will print hex values of received bytes */
for (i = 0; i < imax; i++)
{
/* Wait for characters */
read = 0;
while(!read)
{
ReadFile(h, &ch, 1, &read, NULL);
if (read) Data[i] = ch;
}
}
CloseHandle(h);
mexPrintf("Reading from USB Completed\n");

1 Comment

You forgot to ask a question. The DLL is taking more time and less time (simultaneously?!) than what?

Sign in to comment.

Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Products

Asked:

on 31 Jan 2013

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!