Haris Spahic Ensar Muratovic

Dependencies:   TSI mbed

Revision:
0:e4d9acb7caf8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu May 08 15:04:14 2014 +0000
@@ -0,0 +1,74 @@
+#include "mbed.h"
+#include "TSISensor.h"
+ 
+PwmOut r(LED1);
+PwmOut g(LED2);
+PwmOut b(LED3);
+ 
+Serial pc(USBTX, USBRX);
+TSISensor tsi;
+Ticker t1;
+char buf[100];
+int i=0;
+void upaliLedicu(char ledica, float intenzitet)
+{
+    if(ledica == 'R')
+    {
+        r = 1.0 - intenzitet;
+        g = 1.0;
+        b = 1.0;
+    }
+    
+    if(ledica == 'G')
+    {
+        r = 1.0;
+        g = 1.0 - intenzitet;
+        b = 1.0;
+    }
+    
+    if(ledica == 'B')
+    {
+        r = 1.0;
+        g = 1.0;
+        b = 1.0 - intenzitet;
+    }
+}
+void ispisiTSI()
+{
+    pc.printf("\nTSI: %f", tsi.readPercentage());
+}
+
+void detektuj()
+{
+    buf[i] = pc.getc();
+    i++;
+    if((buf[0] == 'R' or buf[0] == 'G' or buf[0] == 'B') and buf[1] >= '0' and buf[1] <= '9' and buf[2] >= '0' and buf[2] <= '9' and i == 3)
+    {
+        char ledica = buf[0];
+        float broj=(buf[1]-48)*10+(buf[2]-48);
+        
+        float intenzitet = 1-((99.0-broj)/99.0);
+        upaliLedicu(ledica, intenzitet);
+        i = 0;
+    }
+    
+    if(buf[0] == 'P' and i == 1)
+    {
+        i = 0;
+        t1.attach(&ispisiTSI, 1);
+    }
+    
+    if(buf[0] == 'Z' and i == 1)
+    {
+        i = 0;
+        t1.detach();
+    }
+}
+int main() {
+     r=1;
+     g=1;
+     b=1;
+     
+     pc.attach(&detektuj);
+
+}