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

Committer:
d_worrall
Date:
Wed Jul 06 10:20:18 2011 +0000
Revision:
0:60eb2e98d56c
Child:
1:10d951807d06
version1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
d_worrall 0:60eb2e98d56c 1 #include "mbed.h"
d_worrall 0:60eb2e98d56c 2 #include "EthernetNetIf.h"
d_worrall 0:60eb2e98d56c 3 #include "HTTPClient.h"
d_worrall 0:60eb2e98d56c 4 #include "dispBoB.h"
d_worrall 0:60eb2e98d56c 5
d_worrall 0:60eb2e98d56c 6 EthernetNetIf eth;
d_worrall 0:60eb2e98d56c 7 HTTPClient http;
d_worrall 0:60eb2e98d56c 8 Serial pc(USBTX, USBRX);
d_worrall 0:60eb2e98d56c 9 dispBoB db(p28, p27, p26);
d_worrall 0:60eb2e98d56c 10
d_worrall 0:60eb2e98d56c 11 int main() {
d_worrall 0:60eb2e98d56c 12
d_worrall 0:60eb2e98d56c 13 printf("Start\n\r");
d_worrall 0:60eb2e98d56c 14 printf("\r\nSetting up...\r\n");
d_worrall 0:60eb2e98d56c 15
d_worrall 0:60eb2e98d56c 16 EthernetErr ethErr = eth.setup(); //Setup ethernet connection
d_worrall 0:60eb2e98d56c 17 if(ethErr) {
d_worrall 0:60eb2e98d56c 18 printf("Error %d in setup.\n\r", ethErr);
d_worrall 0:60eb2e98d56c 19 return -1;
d_worrall 0:60eb2e98d56c 20 }
d_worrall 0:60eb2e98d56c 21 printf("\r\nSetup OK\r\n");
d_worrall 0:60eb2e98d56c 22
d_worrall 0:60eb2e98d56c 23 db.cls();
d_worrall 0:60eb2e98d56c 24
d_worrall 0:60eb2e98d56c 25 HTTPText txt; //instantiate HTTPStream object
d_worrall 0:60eb2e98d56c 26 while(1){
d_worrall 0:60eb2e98d56c 27 HTTPResult r = http.get("http://www.mbed.webatu.com/dispBoBApp.php", &txt); //load page into buffer
d_worrall 0:60eb2e98d56c 28 if(r==HTTP_OK){
d_worrall 0:60eb2e98d56c 29 string str = txt.gets(); //fetch string and store in str
d_worrall 0:60eb2e98d56c 30
d_worrall 0:60eb2e98d56c 31 size_t length; //make some variables
d_worrall 0:60eb2e98d56c 32 char buffer[20];
d_worrall 0:60eb2e98d56c 33
d_worrall 0:60eb2e98d56c 34 size_t found=str.find("<"); //tell me where < first appears
d_worrall 0:60eb2e98d56c 35 if(found!=string::npos){
d_worrall 0:60eb2e98d56c 36 length=str.copy(buffer,int(found),0);
d_worrall 0:60eb2e98d56c 37 buffer[length]='\0';
d_worrall 0:60eb2e98d56c 38 string dispString = buffer;
d_worrall 0:60eb2e98d56c 39 db.scroll("FTSE100", 0.2);
d_worrall 0:60eb2e98d56c 40 db.locate(0);
d_worrall 0:60eb2e98d56c 41 db.printf("%s", dispString);
d_worrall 0:60eb2e98d56c 42 }
d_worrall 0:60eb2e98d56c 43 } else {
d_worrall 0:60eb2e98d56c 44 pc.printf("Error\n\r");
d_worrall 0:60eb2e98d56c 45 }
d_worrall 0:60eb2e98d56c 46 wait(2);
d_worrall 0:60eb2e98d56c 47 }
d_worrall 0:60eb2e98d56c 48 }
d_worrall 0:60eb2e98d56c 49
d_worrall 0:60eb2e98d56c 50
d_worrall 0:60eb2e98d56c 51
d_worrall 0:60eb2e98d56c 52
d_worrall 0:60eb2e98d56c 53
d_worrall 0:60eb2e98d56c 54
d_worrall 0:60eb2e98d56c 55
d_worrall 0:60eb2e98d56c 56