This example test the SSL socket connection ability with google.com@443

Dependencies:   NNN50_WIFI_API

Revision:
0:3e902eda4f71
Child:
1:4d09372e86ed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Tue Sep 12 02:06:32 2017 +0000
@@ -0,0 +1,79 @@
+/******************** (C) COPYRIGHT 2016 Delta Electronics, Inc. ***************
+*
+* File Name : main.cpp
+* Authors   : Tsungta Wu - CPBG (tsungta.wu@deltaww.com)
+* Version   : V.1.0.0
+* Date      : 2016/Nov/24
+*
+* This example only show the most basic WiFi operation include AP scan and connect 
+* The usage of TCP/UDP socket please refer to the mbed Handbook from the link below
+* https://developer.mbed.org/handbook/Socket
+*
+*******************************************************************************/
+
+#include "mbed.h"
+#include "EthernetInterface.h"
+#include "WIFIDevice.h"
+
+const char* ECHO_SERVER_ADDRESS = "192.168.2.13";
+const int ECHO_SERVER_PORT = 1030;
+
+void scanCallback(tstrM2mWifiscanResult result)
+{
+    printf("SSID: %s \n", result.au8SSID);
+    printf("RSSI: %i \n", result.s8rssi);
+}
+
+int main() {
+
+    EthernetInterface eth;
+    WIFIDevice wifi;
+
+    eth.init();
+
+    wifi.apScan(scanCallback);
+             
+    wifi.setNetwork(M2M_WIFI_SEC_WPA_PSK, "TWCYNPC0209_Mac mini", "mayday55555"); 
+    
+    eth.connect();    
+
+    if(wifi.is_AP_connected())
+        printf("Connect Success! \n");
+    else
+        printf("Connect Fail! \n");    
+
+    printf("MAC: %s\n", eth.getMACAddress());            
+    printf("IP: %s\n", eth.getIPAddress());
+    printf("Gateway: %s\n", eth.getGateway());
+    printf("NetworkMask: %s\n", eth.getNetworkMask()); 
+
+    UDPSocket sock;
+    sock.init();
+    
+    Endpoint echo_server;
+    echo_server.set_address(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT);
+    
+    char out_buffer[] = "Hello World";
+    printf("Sending  message '%s' to server (%s)\n",out_buffer,ECHO_SERVER_ADDRESS);
+    sock.sendTo(echo_server, out_buffer, sizeof(out_buffer));
+    
+    char in_buffer[256];    //IMPORTANT, array size MUST >= the actual received data size or set to maximum of 1400 if there is uncertainty
+    int n = sock.receiveFrom(echo_server, in_buffer, sizeof(in_buffer));
+    
+    if(n <0)
+        in_buffer[0] = '\0';//IMPORTANT, in case n = -1 when set_bloacking is timeout, prevent the illegal array in_buffer[-1] access 
+    else
+        in_buffer[n] = '\0';
+        
+    printf("Received message from server: '%s'\n", in_buffer);
+    
+    sock.close();
+    
+    eth.disconnect();                             
+    
+    wifi.sleep();
+                                 
+    while(1) {
+    }
+}
+