xszdx
Dependencies: mbed TCS3472_I2C MCP23017 VL6180 DebounceIn WattBob_TextLCD
Revision 2:7c34106159c8, committed 2020-03-15
- Comitter:
- maazshaikh
- Date:
- Sun Mar 15 14:35:32 2020 +0000
- Parent:
- 1:ad7134c4e365
- Commit message:
- jj
Changed in this revision
main_copy.cpp | Show annotated file Show diff for this revision Revisions of this file |
diff -r ad7134c4e365 -r 7c34106159c8 main_copy.cpp --- a/main_copy.cpp Fri Mar 06 12:35:11 2020 +0000 +++ b/main_copy.cpp Sun Mar 15 14:35:32 2020 +0000 @@ -18,6 +18,15 @@ VL6180 TOF_sensor(p28, p27); TCS3472_I2C rgb_sensor(p9, p10); +DigitalOut servo11 (p8); DigitalOut servo12 (p7); +DigitalOut servo13 (p6); DigitalOut servo14 (p5); + +DigitalOut servo21 (p29); DigitalOut servo22 (p23); +DigitalOut servo23 (p22); DigitalOut servo24 (p21); + +DigitalOut servo31 (p26); DigitalOut servo32 (p25); +DigitalOut servo33 (p12); DigitalOut servo34 (p11); + DigitalOut myled1 (p13); DigitalOut myled2 (p14); DigitalOut myled3 (p15); DigitalOut myled4 (p16); @@ -41,10 +50,12 @@ void LEDgame(); //function prototype of LED game void reset(); //to reset level void light(int); //turn on LEDs +void Maint(); // maintainence mode int Dist(); //check distance sensor int MAX(int,int,int); //find max rgb value int main() + { pb1.mode(PullUp); pb2.mode(PullUp); pb3.mode(PullUp); pb4.mode(PullUp); @@ -54,14 +65,13 @@ par_port->config(0x0F00, 0x0F00, 0x0F00); //configure MCP23017 chip on WattBob lcd = new WattBob_TextLCD(par_port); BACK_LIGHT_ON(par_port); - TOF_sensor.VL6180_Init(); rgb_sensor.enablePowerAndRGBC(); rgb_sensor.setIntegrationTime(100); - int rgb_read[4], maxrgb; - //char c = PC.getc(); - //(c == 'o') + while (1){ + char c = PC.getc(); + if (c == 'o'){ while(1) { rgb_sensor.getAllColors(rgb_read); @@ -75,11 +85,79 @@ tries = 1; LEDgame(); } - if (Dist() > D) level = 1; //resets game if card is removed. + if (Dist() > D) { + level = 1; + myled1=0; myled2=0; myled3=0; myled4=0; + } //resets game if card is removed. } } - + else if (c== 'm'){ + while (1){ + char d = PC.getc(); + if (d=='D') {PC.printf("%d", Dist());} + if (d=='C'){ + rgb_sensor.getAllColors(rgb_read); + maxrgb = MAX(rgb_read[1],rgb_read[2],rgb_read[3]); + if (maxrgb == rgb_read[1]) PC.puts("Red"); + else if (maxrgb == rgb_read[2]) PC.puts("Green"); + else if (maxrgb == rgb_read[3]) PC.puts("Blue"); + } + else if (d=='r') myled1=1; + else if (d=='y') myled2=1; + else if (d=='g') myled3=1; + else if (d=='w') myled4=1; + else if (d=='s') {LEDgame();} + else if (d=='d') {myled1=0; myled2=0; myled3=0; myled4=0; } + else if (d=='o'){ + while(1){ + char p=PC.getc(); + if (p=='f') servo11=1; + else if (p=='s') servo12=1; + else if (p=='t') servo13=1; + else if (p=='F') servo14=1; + else if (p=='R'){ + servo11=0; servo12=0; servo13=0; servo14=0; + break; + } + } + } + else if (d=='S'){ + while(1){ + char p=PC.getc(); + if (p=='f') servo21=1; + else if (p=='s') servo22=1; + else if (p=='t') servo23=1; + else if (p=='F') servo24=1; + else if (p=='R'){ + servo21=0; servo22=0; servo23=0; servo24=0; + break; + } + } + } + else if (d=='t'){ + while(1){ + char p=PC.getc(); + if (p=='f') servo31=1; + else if (p=='s') servo32=1; + else if (p=='t') servo33=1; + else if (p=='F') servo34=1; + else if (p=='R'){ + servo31=0; servo32=0; servo33=0; servo34=0; + break; + } + } + } + + + else if (d=='R') {break;} + + + +} +} +} +} void LEDgame() { @@ -178,4 +256,6 @@ else max = G; if (B > max) max = B; return max; -} \ No newline at end of file +} + +