Hi, I am using serial port communication. I can write and read the data but the warning after "fscanf" keep pop up. Below attached the code. Code:
s=serial('COM6','BaudRate',115200,'Parity','none'...
,'DataBits',8,'FlowControl','none'...
,'Terminator','LF/CR');
fopen(s);
fprintf(s,'t');
out = fscanf(s)
Warning: A timeout occurred before the Terminator was reached.
May i know what is the problem?

2 Comments

I am also having the same problem even after using the code
set(s, 'TimeOut', 100)
can you help to get rid of this?
Check the baud rate you are configuring.
Check that the terminator matches.
Use a program such as TeraTerm to verify that you are able to receive data from the port.

Sign in to comment.

 Accepted Answer

Jan
Jan on 22 Jun 2012
If the timeout occurred to early, what about increasing the time?
set(s, 'TimeOut', 100)
? But the default of 10 seconds should be long enough... Perhaps the other parameters are not correct?

5 Comments

In particular double-check the terminator.
Hi, thanks for replied. After i set the time out to 100,and check the terminator, the warning still exist. Does the warning will affect thereceiving data?
The warning might be indicating that you are not getting any data at all.
If you are getting data then the timeout will be slowing down your program a lot.
Thanks Jan and Walter replied, now I know how the stuff is worked.
Can you tell me what is the problem? how can I figure it out? I meet the same issue as yours. Thanks!

Sign in to comment.

More Answers (0)

Asked:

on 22 Jun 2012

Commented:

on 16 Jul 2019

Community Treasure Hunt

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

Start Hunting!