David's dead reckoning code for the LVBots competition on March 6th. Uses the mbed LPC1768, DRV8835, QTR-3RC, and two DC motors with encoders.

Dependencies:   PololuEncoder Pacer mbed GeneralDebouncer

Revision:
17:2df9861f53ee
Parent:
16:8eaa5bc2bdb1
Child:
18:b65fbb795396
--- a/main.cpp	Mon Feb 24 01:26:00 2014 +0000
+++ b/main.cpp	Mon Feb 24 01:38:55 2014 +0000
@@ -23,7 +23,8 @@
     //testEncoders();
     //testLineSensors();
     //testReckoner();
-    testButtons();
+    //testButtons();
+    testDriveHome();
 
     while(1)
     {
@@ -31,6 +32,15 @@
     }
 }
 
+void __attribute__((noreturn)) driveHome()
+{
+    led1 = 1; led2 = 1; led3 = 0; led4 = 0;
+    while(1)
+    {
+        
+    }
+}
+
 void updateReckonerFromEncoders()
 {
     while(encoderBuffer.hasEvents())
@@ -38,19 +48,19 @@
         PololuEncoderEvent event = encoderBuffer.readEvent();
         switch(event)
         {
-            case ENCODER_LEFT | POLOLU_ENCODER_EVENT_INC:
-                reckoner.handleTickLeftForward();
-                break;
-            case ENCODER_LEFT | POLOLU_ENCODER_EVENT_DEC:
-                reckoner.handleTickLeftBackward();
-                break;
-            case ENCODER_RIGHT | POLOLU_ENCODER_EVENT_INC:
-                reckoner.handleTickRightForward();
-                break;
-            case ENCODER_RIGHT | POLOLU_ENCODER_EVENT_DEC:
-                reckoner.handleTickRightBackward();
-                break;
-                   
+        case ENCODER_LEFT | POLOLU_ENCODER_EVENT_INC:
+            reckoner.handleTickLeftForward();
+            break;
+        case ENCODER_LEFT | POLOLU_ENCODER_EVENT_DEC:
+            reckoner.handleTickLeftBackward();
+            break;
+        case ENCODER_RIGHT | POLOLU_ENCODER_EVENT_INC:
+            reckoner.handleTickRightForward();
+            break;
+        case ENCODER_RIGHT | POLOLU_ENCODER_EVENT_DEC:
+            reckoner.handleTickRightBackward();
+            break;
         }
     }
 }
+