narasan

Dependencies:   mbed

Fork of kosyusya_recive by mbedを用いた制御学生の制御

Revision:
1:08767e2e643b
Parent:
0:7092b32c717c
Child:
2:31eb6fbb8119
--- a/main.cpp	Sat Jan 10 04:25:57 2015 +0000
+++ b/main.cpp	Tue Mar 10 01:30:52 2015 +0000
@@ -1,25 +1,23 @@
 #include "mbed.h"
 
-PwmOut moter[] = {p21,p22,p23,p24};
+PwmOut moter[] = {p23,p24};
 BusOut selecter(p5,p6,p7,p8,p9,p10,p11,p12);
 Serial pc(USBTX,USBRX);
-Serial mc(p13,p14);
+Serial mc(p28,p27);
 #define pi 3.141592
 
 int main() {
     uint8_t data_r1,data_r2,data_l1,data_l2,sw_data5,sw_data6,start;
-    double signal_r,signal_l,signal_a1,signal_a2,angle1,angle2;
+    double signal_r,signal_l;
     uint8_t select_r,select_l,select_all,check,checker;
-    int n,m,x,z;
+
     
     while(1){
         select_r = 0;
         select_l = 0;
         signal_r = 0;
         signal_l = 0;
-        signal_a1 = 0;
-        signal_a2 = 0;
-        if(mc.readable() == 1){
+        //if(mc.readable() == 1){
             start = mc.getc();
             data_r1 = mc.getc();
             data_r2 = mc.getc();
@@ -29,6 +27,7 @@
             sw_data6 = mc.getc();
             check = mc.getc();
             
+           // pc.printf("%u_%u_%u_%u_%u_%u_%u/n",start,data_r1,data_r2,data_l1,data_l2,sw_data5,sw_data6);
             if(start == 255){
                 if(data_r1 != 0){
                     signal_r = data_r1/200.0000;
@@ -46,68 +45,20 @@
                 }
                 checker = data_r1^data_r2^data_l1^data_l2^sw_data5^sw_data6;
                 select_all = sw_data5+sw_data6+select_r+select_l;
-                
-                if(sw_data5 == 1){
-                    n += 8;
-                    z = -90;
-                }else if(sw_data5/2 == 1){
-                    z += 8;
-                    n = -90;
-                }else if(sw_data5 == 0){
-                    n = -90;
-                    z = -90;
-                }
-                if((n+z+90) > -90 && (n+z+90) < 0){
-                    angle1 = (n+z+90)*pi/180;
-                    signal_a1 = (1.000+sin(angle1))/2;
-                }else if((n+z+90) == 0){
-                    signal_a1 = 0.500;
-                }else if((n+z+90) > 0 && (n+z+90) < 90){
-                    angle1 = (n+z+90)*pi/180.0;
-                    signal_a1 = sin(angle1)/2+0.5000;
-                }else if((n+z+90) > 89){
-                    signal_a1 = 1.000;
-                }else if(n == -90 && z == -90){
-                    signal_a1 = 0;
-                    angle1 = 0;
-                }
-                if(sw_data6/4 == 1){
-                    m += 8;
-                    x = -90;
-                }else if(sw_data6/8 == 1){
-                    x += 8;
-                    m = -90;
-                }else if(sw_data6 == 0){
-                    m = -90;
-                    x = -90;
-                }
-                if(m > -90 && m < 0 || x > -90 && x < 0){
-                    angle2 = (m+x+90)*pi/180;
-                    signal_a2 = (1.000+sin(angle2))/2;
-                }else if((m+x+90) == 0){
-                    signal_a2 = 0.500;
-                }else if(m > 0 && m < 90 || x > 0 && x < 90){
-                    angle2 = (m+x+90)*pi/180.0;
-                    signal_a2 = sin(angle2)/2+0.5000;
-                }else if((m+x+90) > 89){
-                    signal_a2 = 1.000;
-                }else if(m == -90 && x == -90){
-                    signal_a2 = 0;
-                    angle2 = 0;
-                }
-                
-                pc.printf("%f_%f_%d_%d_%d_%d\n",signal_a1,signal_a2,n,z,m,x);
-                //pc.printf("%f_%f_%u_%u_%u_%u\n",signal_r,signal_l,select_r,select_l,select_all,check);
+                                    
+                //pc.printf("%f_%f_%d_%d_%d_%d\n",signal_a1,signal_a2,n,z,m,x);
+                //pc.printf("%u_\n",start);
+                pc.printf("%u_%u_%u_%u_%u_%u_%u_%u\n",start,data_r1,data_r2,data_l1,data_l2,sw_data5,sw_data6,select_all);
                 //pc.printf("%u_%u\n",checker,check);
+                //pc.printf("%f_%f_%u_%u\n",signal_a1,signal_a2,sw_data5,sw_data6);
                 
                 if(check == checker){
-                    moter[2] = signal_r;
-                    moter[3] = signal_l;
-                    moter[0] = signal_a1;
-                    moter[1] = signal_a2;
+                    moter[0] = signal_r;
+                    moter[1] = signal_l;
                     selecter = select_all;
                 }
             }
-        }
+        }/*else if(mc.readable() == 0){//読むとゴキブリになる文
+            selecter = 0;
+        }*/
     }
-}
\ No newline at end of file