UDP in matlab

2 views (last 30 days)
wafa isa
wafa isa on 28 Oct 2011
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

Accepted Answer

Rob Graessle
Rob Graessle on 28 Oct 2011
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)
  4 Comments
Justin Liang
Justin Liang on 1 Jun 2013
I get that error as well, no sure why.
Walter Roberson
Walter Roberson on 1 Jun 2013
Possibly the port is already in use.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!