ЗАДАЧИ УРОКА

  • Разобрать схему подключения кнопки к Ардуино для организации управления событиями.
  • Рассмотреть программную реализацию счетчика событий на примере подсчета нажатий кнопки.
  • Изучить конструкцию if … else для программной реализации алгоритмической конструкции «ветвление».

ТЕОРИЯ

В этом уроке мы будем рассматривать схему кнопки, которая наиболее часто встречается в наборах Ардуино.

По своему опыту знаю, что такая схема коммутации выводов для юных схемотехников не совсем понятна. Поэтому на уроках мы рассматриваем работу кнопки чуть иначе.

ИТАК … если кнопка не нажата, то между собой соединены контакты 1-3 и 2-4. Если же кнопку нажать, то все 4 вывода соединяются между собой. Для того, что бы кнопка стала управляющим элементом схемы, нам надо сделать так, чтобы при нажатии на pin Ардуино поступал HIGH сигнал, а в стальное время на данном pin был сигнал LOW. Давайте для начала организуем постоянный сигнал LOW. Это совсем не сложно, учитывая, что выводы 1-3 и 2-4 постоянно замкнуты ))))

Если честно, то для реализации подключения к GND резистор в цепи подключения нам не нужен. НО!!!! Без него пропадет смысл следующего шага, точнее следующий шаг станет ОПАСНЫМ ))))) При нажатии кнопки мы получаем коммутацию 2 и 3 вывода. Так как к выводу 1 подключен резистор, то, по принципу «электрический ток протекает по пути НАИМЕНЬШЕГО сопротивления, мы получим активную цепь через контакты 2 и 3, что приведет к появлению на pin4 сигнала HIGH. А вот если резистор совсем убрать, то мы получим короткое замыкание. В лучшем случае у вас просто выключится вся схема ))))

ПЕРЕЧЕНЬ КОМПОНЕНТОВ

  • ARDUINO UNO R3 (оригинальная плата)
  • LCD дисплей 16х2 с модулем I2C
  • Монтажная плата
  • Светодиод
  • Кнопка
  • Резистор 1 кОм
  • Соединительные провода

МАКЕТ СХЕМЫ

Практическая реализация макета

Цель достигнута )))))

КОД ПРОГРАММЫ

ЭТАП 1.  ЗАЖИГАЕМ ДИОД.

Для начала приведем классический учебный код… так, как нас учит Интернет )))

Немного его упростим. Переведя оператор if .. else в сокращенный вид, т.е. без else. Почему? Потому что в обычном состоянии наш светодиод не должен светиться и лишь когда мы нажмем кнопку, ярко подтвердить факт нажатия ))))

А теперь напишем правильную программу!

Как говорится: «Почувствуйте разницу!» Ну и последний штрих… вот так программа должна выглядеть, когда она будет частью прошивки, а не учебным пособием по освоению программирования Ардуино.