* MomentaryButton: pullupdown param moved to constructor
This commit is contained in:
@@ -1,17 +1,18 @@
|
|||||||
#include "MomentaryButton.h"
|
#include "MomentaryButton.h"
|
||||||
|
|
||||||
MomentaryButton::MomentaryButton(int8_t pin, int long_press_millis, bool reverse) {
|
MomentaryButton::MomentaryButton(int8_t pin, int long_press_millis, bool reverse, bool pulldownup) {
|
||||||
_pin = pin;
|
_pin = pin;
|
||||||
_reverse = reverse;
|
_reverse = reverse;
|
||||||
|
_pull = pulldownup;
|
||||||
down_at = 0;
|
down_at = 0;
|
||||||
prev = _reverse ? HIGH : LOW;
|
prev = _reverse ? HIGH : LOW;
|
||||||
cancel = 0;
|
cancel = 0;
|
||||||
_long_millis = long_press_millis;
|
_long_millis = long_press_millis;
|
||||||
}
|
}
|
||||||
|
|
||||||
void MomentaryButton::begin(bool pulldownup) {
|
void MomentaryButton::begin() {
|
||||||
if (_pin >= 0) {
|
if (_pin >= 0) {
|
||||||
pinMode(_pin, pulldownup ? (_reverse ? INPUT_PULLUP : INPUT_PULLDOWN) : INPUT);
|
pinMode(_pin, _pull ? (_reverse ? INPUT_PULLUP : INPUT_PULLDOWN) : INPUT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,15 +9,15 @@
|
|||||||
class MomentaryButton {
|
class MomentaryButton {
|
||||||
int8_t _pin;
|
int8_t _pin;
|
||||||
int8_t prev, cancel;
|
int8_t prev, cancel;
|
||||||
bool _reverse;
|
bool _reverse, _pull;
|
||||||
int _long_millis;
|
int _long_millis;
|
||||||
unsigned long down_at;
|
unsigned long down_at;
|
||||||
|
|
||||||
bool isPressed(int level) const;
|
bool isPressed(int level) const;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
MomentaryButton(int8_t pin, int long_press_mills=0, bool reverse=false);
|
MomentaryButton(int8_t pin, int long_press_mills=0, bool reverse=false, bool pulldownup=false);
|
||||||
void begin(bool pulldownup=false);
|
void begin();
|
||||||
int check(bool repeat_click=false); // returns one of BUTTON_EVENT_*
|
int check(bool repeat_click=false); // returns one of BUTTON_EVENT_*
|
||||||
void cancelClick(); // suppress next BUTTON_EVENT_CLICK (if already in DOWN state)
|
void cancelClick(); // suppress next BUTTON_EVENT_CLICK (if already in DOWN state)
|
||||||
uint8_t getPin() { return _pin; }
|
uint8_t getPin() { return _pin; }
|
||||||
|
|||||||
Reference in New Issue
Block a user