// #include <EncButton.h>
// Button b(3);
#include <GyverButton.h>
GButton b(3);
void setup() {
b.setDebounce(50); // настройка антидребезга (по умолчанию 80 мс)
b.setTimeout(300); // настройка таймаута на удержание (по умолчанию 500 мс)
b.setClickTimeout(200); // таймаут периодических кликов
b.setType(HIGH_PULL);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
pinMode(A0, OUTPUT);
pinMode(A1, OUTPUT);
pinMode(A2, OUTPUT);
}
void loop() {
b.tick();
digitalWrite(A2, b.isPress());
digitalWrite(A1, b.isRelease());
digitalWrite(A0, b.isClick());
digitalWrite(12, b.isHold());
digitalWrite(13, b.isHolded());
digitalWrite(11, b.state());
digitalWrite(10, b.isSingle());
digitalWrite(9, b.isDouble());
digitalWrite(8, b.isTriple());
delay(20);
}=== Проверка работы библиотеки GyverButton ===
Жми зеленый треугольник вверху для запуска эмуляции работы.
На кнопку жмакай не очень быстро,
из-за особенностей эмуляции браузер может не успевает обрабатывать.
В скетче все будет работать шустро без задержек.
Тг. @smartfarm_diy