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
Diff: test.cpp
- Revision:
- 17:2df9861f53ee
- Parent:
- 16:8eaa5bc2bdb1
- Child:
- 18:b65fbb795396
diff -r 8eaa5bc2bdb1 -r 2df9861f53ee test.cpp --- a/test.cpp Mon Feb 24 01:26:00 2014 +0000 +++ b/test.cpp Mon Feb 24 01:38:55 2014 +0000 @@ -12,39 +12,26 @@ #include "reckoner.h" #include "buttons.h" -#include <GeneralDebouncer.h> // tmphax -extern GeneralDebouncer button1Debouncer; // tmphax - +void __attribute__((noreturn)) driveHome(); void printBar(const char * name, uint16_t adcResult); -void testDriveHomoe() +void testDriveHome() { - led1 = 1; - + led1 = 1; + while(button1DefinitelyPressed()) + { + updateReckonerFromEncoders(); + } + driveHome(); } + void testButtons() { led1 = 1; - Pacer reportPacer(100000); - - while(!button1DefinitelyReleased()) - { - if (false && reportPacer.pace()) - { - pc.printf("%1d %11d %11d %11d %11d\r\n", - button1Debouncer.firstReportReceived, - button1Debouncer.maxUpdateIntervalMicroseconds, - button1Debouncer.lastReportTimeMicroseconds, - button1Debouncer.spanBeginTimeMicroseconds, - button1Debouncer.currentState - ); - } - } - while(!button1DefinitelyPressed()) - { - } + while(!button1DefinitelyReleased()); + while(!button1DefinitelyPressed()); led2 = 1; while(!button1DefinitelyReleased());