Omerovic Mirza Kicin Adnan

Dependencies:   TSI mbed

main.cpp

Committer:
tim003
Date:
2014-05-05
Revision:
0:0fbe88248a46

File content as of revision 0:0fbe88248a46:

#include "mbed.h"
#include "TSISensor.h"
#include <string>

Serial pc(USBTX, USBRX); 
PwmOut crvena(LED_RED), zelena(LED_GREEN), plava(LED_BLUE);
TSISensor senzor;
Ticker tiker;

string unos = "";
bool mjerenje = false;

bool daLiJeBroj(char znak) {
    return znak >= '0' && znak <= '9';
}

void prikaziStatus() {
    if(mjerenje==true)
        pc.printf("Sad je vako: %f\n", senzor.readPercentage());
}

int main() {
    
    crvena = 1.;
    zelena = 1.;
    plava = 1.;
   
    
    while(1) {
        unos.push_back(pc.getc());
        if(unos.length() == 3) {
            if(daLiJeBroj(unos[1])==false || daLiJeBroj(unos[2])==false)
                unos = "";
            float intenzitet = ((unos[2] - '0') + 10 * (unos[1] - '0')) / 100.;
            if(unos[0]=='R') {
                crvena = 1 - intenzitet;
                unos = "";
            }
            else if(unos[0]=='G')
            {
                zelena = 1 - intenzitet;
                unos = "";
            }
            else if (unos[0]=='B')
            {
                plava = 1 - intenzitet;
                unos = "";
            }
            else unos = "";
    }
        else if(unos[unos.length()-1] == 'P') {
            unos="";
            mjerenje = true;
             tiker.attach(prikaziStatus, 1.);
        } else if(unos[unos.length()-1] == 'Z') {
           unos="";
           mjerenje = false;
           tiker.detach();
        }
    }
    

    return 0; 
}