Arduino:Библиотеки/Bounce
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Библиотека Bounce[1][2]
Библиотека Bounce служит устранению дребезга контактов на Arduino. Она написана Олле Фредериксом (Ouellet Fredericks) в сотрудничестве с Эриком Лоури (Eric Lowry), Джимом Шимпфом (Jim Schimpf) и Томом Хэркавеем (Tom Harkaway).
Да данный момент вышла уже вторая версия библиотеки – Bounce 2. Цифра «2» в названии указывает, что она не на 100% совместима с первой версией. Библиотека была обновлена алгоритмами и модификациями, предложенными разными пользователями.
Установка и импорт
Скачайте ZIP-файл с библиотекой по этой ссылке. Затем скопируйте распакованную папку с библиотекой по адресу «Документы/Arduino/libraries». Далее, чтобы подключить эту библиотеку к своему скетчу, кликните в IDE Arduino на Скетч > Подключить библиотеку > Bounce2 (Sketch > Include Library > Bounce2). В результате в верхней части скетча появится строчка #include Bounce2.h.
Функции
Bounce()
- Создает экземпляр класса Bounce.
void interval(unsigned long interval)
- Задает время устранения дребезга в миллисекундах.
void attach(int pin)
- Задает контакт и сопоставляет внутреннее состояние с состоянием контакта. Эту функцию следует использовать, когда контакт уже настроен (к примеру, для подтягивающего резистора).
bool update()
- Библиотека Bounce не использует прерывания, поэтому перед считыванием значений с объекта его нужно «обновить», и делать это нужно как можно чаще. То есть ее нужно вызвать в блоке loop(), но не более одного раза. Если состояние контакта поменялось, функция update() обновляет объект и возвращает true («1»), а если нет, то false («2»).
bool read()
- Считывает состояние обновленного контакта.
bool fell()
bool rose()
bool risingEdge()
- Устаревший аналог rose(). Для совместимости с Bounce 1.
bool fallingEdge()
- Устаревший аналог fell(). Для совместимости с Bounce 1.
Bounce(uint8_t pin, unsigned long interval_millis)
- Устарела. Создает экземпляр класса Bounce, подключает контакт и задает интервал для interval_millis. Для совместимости с Bounce 1.
Алгоритмы
Интервал устойчивости. По умолчанию библиотека использует для устранения дребезга именно этот алгоритм. Он проще для понимания и устраняет нежелательный шум.

Интервал блокировки. Этот альтернативный метод устранения дребезга активируется, если задать в файле «Bounce.h» строчку
#define BOUNCE_LOCK_OUT
Этот метод гораздо чувствительней, но шума не устраняет.

Примеры
- Bounce - Устранение дребезга при нажатии на кнопку (вариант с одной кнопкой)
- Bounce2Buttons - Устранение дребезга при нажатии на кнопку (вариант с двумя кнопками)
- Change - Определение перехода из HIGH в LOW
- Duration - Определение продолжительности нажатия на кнопку
- Retrigger - Перезапуск события
См.также
Внешние ссылки
развернутьПартнерские ресурсы |
---|
развернутьСправочник языка Arduino |
---|
развернутьБиблиотеки Arduino |
---|
развернутьArduino продукты |
---|
развернутьПримеры Arduino |
---|