Linesensor

Dependencies:   mbed

Fork of BERTL14_LINESENSOR by Wolfgang Raimann

Revision:
1:9e097feb3b19
Parent:
0:acfdc7c80165
--- a/main.cpp	Tue May 20 06:59:40 2014 +0000
+++ b/main.cpp	Wed Jun 17 14:10:02 2015 +0000
@@ -1,23 +1,79 @@
-/***********************************
-name:   BERTL14_LINESENSOR
-author: Wolfgang Raimann
-email:  rai@bulme.at
-description:
-    Die vier Sensoren auf der Unterseite werden auf die LEDs D10-D13 durchgeschaltet
-***********************************/
 
 #include "mbed.h"
 
 DigitalOut myled(LED1);
 
+DigitalOut MotorL_EN(p34);
+DigitalOut MotorL_FORWARD(P1_0);
+DigitalOut MotorL_REVERSE(P1_1);
+ 
+DigitalOut MotorR_EN(p36);
+DigitalOut MotorR_FORWARD(P1_3);
+DigitalOut MotorR_REVERSE(P1_4);
 
 BusIn linesensor(p18, p16, p19, p17);
 
 BusOut leds(LED1, LED2, LED3, LED4);
 
 
-int main() {
-    while(1) {
+int main() 
+{       
+while (1)
+{
+        leds = linesensor;
+        
+        while (linesensor == 0x0)
+        {
+        MotorL_FORWARD = 0;    
+        MotorR_REVERSE = 0;
+        MotorL_REVERSE = 1;
+        MotorR_FORWARD = 1;
+        MotorL_EN = 1;
+        MotorR_EN = 1;    
+        
+        leds = linesensor;     
+        }
+        
+        while (linesensor == 0xC || linesensor == 0x8)
+        {
+        MotorL_FORWARD = 0;    
+        MotorR_FORWARD = 0;
+        MotorL_REVERSE = 1;
+        MotorR_REVERSE = 1;
+        MotorL_EN = 1;
+        MotorR_EN = 1; 
+        
+        wait (0.3);
+        
         leds = linesensor;
-    }
+        }  
+        
+        while (linesensor == 0x3 || linesensor == 0x1)
+        {
+        MotorL_FORWARD = 1;    
+        MotorR_FORWARD = 1;
+        MotorL_REVERSE = 0;
+        MotorR_REVERSE = 0;
+        MotorL_EN = 1;
+        MotorR_EN = 1; 
+        
+        wait (0.3);
+        
+        leds = linesensor;
+        }  
+        
+         while (linesensor == 0x6)
+        {
+        MotorL_FORWARD = 1;    
+        MotorR_REVERSE = 1;
+        MotorL_REVERSE = 0;
+        MotorR_FORWARD = 0;
+        MotorL_EN = 1;
+        MotorR_EN = 1;    
+        
+        leds = linesensor;     
+        }
+                      
 }
+}
+