This application translates HTTP GET requests into the proper RS232 commands to control a Sharp Aquos TV

Dependencies:   EthernetInterface mbed-rtos mbed

Revision:
0:427a14ebab60
Child:
2:3637af74f7f0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/DebugPort.h	Tue Jul 29 23:01:55 2014 +0000
@@ -0,0 +1,52 @@
+#ifndef _DebugPort
+#define _DebugPort
+#include "mbed.h"
+
+class DebugPort {
+    protected:
+        //Serial m_pc(USBTX, USBRX);
+        Serial* m_pc;
+        DigitalOut* led_red;
+        DigitalOut* led_green;
+        DigitalOut* led_blue;
+        
+    public:
+        void setLED(bool r, bool g, bool b) {    
+            *led_red = !r;
+            *led_green = !g;
+            *led_blue = !b;
+        }
+        
+        DebugPort() {
+            m_pc = new Serial(USBTX,USBRX);
+            led_red = new DigitalOut(LED_RED);
+            led_green = new DigitalOut(LED_GREEN);
+            led_blue = new DigitalOut(LED_BLUE);
+        
+            m_pc->baud(115200);
+            m_pc->format(8,SerialBase::None,1);
+            setbuf(*m_pc,NULL);  // turn off buffering of printf output
+            setLED(0,0,0);
+        }
+        ~DebugPort() {
+            delete led_red;
+            delete led_green;
+            delete led_blue;
+            delete m_pc;
+        }
+        void send(const char* msg, int level=0) {
+            m_pc->printf(msg);
+            if(level>0) {  // major fail.  stop processing and toggle led
+                while(true) {
+                    setLED(0,0,0);
+                    wait(0.1);
+                    setLED(1,0,0);
+                    wait(0.1);
+                }
+            }
+        }
+       
+};
+    
+    
+#endif
\ No newline at end of file