Omerovic Mirza Kicin Adnan

Dependencies:   TSI mbed

Committer:
tim003
Date:
Mon May 05 15:30:09 2014 +0000
Revision:
0:0fbe88248a46
PAI-LV8-Tim003-Grupa3; ; ;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tim003 0:0fbe88248a46 1 #include "mbed.h"
tim003 0:0fbe88248a46 2 #include "TSISensor.h"
tim003 0:0fbe88248a46 3 #include <string>
tim003 0:0fbe88248a46 4
tim003 0:0fbe88248a46 5 Serial pc(USBTX, USBRX);
tim003 0:0fbe88248a46 6 PwmOut crvena(LED_RED), zelena(LED_GREEN), plava(LED_BLUE);
tim003 0:0fbe88248a46 7 TSISensor senzor;
tim003 0:0fbe88248a46 8 Ticker tiker;
tim003 0:0fbe88248a46 9
tim003 0:0fbe88248a46 10 string unos = "";
tim003 0:0fbe88248a46 11 bool mjerenje = false;
tim003 0:0fbe88248a46 12
tim003 0:0fbe88248a46 13 bool daLiJeBroj(char znak) {
tim003 0:0fbe88248a46 14 return znak >= '0' && znak <= '9';
tim003 0:0fbe88248a46 15 }
tim003 0:0fbe88248a46 16
tim003 0:0fbe88248a46 17 void prikaziStatus() {
tim003 0:0fbe88248a46 18 if(mjerenje==true)
tim003 0:0fbe88248a46 19 pc.printf("Sad je vako: %f\n", senzor.readPercentage());
tim003 0:0fbe88248a46 20 }
tim003 0:0fbe88248a46 21
tim003 0:0fbe88248a46 22 int main() {
tim003 0:0fbe88248a46 23
tim003 0:0fbe88248a46 24 crvena = 1.;
tim003 0:0fbe88248a46 25 zelena = 1.;
tim003 0:0fbe88248a46 26 plava = 1.;
tim003 0:0fbe88248a46 27
tim003 0:0fbe88248a46 28
tim003 0:0fbe88248a46 29 while(1) {
tim003 0:0fbe88248a46 30 unos.push_back(pc.getc());
tim003 0:0fbe88248a46 31 if(unos.length() == 3) {
tim003 0:0fbe88248a46 32 if(daLiJeBroj(unos[1])==false || daLiJeBroj(unos[2])==false)
tim003 0:0fbe88248a46 33 unos = "";
tim003 0:0fbe88248a46 34 float intenzitet = ((unos[2] - '0') + 10 * (unos[1] - '0')) / 100.;
tim003 0:0fbe88248a46 35 if(unos[0]=='R') {
tim003 0:0fbe88248a46 36 crvena = 1 - intenzitet;
tim003 0:0fbe88248a46 37 unos = "";
tim003 0:0fbe88248a46 38 }
tim003 0:0fbe88248a46 39 else if(unos[0]=='G')
tim003 0:0fbe88248a46 40 {
tim003 0:0fbe88248a46 41 zelena = 1 - intenzitet;
tim003 0:0fbe88248a46 42 unos = "";
tim003 0:0fbe88248a46 43 }
tim003 0:0fbe88248a46 44 else if (unos[0]=='B')
tim003 0:0fbe88248a46 45 {
tim003 0:0fbe88248a46 46 plava = 1 - intenzitet;
tim003 0:0fbe88248a46 47 unos = "";
tim003 0:0fbe88248a46 48 }
tim003 0:0fbe88248a46 49 else unos = "";
tim003 0:0fbe88248a46 50 }
tim003 0:0fbe88248a46 51 else if(unos[unos.length()-1] == 'P') {
tim003 0:0fbe88248a46 52 unos="";
tim003 0:0fbe88248a46 53 mjerenje = true;
tim003 0:0fbe88248a46 54 tiker.attach(prikaziStatus, 1.);
tim003 0:0fbe88248a46 55 } else if(unos[unos.length()-1] == 'Z') {
tim003 0:0fbe88248a46 56 unos="";
tim003 0:0fbe88248a46 57 mjerenje = false;
tim003 0:0fbe88248a46 58 tiker.detach();
tim003 0:0fbe88248a46 59 }
tim003 0:0fbe88248a46 60 }
tim003 0:0fbe88248a46 61
tim003 0:0fbe88248a46 62
tim003 0:0fbe88248a46 63 return 0;
tim003 0:0fbe88248a46 64 }