INSAT_MiniPRoject
Dependencies: MQTT NDefLib NetworkSocketAPI Servo Light_Sensor_Nucleo X_NUCLEO_IDW01M1v2 mbed
Fork of IDW01M1_Cloud_IBM by
Diff: main.cpp
- Revision:
- 8:6df01cb43137
- Parent:
- 6:0d838d564181
- Child:
- 10:c7b62ce013ad
diff -r 480efa77d13b -r 6df01cb43137 main.cpp --- a/main.cpp Tue Apr 19 08:25:01 2016 +0000 +++ b/main.cpp Fri May 13 12:24:36 2016 +0000 @@ -7,65 +7,63 @@ // 9600 bauds, 8-bit data, no parity //------------------------------------ -Serial pc(SERIAL_TX, SERIAL_RX); - +Serial pc(SERIAL_TX, SERIAL_RX); DigitalOut myled(LED1); - SpwfSAInterface spwf(PA_9, PA_10, PC_12, PC_8, PA_12, true); -TCPSocket tcp_(&spwf); int main() { - int32_t err; + int err; char * ssid = "STM"; char * seckey = "STMdemoPWD"; - char * data = "Hello World!\r\n"; - uint32_t len = strlen(data); pc.printf("\r\nX-NUCLEO-IDW01M1 mbed Application\r\n"); - pc.printf("\r\n[APP] connecting to AP\r\n"); + pc.printf("\r\nconnecting to AP\r\n"); - err = spwf.connect(ssid, seckey, NS_SECURITY_WPA); + err = spwf.connect(ssid, seckey, NSAPI_SECURITY_WPA); if(err!=0) { - pc.printf("\r\n[APP] error connecting to AP.\r\n"); + pc.printf("\r\nerror connecting to AP.\r\n"); return -1; } - pc.printf("\r\n[APP] now connected\r\n"); + pc.printf("\r\nnow connected\r\n"); - const char *ip = spwf.getIPAddress(); - const char *mac = spwf.getMACAddress(); + const char *ip = spwf.get_ip_address(); + const char *mac = spwf.get_mac_address(); - pc.printf("\r\n[APP] IP Address is: %s\r\n", (ip) ? ip : "No IP"); - pc.printf("\r\n[APP] MAC Address is: %s\r\n", (mac) ? mac : "No MAC"); + pc.printf("\r\nIP Address is: %s\r\n", (ip) ? ip : "No IP"); + pc.printf("\r\nMAC Address is: %s\r\n", (mac) ? mac : "No MAC"); + + SocketAddress addr(&spwf, "st.com"); + printf("\r\nst.com resolved to: %s\r\n", addr.get_ip_address()); + + pc.printf("\r\nconnecting to http://time-d.nist.gov\r\n"); //time-d.nist.gov - pc.printf("\r\n[APP] opening socket\r\n"); - - err = tcp_.open("time-d.nist.gov", 37); - - if(err==0) - { - pc.printf("\r\n[APP] socket open OK\r\n"); - pc.printf("\r\n[APP] hostname resolved to: %s\r\n", tcp_.getIPAddress()); + TCPSocket socket(&spwf); + err = socket.connect("time-d.nist.gov", 37); + if(err!=0) + { + pc.printf("\r\nCould not connect to Socket, err = %d!!\r\n", err); + return -1; + } + char buffer[64]; + int count = 0; + pc.printf("\r\nReceiving Data\r\n"); + count = socket.recv(buffer, sizeof buffer); + + if(count > 0) + { + pc.printf("\r\nReceived: %ld bytes, 0x%02x 0x%02x 0x%02x 0x%02x\r\n", \ + count, buffer[0], buffer[1], buffer[2], buffer[3]); + } + else pc.printf("\r\nData not received\r\n"); + + pc.printf("\r\nClosing Socket\r\n"); + socket.close(); - err = tcp_.send(data, len); - - if(err == 0) - pc.printf("\r\n[APP] socket send OK\r\n"); - else - pc.printf("\r\n[APP] socket send error\r\n"); - - char received[4]; - int32_t size = 0; - pc.printf("\r\n[APP] waiting for data recv\r\n"); - size = tcp_.recv(received, sizeof(received)); - if(size==0) - pc.printf("\r\n[APP] Receive error."); - else - pc.printf("\r\n[APP] Received: %ld bytes, 0x%02x 0x%02x 0x%02x 0x%02x\r\n", size, received[0], received[1], received[2], received[3]); - } - else - pc.printf("\r\n[APP] socket open Error\r\n"); + pc.printf("\r\ndisconnecting....\r\n"); + spwf.disconnect(); + pc.printf("\r\nTest complete.\r\n"); while(1) { wait(1);