天天看点

matlab server-client传输数据

1、内容简介

529-可以交流、咨询、答疑

2、内容说明

%% 客户机代码

%% 设置连接参数,要连接的地址为127.0.0.1(即本地主机),端口号为5174,作为客户机连接。

Client=tcpip('127.0.0.1',5174,'NetworkRole','client');

%% 定义接收的信息,在定时器函数中接收数据

global messageRecv;

messageRecv='';

%% 建立连接,建立完成后进行下一步,否则报错

fopen(Client);%与一个服务器建立连接,直到建立完成返回,否则报错。

disp("成功与服务器建立连接");

disp(" ");

%% 设定定时器,定时调用获取消息的函数

% Period=0.01,即每0.01尝试接收一次

% ExcutionMode=fixedRate,即固定频率循环接收

% TimerFcn:定义我们需要定时回调的函数

% UserData=Server:把客户机句柄传送给函数,用以接收数据

t=timer('Period',0.01,'ExecutionMode','fixedRate','TimerFcn',@GetMessage,'UserData',Client);

start(t);

%% 等待用户输入消息,直到遇到stop

% uincode2native把需要发送的汉字转成Ascii码形式

messageInput='';

while(string(messageInput)~="stop")

    messageInput=input('请输入要发送的内容: \n','s');

    if strtrim(messageRecv)=="stop"

        break;

    end

    messageSend=unicode2native(messageInput);

    fwrite(Client,messageSend);

end

%% 关闭客户端

stop(t);

fclose(Client);

disp("关闭定时器和客户机");

3、仿真分析