Armin Klačar Josip Kvesić

Dependencies:   TSI mbed

Committer:
tim007
Date:
Thu May 08 14:27:02 2014 +0000
Revision:
0:d8a599049b1f
LV8-PAI-Grupa6-Tim007

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tim007 0:d8a599049b1f 1 #include "mbed.h"
tim007 0:d8a599049b1f 2 #include "TSISensor.h"
tim007 0:d8a599049b1f 3 #include <ctype.h>
tim007 0:d8a599049b1f 4
tim007 0:d8a599049b1f 5 Serial pc(USBTX, USBRX);
tim007 0:d8a599049b1f 6 TSISensor tsi;
tim007 0:d8a599049b1f 7 Ticker t;
tim007 0:d8a599049b1f 8 PwmOut led[3] = {LED1, LED2, LED3};
tim007 0:d8a599049b1f 9
tim007 0:d8a599049b1f 10 void dioda(char c)
tim007 0:d8a599049b1f 11 {
tim007 0:d8a599049b1f 12 char cnum1 = pc.getc();
tim007 0:d8a599049b1f 13 char cnum2 = pc.getc();
tim007 0:d8a599049b1f 14 int brightness;
tim007 0:d8a599049b1f 15 if ((!isdigit(cnum1))||(!isdigit(cnum1)))return;
tim007 0:d8a599049b1f 16 brightness = (cnum1-'0')*10 + (cnum2-'0');
tim007 0:d8a599049b1f 17 for(int i=0; i<3; i++) led[i]=1.0;
tim007 0:d8a599049b1f 18 switch(c)
tim007 0:d8a599049b1f 19 {
tim007 0:d8a599049b1f 20 case 'R':
tim007 0:d8a599049b1f 21 led[0]=1.0-brightness/100.0;
tim007 0:d8a599049b1f 22 break;
tim007 0:d8a599049b1f 23 case 'G':
tim007 0:d8a599049b1f 24 led[1]=1.0-brightness/100.0;
tim007 0:d8a599049b1f 25 break;
tim007 0:d8a599049b1f 26 case 'B':
tim007 0:d8a599049b1f 27 led[2]=1.0-brightness/100.0;
tim007 0:d8a599049b1f 28 break;
tim007 0:d8a599049b1f 29 }
tim007 0:d8a599049b1f 30 }
tim007 0:d8a599049b1f 31
tim007 0:d8a599049b1f 32 void write(){
tim007 0:d8a599049b1f 33 pc.printf("TSI: %.2f\n",tsi.readPercentage());
tim007 0:d8a599049b1f 34 }
tim007 0:d8a599049b1f 35
tim007 0:d8a599049b1f 36 void pcread()
tim007 0:d8a599049b1f 37 {
tim007 0:d8a599049b1f 38 if (!pc.readable()) return;
tim007 0:d8a599049b1f 39 char c = pc.getc();
tim007 0:d8a599049b1f 40 if(c=='R'||c=='G'||c=='B') dioda(c);
tim007 0:d8a599049b1f 41 else if (c=='P') t.attach(write,1.0);
tim007 0:d8a599049b1f 42 else if (c=='Z') t.detach();
tim007 0:d8a599049b1f 43 else return;
tim007 0:d8a599049b1f 44 }
tim007 0:d8a599049b1f 45
tim007 0:d8a599049b1f 46 int main()
tim007 0:d8a599049b1f 47 {
tim007 0:d8a599049b1f 48 for(int i=0; i<3; i++) led[i]=1.0;
tim007 0:d8a599049b1f 49 pc.attach(pcread);
tim007 0:d8a599049b1f 50 while(1);
tim007 0:d8a599049b1f 51 }