Урок 7. Подключаем тактовую кнопку к Arduino и управляем светодиодом.
Сегодня в Arduino уроке подключим тактовую кнопку к Arduino UNO и научимся управлять светодиодом.
Кнопка, наряду с такими элементами как светодиод и резистор, является одним из часто используемых элементов в Arduino проектах. Поэтому уметь подключать кнопку к Arduino и правильно писать код для считывания состояния кнопки - очень важная часть обучения юного робототехника.
В данном уроке рассмотрим самый простой и распространённый пример подключения кнопки к Arduino. Также существуют и другие схемы подключения и алгоритмы работы с тактовой кнопкой, но об этом поговорим в следующих Arduino уроках.
Что такое тактовая кнопка?
Тактовая кнопка – самый распространенный вид коммутации сигнала в электрических цепях. Другими словами, она служит для того, чтобы мгновенно или постепенно изменять направление электрических импульсов, или перекрывать доступ к ним.
Кнопки можно разделить на 2 типа:
с фиксацией. Приспособление остается в том положении, которое задали при нажатии. Другими словами, если на кнопку нажать, то она вернется в исходное положение только после повторного нажатия;
без фиксации. Противоположно первому варианту. Кнопка после нажатия возвращается в исходное положение;
В Arduino уроке будем использовать кнопку без фиксации.
Схема подключения кнопки к Arduino.
Установим на макетную плату тактовую кнопку, и подключим одну ножку к +5v, вторую ножку, с помощью подтягивающего резистора, подключим к GND.
Это необходимо сделать, чтобы кнопка не была в «подвешенном» состоянии. Если не поставить подтягивающий резистор, то в состоянии, когда кнопка не нажата, на контакте Arduino будет неустановившееся состояние: и не логический ноль, и не логическая единица. Вот почему важно ставить подтягивающий резистор.
Можно использовать встроенный в Arduino подтягивающий резистор. Тогда измениться схема подключения и код, но об этом поговорим в следующих уроках.
Скетч управления светодиодом с помощью тактовой кнопки.
В данном скетче мы будем использовать новую функцию analogRead(), которая поможет нам считывать состояние кнопки. Для определения pin Arduino, к которому подключена кнопка как вход, будем использовать INPUT. Код получится в несколько строчек.
Рассмотрим основные строки кода:
pinMode(button_pin, INPUT);
Инициализирует пин ардуино как вход. Что позволяет считывать состояние кнопки.
int button = digitalRead(button_pin);
Сохраняем состояние кнопки в переменную.
if (button == HIGH)
digitalWrite(led_pin, HIGH);
else
digitalWrite(led_pin, LOW);
Проверяем, нажата кнопка или нет. Если нажата, то включаем светодиод.
Светодиод светится только когда нажата кнопка. Как же сделать, чтобы светодиод при нажатии кнопки светился, а при повторном нажатии на кнопку выключался? Это достаточно интересная тема, которую мы рассмотрим в следующем уроке.
Загружаем код в Arduino UNO.
Данный код можно использовать не только в симуляторе, но и при программировании реальной Arduino UNO. Если у вас есть такая возможность, подключите её к компьютеру, выберите нужный Порт и плату Arduino UNO, как показано на картинке ниже.
Нажмите на кнопку «Загрузить», после удачной компиляции и загрузки кода в плату, вы увидите надпись «Загрузка завершена».
Если у вас возникли сложности с загрузкой кода, посмотрите эту статью:
Мы рады объявить о нашем присутствии на Boosty! Arduino-Tex приглашает всех наших друзей и последователей поддержать нас на этой замечательной платформе. Здесь вы найдете эксклюзивный контент, уникальные проекты и возможность стать частью нашей творческой команды. Присоединяйтесь к нам на Boosty и вместе мы сделаем мир Arduino еще удивительнее!
Понравился Урок 7. Подключаем тактовую кнопку к Arduino и управляем светодиодом? Не забудь поделиться с друзьями в соц. сетях.
Комментарии