SimpleSocket 1.0 examples
Dependencies: EthernetNetIf SimpleSocket 1.0 mbed
webserver.cpp@35:3fc65b5d6340, 2011-11-04 (annotated)
- Committer:
- yamaguch
- Date:
- Fri Nov 04 09:51:34 2011 +0000
- Revision:
- 35:3fc65b5d6340
- Parent:
- 34:a108bcc26b69
- Child:
- 36:03c4e6a9a9e9
added ClientSocket copy constructor
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
yamaguch |
33:39d9cdf99de8 | 1 | #include "EthernetNetIf.h" |
yamaguch |
32:00114e36de90 | 2 | #include "SimpleSocket.h" |
yamaguch |
32:00114e36de90 | 3 | |
yamaguch |
35:3fc65b5d6340 | 4 | void webserver() { |
yamaguch |
35:3fc65b5d6340 | 5 | char *response0 = |
yamaguch |
35:3fc65b5d6340 | 6 | "HTTP/1.1 200 OK\r\n" |
yamaguch |
35:3fc65b5d6340 | 7 | "Content-Type: text/html\r\n" |
yamaguch |
35:3fc65b5d6340 | 8 | "\r\n" |
yamaguch |
35:3fc65b5d6340 | 9 | "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"5\">\r\n" |
yamaguch |
35:3fc65b5d6340 | 10 | "<html>\r\n" |
yamaguch |
35:3fc65b5d6340 | 11 | "<head>\r\n" |
yamaguch |
35:3fc65b5d6340 | 12 | "<title>mbed web server</title>\r\n" |
yamaguch |
35:3fc65b5d6340 | 13 | "</head>\r\n" |
yamaguch |
35:3fc65b5d6340 | 14 | "<body>\r\n" |
yamaguch |
35:3fc65b5d6340 | 15 | "<h2>Analog Input</h2>\r\n" |
yamaguch |
35:3fc65b5d6340 | 16 | "<table cellpadding=\"5\">\r\n"; |
yamaguch |
35:3fc65b5d6340 | 17 | char *response1 = |
yamaguch |
35:3fc65b5d6340 | 18 | "<tr style=\"background:#ccccff\">" |
yamaguch |
35:3fc65b5d6340 | 19 | "<th>pin</th><th>value</th>" |
yamaguch |
35:3fc65b5d6340 | 20 | "</tr>\r\n"; |
yamaguch |
35:3fc65b5d6340 | 21 | char *response2 = |
yamaguch |
35:3fc65b5d6340 | 22 | "<tr style=\"background:#cccccc\">" |
yamaguch |
35:3fc65b5d6340 | 23 | "<td>p%d</td><td align=\"center\">%f</td>" |
yamaguch |
35:3fc65b5d6340 | 24 | "</tr>\r\n"; |
yamaguch |
35:3fc65b5d6340 | 25 | char *response3 = |
yamaguch |
35:3fc65b5d6340 | 26 | "</table>\r\n" |
yamaguch |
35:3fc65b5d6340 | 27 | "</body>\r\n" |
yamaguch |
35:3fc65b5d6340 | 28 | "</html>\r\n"; |
yamaguch |
32:00114e36de90 | 29 | |
yamaguch |
33:39d9cdf99de8 | 30 | EthernetNetIf eth; |
yamaguch |
33:39d9cdf99de8 | 31 | eth.setup(); |
yamaguch |
35:3fc65b5d6340 | 32 | |
yamaguch |
32:00114e36de90 | 33 | ServerSocket server(80); |
yamaguch |
35:3fc65b5d6340 | 34 | |
yamaguch |
32:00114e36de90 | 35 | while (true) { |
yamaguch |
32:00114e36de90 | 36 | ClientSocket socket = server.accept(); |
yamaguch |
32:00114e36de90 | 37 | while (socket) { |
yamaguch |
32:00114e36de90 | 38 | if (socket.available()) { |
yamaguch |
32:00114e36de90 | 39 | while (socket.available()) |
yamaguch |
32:00114e36de90 | 40 | socket.read(); |
yamaguch |
32:00114e36de90 | 41 | socket.printf(response0); |
yamaguch |
32:00114e36de90 | 42 | socket.printf(response1); |
yamaguch |
32:00114e36de90 | 43 | AnalogIn analogPin[] = {p15, p16, p17, p18, p19, p20}; |
yamaguch |
32:00114e36de90 | 44 | for (int i = 0; i < 6; i++) |
yamaguch |
35:3fc65b5d6340 | 45 | socket.printf(response2, 15 + i, analogPin[i].read()); |
yamaguch |
32:00114e36de90 | 46 | socket.printf(response3); |
yamaguch |
32:00114e36de90 | 47 | socket.close(); |
yamaguch |
32:00114e36de90 | 48 | } |
yamaguch |
32:00114e36de90 | 49 | } |
yamaguch |
32:00114e36de90 | 50 | } |
yamaguch |
32:00114e36de90 | 51 | } |