中継機能つけた受け取りオムニ

Dependencies:   mbed MultiSerial

Revision:
36:bacc260185d6
Parent:
35:78f5eec4f36c
Child:
37:53f8b2c0bad6
diff -r 78f5eec4f36c -r bacc260185d6 main.cpp
--- a/main.cpp	Tue Oct 14 09:00:24 2014 +0000
+++ b/main.cpp	Tue Oct 14 10:12:10 2014 +0000
@@ -44,7 +44,7 @@
 MultiSerial xbee(p28,p27);
 MultiSerial armMbed(p9,p10);
 
-Timer xbee_check;
+Ticker xbee_check;
 
 /* data structure */
 typedef struct {
@@ -100,55 +100,35 @@
 
 int main()
 {
-
+        
     /* PWM init */
     pwm[0] = PWM;
     pwm[1] = PWM;
     pwm[2] = PWM;
     pwm[3] = PWM;
-
-    /* Timer init*/
-    xbee_check.start();
+    
+    /* Timer interrupt init */
+    xbee_check.attach(safety_mode,1.0);
     
     /* stract data init */
     xbee_packet *pt_packet=&packet;
     
     /* Serial connection init */
     
-        xbee.start_read();
-        xbee.read_data(get_data,XBEE_KEY);
+    xbee.start_read();
+    xbee.read_data(get_data,XBEE_KEY);
 
-        armMbed.start_write();
-        armMbed.write_data(pt_packet->arm,ARM_KEY);
+    armMbed.start_write();
+    armMbed.write_data(pt_packet->arm,ARM_KEY);
 
-        display_LED(1);
+    display_LED(1);
         
-        if(xbee.check_rx()==0){
-        
-            NVIC_SystemReset();    
-            
-            }
-    
-        
-        // NVIC_DisableIRQ(UART1_IRQn);
-        // NVIC_DisableIRQ(UART0_IRQn);
+    xbee.check_rx_wait();
 
     for(;;) {
         
-        xbee_check.reset();
-        xbee_check.start();
-        
-               
-        if(xbee_check.read()>=1)
-        { 
-        
-        safety_mode();
-        
-        xbee_check.stop();
-        xbee_check.reset();
-        xbee_check.start();
-        
-        }
+
+
         packet.arm[0] = get_data[1];
         packet.leg = get_data[0]; 
 
@@ -181,5 +161,6 @@
         if(packet.leg&L_R) motors = 0x99; //10011001
         //if(packet.leg&L_U)
         //if(packet.leg&L_D)
+        
     }
 }
\ No newline at end of file