This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

tcflush hang problem

I use CYGWIN_98-4.10 mine 1.5.5(0.94/3/2) 2003-09-20 16:31 i686 uknown unknown Cygwin

First i try to describe a situation:
I have a device which is connected with computer thru serial line.
Device is still sending data.These data isn't for my program.I have open com port and let them go into buffer . When a want to talk with device i flush input buffer,
send it a command paket and device stop sending data and wait  for my next command.
Problem is when I want to flush INPUTbuffer before I send a command. In this point it hangs, maybe for buffer full.
Here is piece of code:

-----I open port when i start program -----

 fd = open(PORT0, O_RDWR | O_NOCTTY );
 tcgetattr(fd,&oldtio); /* save current port settings */
        bzero(&newtio, sizeof(newtio));
        newtio.c_cflag = CS8 | CLOCAL | CREAD | CSTOPB;
        newtio.c_iflag = 0;
        newtio.c_oflag &= ~OPOST;
        newtio.c_lflag = 0;
        newtio.c_cc[VTIME]    = 1;  
        newtio.c_cc[VMIN]     = 0;   
        tcflush(fd, TCIFLUSH);
--this code is execute when a want to talk with device----

       tcflush(fd, TCIFLUSH);	    <--------- in this point where it hangs
	err = write (fd,iobuffer,10);

thank for help

Unsubscribe info:
Problem reports:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]