В этом проекте вы добавите в цепь со светодиодом тактовую кнопку, чтобы управлять его свечением
Требуемые компоненты
- Плата Arduino
- Макетная плата
- Перемычки
- Четырехконтактный кнопочный переключатель
- Светодиод
- Резистор с сопротивлением 10 кОм
- Резистор с сопротивлением 220 Ом


В этом проекте вы познакомитесь с принципами переключателей, которые будете использовать и дальше. Практически все электрические устройства содержат переключатели для включения и выключения питания. Существует множество видов переключателей, и сейчас вы будете использовать один из них — кнопочный (рис. 1.1).
Принцип работы
При нажатии кнопка замыкает цепь, подавая питание. Как только кнопка отпущена, она размыкает цепь, прерывая питание. Такие кнопочные переключатели также известны как моментального действия или нормально открытые и используются, к примеру, в компьютерных клавиатурах. Кнопки отличаются от тумблеров, которые остаются во включенном/выключенном состоянии, пока вы не переключите их в другое положение, как, например, выключатель освещения.
Наша кнопка имеет четыре контакта (ножки), но для подключения обычно используются только два из них. В этом проекте вы будете использовать верхние ножки (две неиспользуемые нижние ножки выполняют ту же функцию). На рис. 1.2 показано, как контакты работают в цепи. Контакты А и С всегда замкнуты, так же как В и D. При нажатии кнопки цепь замыкается.

Сборка
1. Установите кнопку на макетную плату, как показано на рис. 1.3.
2. Соедините ножку А кнопки с одной из ножек резистора с сопротивлением 10 кОм и подключите эту же ножку резистора к контакту 2 платы Arduino. Подключите другую ножку резистора к шине заземления, а саму шину — к контакту GND платы Arduino. Подключите ножку В кнопки к шине питания +5 В, а шину, в свою очередь, — к контакту 5V платы Arduino.
3. Установите светодиод на макетную плату, подключив длинную ножку анода к контакту 13 платы Arduino через резистор с сопротивлением 220 Ом, а короткую ножку — к заземлению (GND).
Убедитесь, что ваша цепь соответствует схеме на рис. 1.3, а затем загрузите код, приведенный в разделе «Скетч» далее в этом проекте.

Скетч
В этом скетче вы определяете контакт кнопки и переводите его в режим ввода — INPUT, а контакт светодиода — в режим вывода — OUTPUT. Код инструктирует Arduino включить светодиод, пока нажата кнопка (замыкающая цепь), и держать светодиод отключенным, если кнопка не нажата. При отпускании кнопки цепь размыкается и светодиод отключается.
const int buttonPin = 2; // Контакт, к которому подключена кнопка const int ledPin = 13; // Контакт, к которому подключен светодиод int buttonState = 0; // Задание значения кнопки void setup () { pinMode(ledPin, OUTPUT); // Перевод контакта светодиода в режим вывода pinMode(buttonPin, INPUT); // Перевод контакта кнопки в режим ввода } void loop () { buttonState = digitalRead(buttonPin); // Чтение ввода с контакта 2 if (buttonState == HIGH) { // Если кнопка нажата, устанавливается состояние HIGH digitalWrite(ledPin, HIGH); // Включение светодиода } else { digitalWrite(ledPin, LOW); // В противном случае отключаем светодиод } }
Теги: