mbed publishes real time up-to-date FTSE100 index data and posts it to a 7 segment multipurpose mbed breakout board
Dependencies: EthernetNetIf dispBoB mbed
Diff: FTSE100.cpp
- Revision:
- 1:10d951807d06
- Parent:
- 0:60eb2e98d56c
- Child:
- 2:0fa458722bc3
diff -r 60eb2e98d56c -r 10d951807d06 FTSE100.cpp --- a/FTSE100.cpp Wed Jul 06 10:20:18 2011 +0000 +++ b/FTSE100.cpp Wed Jul 06 12:24:53 2011 +0000 @@ -13,7 +13,7 @@ printf("Start\n\r"); printf("\r\nSetting up...\r\n"); - EthernetErr ethErr = eth.setup(); //Setup ethernet connection + EthernetErr ethErr = eth.setup(); //Setup ethernet connection if(ethErr) { printf("Error %d in setup.\n\r", ethErr); return -1; @@ -22,28 +22,28 @@ db.cls(); - HTTPText txt; //instantiate HTTPStream object + HTTPText txt; //instantiate HTTPStream object while(1){ HTTPResult r = http.get("http://www.mbed.webatu.com/dispBoBApp.php", &txt); //load page into buffer if(r==HTTP_OK){ - string str = txt.gets(); //fetch string and store in str + string str = txt.gets(); //fetch string and store in str - size_t length; //make some variables + size_t length; //make some variables char buffer[20]; - size_t found=str.find("<"); //tell me where < first appears + size_t found=str.find("<"); //tell me where '<' first appears if(found!=string::npos){ - length=str.copy(buffer,int(found),0); - buffer[length]='\0'; - string dispString = buffer; - db.scroll("FTSE100", 0.2); + length=str.copy(buffer,int(found),0); //copy everything from start of string up until '<' character and return length + buffer[length]='\0'; //null terminate my buffer + string dispString = buffer; //convert buffer from type char* to string + db.scroll("FTSE100", 0.2); //scroll "FTSE100" across the screen db.locate(0); - db.printf("%s", dispString); + db.printf("%s", dispString); //then print FTSE100 value to screen } } else { - pc.printf("Error\n\r"); + pc.printf("Error\n\r"); //just in case } - wait(2); + wait(2); //wait 2 seconds before looping, so we don't pester the servers too much } }