18#ifndef ANALOGBUTTONS_H_
19#define ANALOGBUTTONS_H_
43#if defined(ARDUINO) && ARDUINO >= 100
49#ifndef ANALOGBUTTONS_MAX_SIZE
50#define ANALOGBUTTONS_MAX_SIZE 8
53#ifndef ANALOGBUTTONS_SAMPLING_INTERVAL
54#define ANALOGBUTTONS_SAMPLING_INTERVAL 20
70 Button(uint16_t value,
void (*clickFunction)(
void) = 0,
void (*holdFunction)(
void) = 0, uint16_t holdDuration = 1000, uint16_t holdInterval = 250);
73 inline void pressed() {
90 void (*clickFunction)(void);
91 void (*holdFunction)(void);
96 uint32_t previousMillis;
105 uint8_t buttonsCount;
106 Button buttons[ANALOGBUTTONS_MAX_SIZE];
109 Button* lastButtonPressed;
122 AnalogButtons(uint8_t pin, uint8_t mode = INPUT, uint16_t debounce = 5, uint8_t margin = 10);