2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Кнопка - это компонент, который при нажатии соединяет две точки в цепи.
Когда кнопка разомкнута (не нажата), соединение между двумя ножками кнопки отсутствует, поэтому на контакт подается напряжение 5 В (через подтягивающий резистор), и мы читаем ВЫСОКОЕ. Когда кнопка закрыта (нажата), она устанавливает соединение между двумя ногами, соединяя контакт с землей, так что мы читаем НИЗКИЙ. (Контакт по-прежнему подключен к 5 В, но резистор между ними означает, что контакт «ближе» к земле.)
Шаг 1: Необходимые компоненты:
1. Arduino UNO
2. Макетная плата
3. Кнопка
4. Резистор
5. Перемычка.
Шаг 2: Принципиальная схема:
Подключите к плате три провода. Первый идет от одной ножки кнопки через понижающий резистор (здесь 10 кОм) на землю. Второй идет от соответствующей ножки кнопки к источнику питания 5 В. Третий подключается к выводу цифрового ввода / вывода (здесь вывод 2), который считывает состояние кнопки.
Когда кнопка разомкнута (не нажата), нет связи между двумя ножками кнопки, поэтому контакт подключен к земле (через понижающий резистор), и мы читаем НИЗКИЙ. Когда кнопка закрыта (нажата), она устанавливает соединение между двумя ногами, подключая контакт к напряжению, так что мы читаем HIGH. (Контакт по-прежнему подключен к земле, но резистор сопротивляется протеканию тока, поэтому путь наименьшего сопротивления - до + 5В.) Если вы отсоедините контакт цифрового ввода-вывода от всего, светодиод может беспорядочно мигать. Это потому, что вход «плавающий», то есть не подключен ни к напряжению, ни к земле. Он будет более или менее случайным образом возвращать HIGH или LOW. Вот почему вам нужен понижающий резистор в цепи.
Шаг 3: Код:
Для более интересных проектов свяжитесь со мной по:
Youtube: https://www.youtube.com/channel/UCTS10_CRYJhT-vb9… Страница в Facebook:
Instagram: https://instagram.com/official_techeor? Igshid = uc8…
int button = 2;
int a; void setup () {Serial.begin (9600); pinMode (кнопка, ВВОД); } void loop () {a = digitalRead (кнопка); Serial.print ("Значение кнопки ="); Serial.println (а); }