This application translates HTTP GET requests into the proper RS232 commands to control a Sharp Aquos TV
Dependencies: EthernetInterface mbed-rtos mbed
Diff: main.cpp
- Revision:
- 2:3637af74f7f0
- Parent:
- 0:427a14ebab60
--- a/main.cpp Tue Jul 29 23:10:14 2014 +0000 +++ b/main.cpp Sat Sep 06 23:47:21 2014 +0000 @@ -15,24 +15,36 @@ int main() { bool loop=true; DebugPort dbg; - dbg.setLED(0,1,1); //yellow for init - wait(0.1); + while(true) { + loop=true; + dbg.setLED(1,1,0); //yellow for init + wait(0.1); - AquosHTTP server(&dbg); - server.init(ip,mask,gateway); - AquosTV tv(&dbg); - + AquosTV tv(&dbg); + AquosHTTP server(&dbg,&tv); + server.init(ip,mask,gateway); - while(loop) { - dbg.setLED(0,0,0); //off while waiting - server.waitForRequest(); - dbg.setLED(0,0,1); //blue in progress - if( tv.processCommand( server.getRequest() )) { - dbg.setLED(0,1,0); - server.returnSuccess(); - } else { - dbg.setLED(1,0,0); - server.returnFailure(); + while(loop) { + dbg.setLED(0,0,0); //off while waiting + server.waitForRequest(); + dbg.setLED(0,0,1); //blue in progress + if( strncmp(server.getRequest(),"GET /help",9)==0) { + dbg.setLED(0,1,0); + server.returnHelp(); + } + else { + if( tv.processCommand( server.getRequest() )) { + dbg.setLED(0,1,0); + dbg.send("Command Success!\n\r"); + server.returnSuccess(); + } + else { + dbg.setLED(1,0,0); + dbg.send("Command Fail!\n\r"); + server.returnFailure(); + } + } + loop=(dbg.level()==0); } } }