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 个评论

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.

请先登录,再进行评论。

 采纳的回答

Jan
Jan 2012-6-22
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 个评论

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!

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by