Ethernet test for ECE 4180 and others to find your IP address and do a simple HTTP GET request over port 80.
Dependencies: mbed Socket lwip-eth lwip-sys lwip
main.cpp@0:e7ca326e76ee, 2013-04-04 (annotated)
- Committer:
- mkersh3
- Date:
- Thu Apr 04 05:26:09 2013 +0000
- Revision:
- 0:e7ca326e76ee
Ethernet Test for ECE4180 and others to find their IP Address and do a simple HTTP GET request over port 80.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mkersh3 | 0:e7ca326e76ee | 1 | #include "mbed.h" |
mkersh3 | 0:e7ca326e76ee | 2 | #include "EthernetInterface.h" |
mkersh3 | 0:e7ca326e76ee | 3 | |
mkersh3 | 0:e7ca326e76ee | 4 | Serial pc(USBTX, USBRX); |
mkersh3 | 0:e7ca326e76ee | 5 | |
mkersh3 | 0:e7ca326e76ee | 6 | int main() |
mkersh3 | 0:e7ca326e76ee | 7 | { |
mkersh3 | 0:e7ca326e76ee | 8 | EthernetInterface eth; |
mkersh3 | 0:e7ca326e76ee | 9 | eth.init(); //Use DHCP |
mkersh3 | 0:e7ca326e76ee | 10 | eth.connect(); |
mkersh3 | 0:e7ca326e76ee | 11 | printf("IP Address is %s\n", eth.getIPAddress()); |
mkersh3 | 0:e7ca326e76ee | 12 | |
mkersh3 | 0:e7ca326e76ee | 13 | TCPSocketConnection sock; |
mkersh3 | 0:e7ca326e76ee | 14 | sock.connect("mbed.org", 80); |
mkersh3 | 0:e7ca326e76ee | 15 | |
mkersh3 | 0:e7ca326e76ee | 16 | char http_cmd[] = "GET /media/uploads/mbed_official/hello.txt HTTP/1.0\n\n"; |
mkersh3 | 0:e7ca326e76ee | 17 | sock.send_all(http_cmd, sizeof(http_cmd)-1); |
mkersh3 | 0:e7ca326e76ee | 18 | |
mkersh3 | 0:e7ca326e76ee | 19 | char buffer[300]; |
mkersh3 | 0:e7ca326e76ee | 20 | int ret; |
mkersh3 | 0:e7ca326e76ee | 21 | while (true) { |
mkersh3 | 0:e7ca326e76ee | 22 | ret = sock.receive(buffer, sizeof(buffer)-1); |
mkersh3 | 0:e7ca326e76ee | 23 | if (ret <= 0) |
mkersh3 | 0:e7ca326e76ee | 24 | break; |
mkersh3 | 0:e7ca326e76ee | 25 | buffer[ret] = '\0'; |
mkersh3 | 0:e7ca326e76ee | 26 | printf("Received %d chars from server:\n%s\n", ret, buffer); |
mkersh3 | 0:e7ca326e76ee | 27 | } |
mkersh3 | 0:e7ca326e76ee | 28 | |
mkersh3 | 0:e7ca326e76ee | 29 | sock.close(); |
mkersh3 | 0:e7ca326e76ee | 30 | |
mkersh3 | 0:e7ca326e76ee | 31 | eth.disconnect(); |
mkersh3 | 0:e7ca326e76ee | 32 | |
mkersh3 | 0:e7ca326e76ee | 33 | while(1) {} |
mkersh3 | 0:e7ca326e76ee | 34 | } |