2015 robotic contest arakawa A / Mbed 2 deprecated Nucleo_PS3_Jikken_new

Dependencies:   mbed

Fork of Nucleo_PS3_Jikken_XBEE by 2015 robotic contest arakawa A

Revision:
35:c84d6d9bb205
Parent:
34:ac46b7f2ace7
Child:
36:ffc35cee92d3
diff -r ac46b7f2ace7 -r c84d6d9bb205 main.cpp
--- a/main.cpp	Tue Nov 10 10:46:12 2015 +0000
+++ b/main.cpp	Mon Nov 16 11:32:45 2015 +0000
@@ -234,7 +234,6 @@
     Green=0;Blue=0;Red=0;
     double gValue=0,bValue=0,rValue=0;
     DigitalOut l(PB_2);
-    DigitalOut l2(PB_1);
     int sqf=0;
     double deg=32;
     int val;
@@ -245,22 +244,18 @@
     while(true)
     {           
         do{
-            bool l=getBt(btL),r=getBt(btR),t=getBt(btTri);
-            if(!l&&!r&&!t)
+            bool l=getBt(btL),r=getBt(btR),t=getBt(btTri),c=getBt(btCro);
+            if(!l&&!r&&!t&&!c)
                 pushF=false;
             if(pushF||!obonFlag){
-                if(!obonFlag){
-                    kRed=shotToDenziben(airReg,1,1,airAddr2);
-                    wait(0.01);
-                }
                 break;
             }
                 
-            //射出
+            //射出(自陣)
             if(l){
                 //pc.printf("L\r\n");
                 pushF=true;
-                kRed=shotToDenziben(airReg,2,1,airAddr2);
+                kRed=shotToDenziben(airReg,1,1,airAddr2);
                 wait(0.2);
                 kRed=shotToDenziben(airReg,1,1,airAddr);
                 wait(shotWait);
@@ -268,17 +263,37 @@
                 kRed=0;
             }
             
-            //射出
+            //射出(中央)
             else if(r){
                 //pc.printf("R\r\n");
                 pushF=true;
-                kRed=shotToDenziben(airReg,6,1,airAddr);
+                kRed=shotToDenziben(airReg,2,1,airAddr);
                 wait(shotWait);
                 kRed=shotToDenziben(airReg,0,1,airAddr);
                 //printf("shot:%d\r\n",i2cS=i2c.write(airAddr,cmd,2));
                 //i2c.write(airAddr,cmd,2);
                 kRed=0;
             }
+            
+            //射出(相手)
+            else if(t){
+                pushF=true;
+                kRed=shotToDenziben(airReg,4,1,airAddr);
+                wait(shotWait);
+                shotToDenziben(airReg,0,1,airAddr);
+                kRed=0;
+            }
+            
+            //射出(中央相手同時)
+            else if(c){
+                pushF=true;
+                kRed=shotToDenziben(airReg,6,1,airAddr);
+                wait(shotWait);
+                shotToDenziben(airReg,0,1,airAddr);
+                kRed=0;
+            }
+                
+                
         }while(false);
         
         //レーザーポインタ
@@ -292,12 +307,12 @@
             
         //タッチセンサ
         if(((int)DATA[1]&12)==12&&!touchSF){
-            l2=1;
+            kGreen=1;
             touchSF=true;
             gValue=0.5;
         }
         else if(!(((int)DATA[1]&12)==12)){
-            l2=0;
+            kGreen=0;
             touchSF=false;
             gValue=0;
         }