Code for autonomous rover for Sparkfun AVC. DataBus won 3rd in 2012 and the same code was used on Troubled Child, a 1986 Jeep Grand Wagoneer to win 1st in 2014.

Dependencies:   mbed Watchdog SDFileSystem DigoleSerialDisp

UI/Buttons/Buttons.cpp

Committer:
shimniok
Date:
2018-11-30
Revision:
25:bb5356402687
Parent:
23:a34af501ea89

File content as of revision 25:bb5356402687:

#include "devices.h"
#include "Buttons.h"

//PinDetect nextButton(BUTTONNEXT);
//PinDetect selectButton(BUTTONSELECT);            // Input selectButton
//PinDetect prevButton(BUTTONPREV);

Buttons::Buttons(void): 
    which(0), pressed(false)
{
}

void Buttons::init()
{
/*
    // Set up button (plugs into two GPIOs, active low
    selectButton.mode(PullUp);
    selectButton.setSamplesTillAssert(50);
    selectButton.setAssertValue(0); // active low logic
    selectButton.setSampleFrequency(50); // us
    selectButton.attach_asserted( this, &Buttons::selectPressed );
    
    nextButton.mode(PullUp);
    nextButton.setSamplesTillAssert(50);
    nextButton.setAssertValue(0); // active low logic
    nextButton.setSampleFrequency(50); // us
    nextButton.attach_asserted( this, &Buttons::nextPressed );

    prevButton.mode(PullUp);
    prevButton.setSamplesTillAssert(50);
    prevButton.setAssertValue(0); // active low logic
    prevButton.setSampleFrequency(50); // us
    prevButton.attach_asserted( this, &Buttons::prevPressed );
*/
}

void Buttons::nextPressed() 
{
    pressed = true;
    which = NEXT_BUTTON;
}

void Buttons::prevPressed() 
{
    pressed = true;
    which = PREV_BUTTON;
}

void Buttons::selectPressed()
{
    pressed = true;
    which = SELECT_BUTTON;
}