diff options
Diffstat (limited to 'tmk_core/tool/mbed/mbed-sdk/libraries/tests/net/helloworld/multicast_receive')
-rw-r--r-- | tmk_core/tool/mbed/mbed-sdk/libraries/tests/net/helloworld/multicast_receive/main.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/net/helloworld/multicast_receive/main.cpp b/tmk_core/tool/mbed/mbed-sdk/libraries/tests/net/helloworld/multicast_receive/main.cpp new file mode 100644 index 0000000000..0398bdd1fd --- /dev/null +++ b/tmk_core/tool/mbed/mbed-sdk/libraries/tests/net/helloworld/multicast_receive/main.cpp @@ -0,0 +1,27 @@ +#include "mbed.h" +#include "EthernetInterface.h" + +const char* MCAST_GRP = "224.1.1.1"; +const int MCAST_PORT = 5007; + +int main() { + EthernetInterface eth; + eth.init(); //Use DHCP + eth.connect(); + + UDPSocket server; + server.bind(MCAST_PORT); + if (server.join_multicast_group(MCAST_GRP) != 0) { + printf("Error joining the multicast group\n"); + while (true) {} + } + + Endpoint client; + char buffer[256]; + while (true) { + printf("\nWait for packet...\n"); + int n = server.receiveFrom(client, buffer, sizeof(buffer)); + + printf("Packet from \"%s\": %s\n", client.get_address(), buffer); + } +} |