SimpleSocket 1.0 examples

Dependencies:   EthernetNetIf SimpleSocket 1.0 mbed

Revision:
32:00114e36de90
Child:
33:39d9cdf99de8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/webserver.cpp	Wed Oct 26 12:47:31 2011 +0000
@@ -0,0 +1,31 @@
+#include "mbed.h"
+#include "SimpleSocket.h"
+   // <META HTTP-EQUIV=\"Refresh\" CONTENT=\"5\">\
+
+char *response0 = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n\
+<html>\r\n<head>\r\n<title>mbed web server</title>\r\n</head>\r\n\
+<body>\r\n<h2>Analog Input</h2>\r\n\
+<table cellpadding=\"5\">";
+char *response1 = "<tr style=\"background:#ccccff\"><th>pin</th><th>value</th></tr>\r\n";
+char *response2 = "<tr style=\"background:#cccccc\"><td>p%d</td><td align=\"center\">%f</td></tr>\r\n";
+char *response3 = "</table>\r\n</body>\r\n</html>\r\n";
+
+void webserver() {
+    ServerSocket server(80);
+    while (true) {
+        ClientSocket socket = server.accept();
+        while (socket) {
+            if (socket.available()) {
+                while (socket.available())
+                    socket.read();
+                socket.printf(response0);
+                socket.printf(response1);
+                AnalogIn analogPin[] = {p15, p16, p17, p18, p19, p20};
+                for (int i = 0; i < 6; i++)
+                     socket.printf(response2, 15 + i, analogPin[i].read());
+                socket.printf(response3);
+                socket.close();
+            }
+        }
+    }
+}
\ No newline at end of file