Подключение кнопки

Подключение кнопки

"Робот и Я"

Кнопка является простейшим устройством, при помощи которого можно управлять ходом программы на микроконтроллере, но физически она выполняет очень простую функцию: замыкает и размыкает контакт. Кнопки бывают нескольких типов:

  • С фиксацией – кнопка остаётся нажатой после отпускания, без фиксации – отключается обратно.
  • Без фиксации. Нормально разомкнутая (Normal Open, NO) – при нажатии замыкает контакты. Нормально замкнутая (Normal Closed, NC) – при нажатии размыкает контакты.
Кнопка

Дребезг контактов

Нажимая на любую, даже самую простую тактовую кнопку, мы формируем определенное давление на внутренние механизмы (пластины или пружины), в результате чего происходит сближение или расхождение металлических пластин. В короткий промежуток времени на границе пластинок меняется и сопротивление, и взаимная емкость, из-за чего возникают масса разнообразных изменений уровня тока и напряжения.  Это явление и называется дребезгом контактов.

Дребезг контактов


Дребезг контактов нужно обязательно учитывать. Обрабатывать его можно как программными средствами, так и аппаратными.


Подключение кнопки

Можно подключить кнопку несколькими способами:

1.Простейшее

Подключим кнопку к контакту D2 и Gnd:

  • Конфигурация пина на чтение pinMode(D2, INPUT)
  • Чтение состояния кнопки digitalRead(D2), выдаст 0 или 1

В плоттере порта можем увидеть графики, при этом даже когда кнопка не нажата, то может проскакивать состояние нажатой кнопки

2. С подтяжкой к 5 В

Подключим кнопку к контакту D2 и Gnd:

  • Конфигурация пина на чтение pinMode(D2, INPUT_PULLUP)
  • Чтение состояния кнопки digitalRead(D2), выдаст 0 или 1

Случайные срабатывания исчезли. Дребезг при нажатии на кнопку по прежнему присутствует

3. С подтяжкой к GND

Подключим кнопку к контакту D2 и +5В:

  • Конфигурация пина на чтение pinMode(D2, INPUT_PULLDOWN)
  • Чтение состояния кнопки digitalRead(D2), выдаст 0 или 1

Случайные срабатывания исчезли. Дребезг при нажатии на кнопку по прежнему присутствует

4. С внешним RC фильтром

  • Конфигурация пина на чтение pinMode(D2, INPUT)
  • Чтение состояния кнопки digitalRead(D2), выдаст 0 или 1

Дребезг будет сведен к минимуму за счет использования RC фильтра, который будет подавлять короткие изменения напряжения на пине 2.

5. Тригер Шмитта

https://intellect.icu/circus/trigger-smitta


Где купить?


Купить можно за 150 руб

К списку датчиков

На главную



Report Page