SimpleSocket 1.0 examples
Dependencies: EthernetNetIf SimpleSocket 1.0 mbed
examples/echoclient.cpp@40:84182fc63956, 2013-02-04 (annotated)
- Committer:
- yamaguch
- Date:
- Mon Feb 04 09:04:25 2013 +0000
- Revision:
- 40:84182fc63956
- Parent:
- echoclient.cpp@39:108499af2b53
changed SimpleSocket libary name to SimpleSocketV1
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
yamaguch | 39:108499af2b53 | 1 | #include "EthernetNetIf.h" |
yamaguch | 39:108499af2b53 | 2 | #include "SimpleSocket.h" |
yamaguch | 39:108499af2b53 | 3 | |
yamaguch | 39:108499af2b53 | 4 | void echoclient() { |
yamaguch | 39:108499af2b53 | 5 | EthernetNetIf eth; |
yamaguch | 39:108499af2b53 | 6 | eth.setup(); |
yamaguch | 39:108499af2b53 | 7 | |
yamaguch | 39:108499af2b53 | 8 | printf("Echo server => "); |
yamaguch | 39:108499af2b53 | 9 | char server[32]; |
yamaguch | 39:108499af2b53 | 10 | scanf("%s", server); |
yamaguch | 39:108499af2b53 | 11 | |
yamaguch | 39:108499af2b53 | 12 | ClientSocket socket(server, 1234); |
yamaguch | 39:108499af2b53 | 13 | |
yamaguch | 39:108499af2b53 | 14 | if (socket) { |
yamaguch | 39:108499af2b53 | 15 | char message[80] = {}; |
yamaguch | 39:108499af2b53 | 16 | printf("Enter message => "); |
yamaguch | 39:108499af2b53 | 17 | int c = 0; |
yamaguch | 39:108499af2b53 | 18 | while (c < ' ' || 0x7E < c) |
yamaguch | 39:108499af2b53 | 19 | c = getc(stdin); |
yamaguch | 39:108499af2b53 | 20 | ungetc(c, stdin); |
yamaguch | 39:108499af2b53 | 21 | for (int i = 0; i < sizeof(message) - 1 && (c = getc(stdin)) >= ' '; i++) |
yamaguch | 39:108499af2b53 | 22 | message[i] = c; |
yamaguch | 39:108499af2b53 | 23 | |
yamaguch | 39:108499af2b53 | 24 | socket.printf("%s", message); |
yamaguch | 39:108499af2b53 | 25 | |
yamaguch | 39:108499af2b53 | 26 | // wait until data is received |
yamaguch | 39:108499af2b53 | 27 | while (!socket.available()) |
yamaguch | 39:108499af2b53 | 28 | ; |
yamaguch | 39:108499af2b53 | 29 | printf("Received: "); |
yamaguch | 39:108499af2b53 | 30 | |
yamaguch | 39:108499af2b53 | 31 | while (socket.available()) { |
yamaguch | 39:108499af2b53 | 32 | char buf[128]; |
yamaguch | 39:108499af2b53 | 33 | int len = socket.read(buf, sizeof(buf) - 1); |
yamaguch | 39:108499af2b53 | 34 | buf[len] = '\0'; |
yamaguch | 39:108499af2b53 | 35 | printf("%s", buf); |
yamaguch | 39:108499af2b53 | 36 | } |
yamaguch | 39:108499af2b53 | 37 | printf("\nClosing...\n"); |
yamaguch | 39:108499af2b53 | 38 | socket.close(); |
yamaguch | 39:108499af2b53 | 39 | } |
yamaguch | 39:108499af2b53 | 40 | printf("Done.\n"); |
yamaguch | 39:108499af2b53 | 41 | } |