Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed X_NUCLEO_IDW01M1v2 NetworkSocketAPI
Diff: main.cpp
- Revision:
- 0:dee849b0e6e6
- Child:
- 1:daf71fa3674c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp Fri Jul 08 06:28:58 2016 +0000
@@ -0,0 +1,94 @@
+/* SpwfInterface NetworkSocketAPI Example Program
+ * Copyright (c) 2015 ARM Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "mbed.h"
+#include "SpwfInterface.h"
+#include "TCPSocket.h"
+
+//------------------------------------
+// Hyperterminal configuration
+// 9600 bauds, 8-bit data, no parity
+//------------------------------------
+
+Serial pc(SERIAL_TX, SERIAL_RX);
+DigitalOut myled(LED1);
+SpwfSAInterface spwf(PA_9, PA_10, false);
+
+int main() {
+ int err;
+ char * ssid = "STM";
+ char * seckey = "STMdemoPWD";
+
+ pc.printf("\r\nX-NUCLEO-IDW01M1 mbed Application\r\n");
+ pc.printf("\r\nconnecting to AP\r\n");
+
+ if(spwf.connect(ssid, seckey, NSAPI_SECURITY_WPA2)) {
+ pc.printf("\r\nnow connected\r\n");
+ } else {
+ pc.printf("\r\nerror connecting to AP.\r\n");
+ return -1;
+ }
+
+ const char *ip = spwf.get_ip_address();
+ const char *mac = spwf.get_mac_address();
+
+ 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");
+ pc.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");
+
+ TCPSocket socket(&spwf);
+ //err = socket.connect("192.168.1.6", 32000);
+ err = socket.connect("4.ifcfg.me", 23);//"4.ifcfg.me", 23;//"time-d.nist.gov", 37
+ if(err!=0)
+ {
+ pc.printf("\r\nCould not connect to Socket, err = %d!!\r\n", err);
+ return -1;
+ } else pc.printf("\r\nconnected to host server\r\n");
+
+ //char * str = "test";
+ //socket.send(str, strlen(str));
+
+#if 1
+ char buffer[64];
+ int count = 0;
+ pc.printf("\r\nReceiving Data\r\n");
+ count = socket.recv(buffer, sizeof buffer);
+
+ if(count > 0)
+ {
+ printf("public IP address is: %s\r\n", &buffer[15]);
+ //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();
+
+ //pc.printf("\r\ndisconnecting....\r\n");
+ //spwf.disconnect();
+ //pc.printf("\r\nTest complete.\r\n");
+#endif
+
+ while(1) {
+ wait(1);
+ myled = !myled;
+ }
+}