2011-12-22 512 views
1

我已经看到了一些关于这个主题的文章,但其中大部分都来自3-4年前,我不得不相信以前有人做过这个。有谁知道是否有一种方法可以让MATLAB程序监听指定的端口号。我试图通过本地网络或潜在的互联网向MATLAB传输信息,并让MATLAB使用它做什么?有什么建议么?MATLAB监听TCP/IP端口

我的其他选择是只发送一切到SQL服务器,然后让MATLAB轮询这个服务器。但是我担心这样做的速度,因为MATLAB需要“实时”或尽可能接近地吐出东西。

注意信息将在iPhone上采取和传输通过Wi-Fi

回答

1

我会用它通过Matlab的接口语言,如C过MEX-文件或Java。

0

这是我的例子。 Android用户发送文件名和文件到matlab TCP服务器。然后,matlab TCP服务器收到一行文件名和文件数据。

t = tcpip('0.0.0.0', 8000, 'NetworkRole', 'Server'); 
    set(t, 'InputBufferSize', 900000); 

    fprintf('waiting for client'); 
    fopen(t); 
    pause(1); 

    fprintf('client connected'); 

    fid = fopen('temp','w+'); 
    file_name = fgetl(t); 

    % read first line 

    while (get(t, 'BytesAvailable') > 0) 
     pause(2); 
     t.BytesAvailable 
     data = fread(t, t.BytesAvailable); 
     pause(2); 
     fwrite(fid, data); 
    end 

    copyfile('temp',['../../data/' file_name]); 

    fclose(t); 
    fclose(fid);