在matlab中的tcp连接中发出警告

时间:2015-02-22 13:15:02

标签: matlab tcp

我尝试通过tcp连接将matlab与流连接起来,问题是tcp连接错误来自流式传输的数据太多。我想一次读47个整数,这就是为什么我添加循环等到BytesAvailableFcnCount的值大于47 * 4(假设整数是4个字节)的原因,同样matlab给我以下警告:
Warning: Unexpected Warning: A timeout occurred before the Terminator was reached
这是代码:

`function data = get_data()
t = tcpip('127.0.0.1', 5000);
t.BytesAvailableFcnMode = 'byte' ;
t.BytesAvailableFcnCount =47*4 ; 
fopen(t) ;
t.Timeout = 20 ;
while (t.BytesAvailableFcn < 47*4)
     end
    data = fscanf(t, '%d', 47);
    dlmwrite('test.dat',data);
x = 1 ;
while (x ==1)  
 while (t.BytesAvailableFcn <47*4)
     end
    data = fscanf(t, '%d', 47)
 end

`

1 个答案:

答案 0 :(得分:0)

您正在混淆BytesAvailableFcnBytesAvailableBytesAvailableFcn是一个由你设置的回调函数,BytesAvailable返回可用字节数。