// You will need to install LC_baseTools
// from the library mamanger to compile this.
#include <mechButton.h>
#include <timeObj.h>
#define FWD_LED 5
#define BACK_LED 4
mechButton btnFWD(3);
mechButton btnBack(2);
timeObj pauseTimer(2000,false);
bool goFWD;
void setup() {
Serial.begin(115200);
pinMode(FWD_LED, OUTPUT);
pinMode(BACK_LED, OUTPUT);
btnFWD.setCallback(btnFWDClk);
btnBack.setCallback(btnBackClk);
goFWD = false;
}
void btnFWDClk(void) {
if (!btnFWD.getState()) {
digitalWrite(FWD_LED,LOW);
digitalWrite(BACK_LED,LOW);
pauseTimer.start();
goFWD = true;
}
}
void btnBackClk(void) {
if (!btnBack.getState()) {
digitalWrite(FWD_LED,LOW);
digitalWrite(BACK_LED,LOW);
pauseTimer.start();
goFWD = false;
}
}
void loop() {
idle();
if (pauseTimer.ding()) {
if (goFWD) {
digitalWrite(FWD_LED,HIGH);
} else {
digitalWrite(BACK_LED,HIGH);
}
pauseTimer.reset();
}
}