Debounce

Debounce

Текущая версия 1.2 2008/09/25: добавлена ​​функция записи, предложенная Джимом Шимпфом Скачать

история 1.1 2008/09/25: изменен заголовочный файл, поэтому Debounce компилируется с Arduino 12 1.0 2008/09/21: первый выпуск Описание Debounce - это библиотека для Arduino (arduino.cc).

Это различает цифровые входы.

Скачать, установить и импортировать Скачать здесь: Прикрепить: Debounce.zip

Поместите папку Debounce в «hardware \ library \».

В Arduino IDE создайте новый эскиз (или откройте его) и

выберите из меню «Sketch→ Import Library→ Debounce».

Как только библиотека будет импортирована, появится строка «#inlcude Debounce.h»

в верхней части вашего эскиза.

СОЗДАНИЕ Debounce (неподписанный длинный debounceTime, пин-код)

Создает объект Debounce с временем отката и цифровым пин-кодом.

Поскольку в Debounce не используются прерывания, вы должны «обновить» Debounce перед чтением его значения.

методы int update () Обновления Debounce. Возвращает true, если состояние контакта изменилось (HIGH - LOW или LOW - HIGH). Ложь, если нет.

пустой интервал (беззнаковый длинный интервал)

Изменяет время отката в миллисекундах.

int read () Читает правильное состояние булавки обновления для удаления.

void write (int state) Записывает состояние на вывод (в памяти Debounce и с помощью digitalWrite).

пример Этот код включает / выключает светодиод с помощью переключателя debounce #include #define SWITCH 5 #define LED 13 Создание объекта Debounce с временем отката 20 миллисекунд Debounce debouncer = Debounce (20, SWITCH) ;

void setup () {

pinMode (SWITCH, INPUT); 
pinMode (LED, OUTPUT); 

}

void loop () { Обновляем debouncer debouncer.update (); Получить значение обновления

 digitalWrite (LED, debouncer.read ()); 

} Часто задаваемые вопросы I found your debounce library on the Arduino Website. It's just what I was looking for. But…Can you use it for more than one digitalInput at a time? When you call the debouncer.read() function it uses the pin number that was set in the Debounce() function?

Дебад это класс. Поэтому, чтобы отменить несколько цифровых выводов, вы должны создать экземпляр для каждого из них. В приведенном выше примере экземпляр Debounce (называемый debouncer ) для вывода 5 (определенный как SWITCH) создается со следующей строкой:

Debounce debouncer = Debounce( 20 , SWITCH );

Чтобы отменить дополнительный контакт (например, контакт 4), вы можете создать следующий экземпляр с именем debounce2 :

Debounce debounce2 = Debounce( 20 , 4 );

Во время цикла () вам необходимо обновить debouncer (для контакта 5) и debounce2 (для контакта 4):

Обновляем debouncers debouncer.update (); debounce2.update ();