MATLAB: UDP in matlab

data transfer in matlabguiInstrument Control ToolboxMATLABudp

Hi , I'm working on a project in matlab
I have a matlab GUI on one computer and I want to send a word indicating which button on the GUI has been clicked to the other computer using UDP where the 2nd computer can execute specific function later on according to the button clicked ,
my problem is that I can only click one button that the computer on the other side will receive its data & then I have to re run the server side again to revive the 2nd button clicked .. my UDP connection on the server side will end just accepts one data
how can I make it accepts more the one until I end it my self ?
here what I'm doing :
PC 1
u1 = udp('192.168.1.2', 'RemotePort', 8866, 'LocalPort', 8844) fopen(u1) fprintf(u1,'counter clk wise') fclose(u1) delete(u1) clear u1
This will be repeated with every button I couldn't make it general in the GUI
& here my server PC2 :
u2 = udp('192.168.1.2', 'RemotePort', 8844, 'LocalPort', 8866) fopen(u2) % open the host 2 pause(1) fscanf(u2) % print data from host 1 % close : %fclose(u2)
I've read several topics but no luck … can any one help me with this a hint maybe
thnx

Best Answer

To receive multiple messages, you need to put a loop in the PC2 code. Something like this:
u2 = udp('192.168.1.2', 'RemotePort', 8844, 'LocalPort', 8866)
fopen(u2) % open the host 2
while ~<insert some stopping condition here>
pause(1)
fscanf(u2) % print data from host 1
end
fclose(u2)
Related Question