PLC
Dependencies: EthernetInterface TCPSocket_HelloWorld TextLCD mbed-rtos mbed
Fork of TCPSocket_HelloWorld by
main.cpp@14:5f6ba34353d9, 2014-05-12 (annotated)
- Committer:
- twinkling
- Date:
- Mon May 12 04:59:42 2014 +0000
- Revision:
- 14:5f6ba34353d9
- Parent:
- 11:59dcefdda506
PLC;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
donatien | 0:bb128f0e952f | 1 | #include "mbed.h" |
twinkling | 14:5f6ba34353d9 | 2 | #include "TextLCD.h" |
donatien | 0:bb128f0e952f | 3 | #include "EthernetInterface.h" |
twinkling | 14:5f6ba34353d9 | 4 | Serial pc(USBTX, USBRX); |
twinkling | 14:5f6ba34353d9 | 5 | DigitalOut led1(LED1); |
twinkling | 14:5f6ba34353d9 | 6 | DigitalOut led4(LED4); |
twinkling | 14:5f6ba34353d9 | 7 | TextLCD lcd(p24, p26, p27, p28, p29, p30); |
twinkling | 14:5f6ba34353d9 | 8 | EthernetInterface eth; |
twinkling | 14:5f6ba34353d9 | 9 | |
twinkling | 14:5f6ba34353d9 | 10 | TCPSocketConnection sock; |
twinkling | 14:5f6ba34353d9 | 11 | char http_cmd[] = "GET /test.txt"; |
twinkling | 14:5f6ba34353d9 | 12 | char buffer[200]; |
donatien | 0:bb128f0e952f | 13 | |
emilmont | 7:65188f4a8c25 | 14 | int main() { |
twinkling | 14:5f6ba34353d9 | 15 | eth.init("192.168.11.10", "255.255.255.0", "192.168.11.1"); |
twinkling | 14:5f6ba34353d9 | 16 | |
twinkling | 14:5f6ba34353d9 | 17 | while (1) |
twinkling | 14:5f6ba34353d9 | 18 | { |
twinkling | 14:5f6ba34353d9 | 19 | int i, j, k, ret; |
twinkling | 14:5f6ba34353d9 | 20 | eth.connect(); |
twinkling | 14:5f6ba34353d9 | 21 | sock.connect("192.168.11.26", 80); |
twinkling | 14:5f6ba34353d9 | 22 | sock.send_all(http_cmd, sizeof(http_cmd)-1); |
emilmont | 9:4757a976148d | 23 | ret = sock.receive(buffer, sizeof(buffer)-1); |
twinkling | 14:5f6ba34353d9 | 24 | lcd.cls(); |
twinkling | 14:5f6ba34353d9 | 25 | lcd.locate(0,0); |
twinkling | 14:5f6ba34353d9 | 26 | led4=1; wait(0.5); led4=0; wait(0.5); |
emilmont | 7:65188f4a8c25 | 27 | if (ret <= 0) |
twinkling | 14:5f6ba34353d9 | 28 | { |
twinkling | 14:5f6ba34353d9 | 29 | lcd.printf("error %d \n",ret); |
twinkling | 14:5f6ba34353d9 | 30 | } |
twinkling | 14:5f6ba34353d9 | 31 | else |
twinkling | 14:5f6ba34353d9 | 32 | { |
twinkling | 14:5f6ba34353d9 | 33 | led4=1; |
twinkling | 14:5f6ba34353d9 | 34 | lcd.printf("success \n"); |
twinkling | 14:5f6ba34353d9 | 35 | buffer[ret] = '\0'; |
twinkling | 14:5f6ba34353d9 | 36 | k=0; |
twinkling | 14:5f6ba34353d9 | 37 | for (i=0 ; buffer[i]!='\0' ; i++) |
twinkling | 14:5f6ba34353d9 | 38 | { |
twinkling | 14:5f6ba34353d9 | 39 | if (buffer[i]=='l' && buffer[i+1]=='e') |
twinkling | 14:5f6ba34353d9 | 40 | { |
twinkling | 14:5f6ba34353d9 | 41 | for (j=i+3; buffer[j]!='\0'; j++) |
twinkling | 14:5f6ba34353d9 | 42 | { |
twinkling | 14:5f6ba34353d9 | 43 | lcd.locate(k,1); |
twinkling | 14:5f6ba34353d9 | 44 | lcd.printf("%s",buffer[j]); |
twinkling | 14:5f6ba34353d9 | 45 | k++; |
twinkling | 14:5f6ba34353d9 | 46 | } |
twinkling | 14:5f6ba34353d9 | 47 | break; |
twinkling | 14:5f6ba34353d9 | 48 | /* for(int j=i; buffer[j]!='\0' ; j++) |
twinkling | 14:5f6ba34353d9 | 49 | { |
twinkling | 14:5f6ba34353d9 | 50 | lcd.printf("%s",buffer); |
twinkling | 14:5f6ba34353d9 | 51 | } |
twinkling | 14:5f6ba34353d9 | 52 | lcd.locate(0,1); |
twinkling | 14:5f6ba34353d9 | 53 | if(buffer[i+3]=='d') |
twinkling | 14:5f6ba34353d9 | 54 | { led4 = 1; |
twinkling | 14:5f6ba34353d9 | 55 | //lcd.printf("Detect \n"); |
twinkling | 14:5f6ba34353d9 | 56 | } |
twinkling | 14:5f6ba34353d9 | 57 | else if(buffer[i+3]=='u') |
twinkling | 14:5f6ba34353d9 | 58 | { led4 = 0; |
twinkling | 14:5f6ba34353d9 | 59 | //lcd.printf("Undetect \n"); |
twinkling | 14:5f6ba34353d9 | 60 | } |
twinkling | 14:5f6ba34353d9 | 61 | else break;*/ |
twinkling | 14:5f6ba34353d9 | 62 | } |
twinkling | 14:5f6ba34353d9 | 63 | } |
twinkling | 14:5f6ba34353d9 | 64 | } |
emilmont | 7:65188f4a8c25 | 65 | sock.close(); |
emilmont | 7:65188f4a8c25 | 66 | eth.disconnect(); |
twinkling | 14:5f6ba34353d9 | 67 | led4=0; |
twinkling | 14:5f6ba34353d9 | 68 | wait(1); |
twinkling | 14:5f6ba34353d9 | 69 | |
twinkling | 14:5f6ba34353d9 | 70 | //pc.printf("Received %d chars from server:\n%s\n", ret, buffer); |
twinkling | 14:5f6ba34353d9 | 71 | } |
donatien | 0:bb128f0e952f | 72 | } |