Меню
X | ЗАКРЫТЬ

Подключение кнопки к AVR

Подключение кнопки к AVR не должно у вас вызывать никаких трудностей.

В предыдущей статье мы провели эмуляцию схемы в программе Proteus, помигали светодиодом и научились прошивать наш виртуальный микроконтроллер. Наверняка многим из читателей пришла в голову мысль: «А можно ли помигать светодиодом, использую кнопку, подключенную к МК?

Подключение кнопки к AVR

Да, разумеется, это возможно. Реализуется довольно легко. Причем можно сэмулировать кнопку как с фиксацией так и без фиксации. Причем в программе Proteus применить оба типа кнопок можно с помощью одного и того же одинакового макроса кнопки. В каких случаях это может быть полезно? Например, нам требуется осуществить выбор режимов работы устройства. Давайте разберем подробнее, как это реализовать с помощью микроконтроллера, и проведем эмуляцию в программе Proteus.

12 недорогих наборов электроники для самостоятельной сборки и пайки

Моя личная подборка конструкторов с Aliexpress "сделай сам" для пайки от простых за 153 до 2500 рублей. Дочке 5 лет - надо приучать к паяльнику))) - пусть пока хотя-бы смотрит - переходи посмотреть, один светодиодный куб чего только стоит

Подключение кнопки к AVR

Для того, чтобы иметь наглядное представление, что у нас действительно выбор из двух режимов, мы соберем простенькую схемку на 4 светодиодах с управлением одной кнопкой. При первом варианте у нас поочередно загораются с первого по четвертый светодиоды. При втором варианте то же самое, но в обратной последовательности, то есть с четвертого по первый. Единственное, что хочу уточнить, кнопка у нас опрашивается на нажатие или отжатие только перед началом эффекта. До тех пор, пока эффект не закончит свою работу, программа не реагирует на нажатие или отжатие кнопки.

Итак к делу. Так выглядит у нас наша схема в программе Proteus (кликните для увеличения):

Подключение кнопки к AVR

В этой схеме мы уже видим отличия от той, которую собирали еще в прошлой статье. В левой части схемы  мы видим обозначения кнопки и источника питания +5 вольт.

Как мы уже разобрали, питание и землю мы берем во вкладке «Терминал». Обозначаются они у нас соответственно Power и Ground.

Подключение кнопки к AVR

Обозначается у нас питание схемы треугольником с чертой, делящей его по высоте. Рядом, на рисунке, изображено обозначение кнопки. Справа от кнопки мы видим закрашенный красный круг с двухнаправленной стрелочкой. Если во время эмуляции нажать на него, то кнопка у нас зафиксируется и будет постоянно нажата. После повторного нажатия на него фиксация снимается.

Подключение кнопки к AVR

Перед использованием нам нужно выбрать кнопку в библиотеке аналогично остальным деталям. Для этого нужно набрать в поле «Маска» слово «but».  Затем в поле «Результаты» слово «BUTTON»:

Подключение кнопки к AVR

После этого кнопка появиться у нас в списке, вместе с выбранными деталями, применяемыми в проекте.

[quads id=1]

Какие порты у нас используются в проекте. Ниже на рисунке мы видим отходящие линии от портов РA0, РВ0, РВ1, РВ2 и РВ3. К порту В у нас подключены светодиоды, а к порту А —  кнопка.

Подключение кнопки к AVR

Итак, при нажатии, мы замыкаем цепь соединяющую +5 вольт с портом РА0 и верхним выводом резистора. Для чего у нас здесь вообще установлен резистор? Дело в том, что цепь кнопки должна быть замкнутой. После того как мы установили резистор, ток у нас течет от плюса питания через кнопку, резистор и дальше на землю.

Подключение кнопки к AVR

Номинал резистора достаточно взять равным 200 Ом. Итак, когда мы нажимаем кнопку, мы соединяем порт РА0 с +5 вольт питания, и если мы опросим ножку РА0 на наличие напряжения или его отсутствие, мы сможем влиять на выполнение нашей программы.

Скрины с текстом нашей программы я привел ниже:Подключение кнопки к AVR

Подключение кнопки к AVR

Итак отличия от прошлого проекта заключаются в том, что все 8 выводов порта РА мы конфигурируем на вход, выводы порта РВ0 — РВ3 мы конфигурируем на выход, а РВ4 — РВ7 на вход.

Подключение кнопки к AVR

Затем мы используем в нашей программе проверку условия «if»

Подключение кнопки к AVR

Итак, мы видим в строчке после «if», в скобках, условие выполнения. Код ниже выполняется, если на порту PA0 у нас присутствует логический ноль, или ноль вольт. Этот текст в скобках —  сдвиг бита порта. Мы разберем в одной из следующих статей, а пока достаточно принять на веру, что этим мы опрашиваем кнопку на отжатие. Затем в фигурных скобках идет текст программы, который выполняется, если условие верно. Если условие не верно, программа продолжает выполняться дальше, пропустив текст в фигурных скобках.

Аналогично, с помощью условия «if» мы опрашиваем кнопку на нажатие. Обратите внимание, текст у нас в скобках изменился. Это означает что если на ножке РА0 у нас логическая единица, мы выполняем условие, то есть текст в фигурных скобках. То есть другими словами, у нас при отжатой кнопке, поочередно загораются и тухнут светодиоды с первого по четвертый, а при нажатии и удерживании, загораются и тухнут с четвертого по первый. Таким образом, мы можем влиять на выполнение программы, с помощью нажатия кнопки, опрашивая наличие на ней логического нуля, или логической единицы

Также прикрепляю архив, в котором находятся файл «сишник», HEX и файл Протеуса.

А вот и видео

 

Часы

Электронный набор-конструктор 'собери сам' - больше часы. В наборе есть пультик для управления режимами, батарейки, вся нужная электроника для пайки. Потребляет 30-50 мА. А размеры 23х9х3 см. В наборе очень много светодиодов, так что для сборки потребуются не только знания электроники, но и терпение. Очень интересный и увлекательный набор, которому будет рад любой радиотехник. После сборки часы можно повесить на стену и наслаждаться проделанной работой.

Экран

Быстрая доставка почтой России, хорошая упаковка, полный комплект, есть запасные резисторы, конденсаторы и транзистор. Для сборки необходим опыт пайки SMD компонентов. С первого раза часы не пошли: время устанавливается, точки мигают, но не идут. Пришлось заменить микросхему RTC DS1302Z.

Цветной светодиодный RGB светильник с дистанционным управлением для пайки, 8x8x8 3D8

Это светильник набор «сделай сам», который вам нужно сварить и собрать самостоятельно. Нижняя пластина состоит из монтажной платы и компонентов. Подсветка 512 светодиодный создает стереопространство. Разнообразие классных моделей, показывающих трехмерный эффект. Лучше смотреть ночью.

Добавить комментарий

Ваш адрес email не будет опубликован.