PLC

Dependencies:   EthernetInterface TCPSocket_HelloWorld TextLCD mbed-rtos mbed

Fork of TCPSocket_HelloWorld by mbed official

Committer:
twinkling
Date:
Mon May 12 04:59:42 2014 +0000
Revision:
14:5f6ba34353d9
Parent:
11:59dcefdda506
PLC;

Who changed what in which revision?

UserRevisionLine numberNew 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 }