ECE 4180 Lab 2 Part 4
Dependencies: EthernetInterface mbed-rtos mbed
Fork of TCPSocket_HelloWorld by
main.cpp@15:bf59021c6f53, 2018-10-09 (annotated)
- Committer:
- abraha2d
- Date:
- Tue Oct 09 00:48:43 2018 +0000
- Revision:
- 15:bf59021c6f53
- Parent:
- 11:59dcefdda506
Save point
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
donatien | 0:bb128f0e952f | 1 | #include "mbed.h" |
donatien | 0:bb128f0e952f | 2 | #include "EthernetInterface.h" |
donatien | 0:bb128f0e952f | 3 | |
abraha2d | 15:bf59021c6f53 | 4 | Serial pc(USBTX, USBRX); |
abraha2d | 15:bf59021c6f53 | 5 | |
abraha2d | 15:bf59021c6f53 | 6 | int main() |
abraha2d | 15:bf59021c6f53 | 7 | { |
abraha2d | 15:bf59021c6f53 | 8 | pc.printf("Hi! "); |
abraha2d | 15:bf59021c6f53 | 9 | |
abraha2d | 15:bf59021c6f53 | 10 | char mac[6]; |
abraha2d | 15:bf59021c6f53 | 11 | mbed_mac_address(mac); |
abraha2d | 15:bf59021c6f53 | 12 | pc.printf("mbed MAC address is %02x:%02x:%02x:%02x:%02x:%02x\n\r", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); |
abraha2d | 15:bf59021c6f53 | 13 | |
abraha2d | 15:bf59021c6f53 | 14 | pc.printf("1"); |
donatien | 0:bb128f0e952f | 15 | EthernetInterface eth; |
abraha2d | 15:bf59021c6f53 | 16 | pc.printf("2"); |
donatien | 0:bb128f0e952f | 17 | eth.init(); //Use DHCP |
abraha2d | 15:bf59021c6f53 | 18 | pc.printf("3"); |
donatien | 0:bb128f0e952f | 19 | eth.connect(); |
abraha2d | 15:bf59021c6f53 | 20 | pc.printf("IP Address is %s\n", eth.getIPAddress()); |
abraha2d | 15:bf59021c6f53 | 21 | |
emilmont | 7:65188f4a8c25 | 22 | TCPSocketConnection sock; |
donatien | 0:bb128f0e952f | 23 | sock.connect("mbed.org", 80); |
abraha2d | 15:bf59021c6f53 | 24 | |
emilmont | 9:4757a976148d | 25 | char http_cmd[] = "GET /media/uploads/mbed_official/hello.txt HTTP/1.0\n\n"; |
emilmont | 11:59dcefdda506 | 26 | sock.send_all(http_cmd, sizeof(http_cmd)-1); |
abraha2d | 15:bf59021c6f53 | 27 | |
emilmont | 9:4757a976148d | 28 | char buffer[300]; |
donatien | 0:bb128f0e952f | 29 | int ret; |
emilmont | 7:65188f4a8c25 | 30 | while (true) { |
emilmont | 9:4757a976148d | 31 | ret = sock.receive(buffer, sizeof(buffer)-1); |
emilmont | 7:65188f4a8c25 | 32 | if (ret <= 0) |
emilmont | 7:65188f4a8c25 | 33 | break; |
emilmont | 9:4757a976148d | 34 | buffer[ret] = '\0'; |
abraha2d | 15:bf59021c6f53 | 35 | pc.printf("Received %d chars from server:\n%s\n", ret, buffer); |
emilmont | 7:65188f4a8c25 | 36 | } |
abraha2d | 15:bf59021c6f53 | 37 | |
emilmont | 7:65188f4a8c25 | 38 | sock.close(); |
abraha2d | 15:bf59021c6f53 | 39 | |
emilmont | 7:65188f4a8c25 | 40 | eth.disconnect(); |
abraha2d | 15:bf59021c6f53 | 41 | |
emilmont | 9:4757a976148d | 42 | while(1) {} |
donatien | 0:bb128f0e952f | 43 | } |