Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Valued Contributor III
887 Views

Non-blocking fgets

Hi, 

 

I'm interfacing MAX10 fpga development kit with matlab. The matlab sends command to the .c file which in turns request data from the fpga development kit. I'm able to acquire data continuously but want to do a modification in my code that when matlab send a "STOP" command, the .c file should suspend the data acquisition process from the board. I'm using fgets but as it's a non-blocking function, hence I'm getting stuck in the loop as fgets is waiting for a command. How can I avoid this ? Can anyone please help me resolve this issue ?  

 

Thanks,
0 Kudos
2 Replies
Highlighted
Valued Contributor III
23 Views

Perhaps you could think about using the getchar() function instead. 

This way you could manage yourself incomming characters one-by-one.
0 Kudos
Highlighted
Valued Contributor III
23 Views

Hi, 

 

Could you please be more elaborate on this ?  

I'm using fcntl(_serialPort, F_SETFL, fcntl(_serialPort, F_GETFL, 0) | O_NONBLOCK); to make the fgets Non-blocking but still it doesn't work. 

 

Thanks,
0 Kudos