shButton - библиотека для работы с тактовыми кнопками.
Возможности библиотеки:
- Работа с кнопками с нормально разомкнутыми и нормально замкнутыми контактами;
- Работа с подключением
PULL_UP
(подтяжка кнопки к VCC) иPULL_DOWN
(подтяжка кнопки к GND); - Работа с виртуальной кнопкой, т.е. кнопкой, не привязанной к конкретному пину, например - кнопки аналоговой, матричной клавиатуры или кнопки, подключенные через расширители портов;
- Опрос кнопки как с программным подавлением дребезга контактов, так и без него; возможность настройки интервала антидребезга;
- Отработка нажатия, отпускания кнопки, двойного клика; возможность настройки интервала двойного клика;
- Возможность использования виртуального клика; в этом режиме событие клика (
BTN_ONECLICK
) генерируется по истечении интервала двойного клика, если не наступило событие двойного клика и в это же время кнопка не удерживается нажатой; таким образом появляется возможность организовать раздельную реакцию на однократный клик, двойной клик и удержание кнопки без написания дополнительного кода в скетче; - Отработка удержания кнопки; возможность настройки интервала удержания;
- Возможность настройки генерируемого при удержании кнопки свыше интервала удержания события (
BTN_LONGCLICK
) - непрерываная выдача события (т.е. фактически - состояния кнопки), однократная подача события или циклическая подача события через равные интервалы времени, пока кнопка нажата; возможность настройки этого интервала;
Ссылка на GitHub - GitHub - VAleSh-Soft/shButton: Библиотека для работы с тактовыми кнопками в Ардуино
Тема на старом форуме - Библиотека для работы с кнопкой shButton | Аппаратная платформа Arduino