ТехдокументацияПоказать таблицейСортировка:РекомендуемХиты продажДешевлеДороже
Добавить к сравнению
|
Тактовые кнопки – наиболее распространённые средства для коммутации электрических сигналов в различных цепях. Тактовые кнопки могут быть с фиксацией или без, с подсветкой и т. д.
Тактовые кнопки используются в различных режимах и выполняют разные функции. Конструктивное исполнение таких изделий может сильно варьироваться.
Тактовые кнопки устанавливаются на печатные платы вертикально или под определённым углом. Их активно используют в быту и промышленности.
Обычно тактовые кнопки устанавливают под специальные фальшпанели (по такой технологии изготавливают компьютерные клавиатуры), но в некоторых случаях также используются специальные колпачки.
Посмотреть и купить товар вы можете в наших магазинах в городах: Москва, Санкт-Петербург, Волгоград, Воронеж, Гомель, Екатеринбург, Ижевск, Казань, Минск, Набережные Челны, Нижний Новгород, Новосибирск, Омск, Ростов-на-Дону, Рязань, Самара, Саратов, Тверь, Томск, Тула, Тюмень, Уфа, Челябинск. Доставка заказа почтой, через систему доставки Pickpoint или через салоны «Евросеть» в следующие города: Тольятти, Барнаул, Ульяновск, Иркутск, Хабаровск, Ярославль, Владивосток, Махачкала, Томск, Оренбург, Кемерово, Новокузнецк, Астрахань, Пенза, Липецк, Киров, Чебоксары, Калининград, Курск, Улан-Удэ, Ставрополь, Сочи, Иваново, Брянск, Белгород, Сургут, Владимир, Нижний Тагил, Архангельск, Чита, Смоленск, Курган, Орёл, Владикавказ, Грозный, Мурманск, Тамбов, Петрозаводск, Кострома, Нижневартовск, Новороссийск, Йошкар-Ола и др.
Товары из группы «Тактовые кнопки» вы можете купить оптом и в розницу.
← Светодиод | Оглавление | Светодиодные сборки →
Тактовая кнопка — простой, всем известный механизм, замыкающий цепь пока есть давление на толкатель.
Кнопки с 4 контактами стоит рассматривать, как 2 пары рельс, которые соединяются при нажатии.
Эффект дребезга
При замыкании и размыкании между пластинами кнопки возникают микроискры, провоцирующие до десятка переключений за несколько миллисекунд. Явление называется дребезгом (англ. bounce). Это нужно учитывать, если необходимо фиксировать «клики».
Схема подключения
Напрашивается подключение напрямую. Но это наивный, неверный способ.
Пока кнопка нажата, выходное напряжение Vout = Vcc, но пока она отпущена, Vout ≠ 0. Кнопка и провода в этом случае работают как антенна, и Vout будет «шуметь», принимая случайные значения «из воздуха».
Пока соединения нет, необходимо дать резервный, слабый путь, делающий напряжение определённым. Для этого используют один из двух вариантов.
Схема со стягивающим резистором
- Есть нажатие: Vout = Vcc
- Нет нажатия: Vout = 0
Схема с подтягивающим резистором
- Есть нажатие: Vout = 0
- Нет нажатия: Vout = Vcc
Практикум
- Кнопки в «Мерзком пианино»
- Кнопки в эксперименте «Миксер»
- Кнопки в игре «Кнопочные ковбои»
← Светодиод | Оглавление | Светодиодные сборки →
СОДЕРЖАНИЕ ►
Как подключить тактовую кнопку к цифровым и аналоговым входам на Arduino Uno правильно. Расскажем, как избежать «дребезг контактов», рассмотрим схему подключения одной и нескольких кнопок к плате Ардуино. Рассмотрим функции digitalRead и analogRead в языке программирования C++, которые часто требуется использовать при создании различных проектов на Ардуино для начинающих.
Работа с тактовыми кнопками на Ардуино
Главная проблема использования кнопок для управления Arduino заключается в «дребезге контактов». Дело в том, что механические контакты в тактовых кнопках никогда не замыкаются и размыкаются мгновенно. В течении нескольких миллисекунд происходит многократное замыкание и размыкание контактов — в итоге на микроконтроллер поступает не единичный сигнал, а серия импульсов.
Для того, чтобы исключить на микроконтроллере Arduino дребезг кнопки используют различные электрические схемы с триггерами и конденсаторами. Но намного удобнее и проще использовать программный способ борьбы с возможным дребезгом тактовой кнопки — для этого применяют задержку на несколько миллисекунд или используют библиотеку Bounce2.h для борьбы с дребезгом контактов для Arduino.
Подключение к Ардуино тактовой кнопки
Для занятия нам понадобятся следующие детали:
- плата Arduino Uno / Arduino Nano / Arduino Mega;
- макетная плата;
- 1 светодиод;
- резисторы на 220 Ом и 10 кОм;
- 1 тактовая кнопка;
- провода «папа-папа» и «папа-мама».
Используем цифровые порты на плате для подключения тактовой кнопки и команду digitalRead
для считывания данных. Соберите схему, как на рисунке выше и загрузите скетч. Обратите внимание, что при отпущенной кнопке на Pin2 поступает логический «0». С помощью кнопки будем выключать и включать встроенный светодиод, подключенный к цифровому 13 порту на плате микроконтроллера Ардуино.
Скетч подключение кнопки к цифровому входу
voidsetup() { pinMode(13, OUTPUT); // объявляем пин 13 как выходpinMode(2, INPUT); // объявляем пин 2 как вход } voidloop() { if (digitalRead(2) == HIGH) // когда на пин 2 поступает высокий сигнал { digitalWrite(13, HIGH); // зажигаем светодиод } if (digitalRead(2) == LOW) // когда на пин 2 поступает низкий сигнал { digitalWrite(13, LOW); // выключаем светодиод } }
Пояснения к коду:
- процедура
setup
выполняется один раз, используется процедура для конфигурации портов микроконтроллера (назначение режима работы портов); - процедуры
setup
иloop
должны присутствовать в любой программе (скетче); - использованные константы:
INPUT
,OUTPUT
,LOW
,HIGH
, пишутся заглавными буквами, иначе компилятор их не распознает и выдаст ошибку.
Скетч подключения кнопки к аналоговому входу
Можно также сделать подключение кнопок к аналоговому входу Ардуино (обозначены, как Analog In на плате). Принципиальное отличие данной схемы — это использование аналогового порта на микроконтроллере. Для включения и выключения светодиода будем также использовать встроенный светодиод на плате. Переключите тактовую кнопку к аналоговому входу A1 и загрузите в плату следующий скетч.
void { pinMode(13, OUTPUT); // объявляем пин 13 как выходpinMode(A1, INPUT); // объявляем пин A1 как вход } voidloop() { if (analogRead(A1) > 300) // когда аналоговая кнопка нажата { digitalWrite(13, HIGH); // зажигаем светодиод } if (analogRead(A1) < 300) // когда аналоговая кнопка отпущена { digitalWrite(13, LOW); // выключаем светодиод } }
Пояснения к коду:
- в данном скетче мы используем функцию
analogRead
для считывания значений с аналогового входаA1
, при этом порт можно использовать, как цифровой; - значения на аналоговом входе могут отличаться (все зависит от сопротивления резистора в схеме) и могут принимать значения в диапазоне от 0 до 1023.
Используемые источники:
- https://www.chipdip.ru/catalog-show/tact-switches
- http://wiki.amperka.ru/конспект-arduino:кнопка
- https://xn--18-6kcdusowgbt1a4b.xn--p1ai/%d0%bf%d0%be%d0%b4%d0%ba%d0%bb%d1%8e%d1%87%d0%b5%d0%bd%d0%b8%d0%b5-%d0%ba%d0%bd%d0%be%d0%bf%d0%ba%d0%b8-%d0%b0%d1%80%d0%b4%d1%83%d0%b8%d0%bd%d0%be/