SimpleSocket 1.0 examples

Dependencies:   EthernetNetIf SimpleSocket 1.0 mbed

Revision:
40:84182fc63956
Parent:
39:108499af2b53
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/examples/multicast.cpp	Mon Feb 04 09:04:25 2013 +0000
@@ -0,0 +1,26 @@
+#include "EthernetNetIf.h"
+#include "SimpleSocket.h"
+
+void multicast() {
+    EthernetNetIf eth;
+    eth.setup();
+    
+    Host multicast(IpAddr(239, 192, 1, 100), 50000);
+    DatagramSocket datagram(multicast);
+    
+    while (true) {
+        Host host;
+        if (datagram.receive(&host, 1 + (rand() % 5) / 3.0) > 0) {
+            int value;
+            datagram.scanf("%d", &value);
+            IpAddr ip = host.getIp();
+            printf("received from %d.%d.%d.%d:%d %d\n", ip[0], ip[1], ip[2], ip[3], host.getPort(), value);
+        } else {
+            char* message = "12345!";
+            datagram.printf(message);
+            datagram.send(multicast);
+            printf("sent: %s\n", message);
+            wait(1);
+        }
+    }
+}