UDP Socket Hello World with Ethernet

Dependencies:   EthernetInterface mbed-rtos mbed

Fork of UDPSocket_HelloWorld by Mbed

Committer:
donatien
Date:
Tue Jun 26 15:37:24 2012 +0000
Revision:
1:8e1d4987eb90
Parent:
0:d85529a216ea
Child:
6:25aad2d88749
Switched from uint_8_t* to char* for data types

Who changed what in which revision?

UserRevisionLine numberNew contents of line
donatien 1:8e1d4987eb90 1 #include "mbed.h"
donatien 1:8e1d4987eb90 2 #include "EthernetInterface.h"
donatien 1:8e1d4987eb90 3
donatien 1:8e1d4987eb90 4 int main()
donatien 1:8e1d4987eb90 5 {
donatien 1:8e1d4987eb90 6 EthernetInterface eth;
donatien 1:8e1d4987eb90 7 eth.init(); //Use DHCP
donatien 1:8e1d4987eb90 8
donatien 1:8e1d4987eb90 9 eth.connect();
donatien 1:8e1d4987eb90 10
donatien 1:8e1d4987eb90 11 UDPSocket sock;
donatien 1:8e1d4987eb90 12 sock.bind(0); //Use a random port
donatien 1:8e1d4987eb90 13
donatien 1:8e1d4987eb90 14 char daytime_cmd[] = "plop"; //Does not matter
donatien 1:8e1d4987eb90 15 sock.sendTo(daytime_cmd, sizeof(daytime_cmd) - 1, "utcnist.colorado.edu", 37, 3000);
donatien 1:8e1d4987eb90 16
donatien 1:8e1d4987eb90 17 char* inHost;
donatien 1:8e1d4987eb90 18 int inPort;
donatien 1:8e1d4987eb90 19 char in_buf[4];
donatien 1:8e1d4987eb90 20 int ret = sock.receiveFrom((char*)in_buf, 4, &inHost, &inPort, 3000);
donatien 1:8e1d4987eb90 21
donatien 1:8e1d4987eb90 22 unsigned int timeRes = ntohl( *((unsigned int*)in_buf));
donatien 1:8e1d4987eb90 23
donatien 1:8e1d4987eb90 24 printf("Received %d bytes from server %s on port %d: %u seconds since 1/01/1900 00:00 GMT\n", ret, inHost, inPort, timeRes);
donatien 1:8e1d4987eb90 25
donatien 1:8e1d4987eb90 26 sock.close();
donatien 1:8e1d4987eb90 27
donatien 1:8e1d4987eb90 28 eth.disconnect();
donatien 1:8e1d4987eb90 29
donatien 1:8e1d4987eb90 30 while(1) {
donatien 1:8e1d4987eb90 31 }
donatien 1:8e1d4987eb90 32 }