С тегами:

кнопка

Любые посты за всё время, сначала свежие, с любым рейтингом
Найти посты
сбросить
загрузка...
216
Мне пожалуйста наверх!
13 Комментариев  
Мне пожалуйста наверх!
25
Одна кнопка... столько боли
18 Комментариев  

Или почему я не пользуюсь новым калькулятором

Одна кнопка... столько боли Калькулятор, кнопка, равно, стереть

З.ы кнопка равно переехала левее на её место поставили кнопку стереть

69
Матричная клавиатура и Arduino Часть I
6 Комментариев в Arduino & Pi  

Привет всем! Сегодня расскажу про матричную клавиатуру, ее подключение к Ардуино и еще рассмотрим несколько интересных схем с ее участием.


Если вам неудобно читать, то можете посмотреть закрепленное видео, я там говорю все то же самое и все показываю:)


Внимание! Warning!  Большая часть текста содержит объяснение программного кода, поэтому напоминаю, что их вы можете скачать вот здесь: https://yadi.sk/d/jYwdwS3U3EZ7bG либо посмотреть полноценное видео, закрепленное под статьей.


Сделать такую клавиатуру можно и самому, для этого понадобится печатная плата, 12 или 16 обычных кнопок и соединительные провода. Я же буду использовать готовую ( на первом фото ) Для чего она нужна? Для примера возьмем обычную кнопку. Как вы знаете, это простейшее электромеханическое устройство. Чтобы подключить ее к плате, нужно использовать стягивающий резистор, а также задействовать по одному контакту питания и "земли". Нажатием такой кнопки можно выполнить определенное действие, например можно управлять светодиодом, различными приводами, механизмами и так далее. А что, если нам необходимо подключить несколько кнопок? Тогда придется задействовать больше контактов и большее число проводов, да и без макетной платы здесь уже не обойтись, плюс еще резисторы придется использовать в большем количестве.


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


Подключать ее к плате следует 8 выводами, каждый из них считывает значения с определенных строк и столбцов. Подключать их следует к выводам на панели Digital. Я подключу например к выводам от 2 до 9 включительно. Нулевой и первый трогать лучше не стоит, поскольку они предназначены для UART интерфейса, например, подключить блютуз модуль, и рациональнее будет их оставить свободными, на всякий случай.


На втором фото можно посмотреть, как выглядит самая простая схема с использованием клавиатуры. Для более удобной работы с ней была написана библиотека Кейпад, скачать ее, а также другие скетчи можно вот здесь: https://yadi.sk/d/jYwdwS3U3EZ7bG


После того, как вы установили в библиотеку, то можно зайти в Ардуино IDE и посмотреть примеры скетчей, которые нам предлагают.


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


Скетч здесь по сути очень простой. Единственное, что стоит отметить, это первые строчки кода. Сначала мы подключаем нашу библиотеку, затем указываем сколько строк и столбцов у нашей клавиатуре, а потом нужно правильно расположить названия наших клавиш, чтобы было удобнее работать. Если вы это сделаете неправильно, то например при нажатии цифры 4, у вас в порт выйдет цифра 6 или любой другой символ. Собственно, это лучше определять опытным путем, что я и сделал и все символы расположил, так как они расположены на моей клавиатуре. Далее нужно также указать к каким выводам на плате мы подключаем управление строками и столбцами. А далее в функции void setup мы указываем скорость последовательного соединения с монитором порта, как 9600 бод, по сути функция нужна только для подачи питания на модули. В функции Void Loop прописываем условие, переменная Char используется для хранения только одного символа, например 1 или А или 5, что соответственно подходит к нашей ситуации, Соответственно, если нажатие было зафиксировано, то происходит вывод символа в монитор порта, с помощью функции Serial Print, в скобках нужно обязательно указывать какую переменную выводим в порт. Если все сделали верно, то в мониторе порта получим тот символ, на который мы нажимали. Также не забудьте в мониторе порта внизу справа указать скорость передачи данных такую же, как в скетче.



Допустим, мы не хотим подключать плату к компьютеру, чтобы видеть эти данные. Давайте выведем тогда их на дисплей. Я использую дисплей, сопряженный с модулем i2c, который также упрощает подключение. Дак вот, для работы с дисплеем с шиной i2c необходимо установить еще одну библиотеку, ссылка на нее тоже вот здесь: https://yadi.sk/d/jYwdwS3U3EZ7bG


Поэтому в скетче мы также указываем ее, далее нужно указать размерность дисплея, у меня дисплей вмещает по 16 символов в каждой из 2х строк, я это и указываю. В функции Void Setup нужно подать питание на дисплей, и включить подсветку. Делается это с помощью двух функций: lcd.begin и lcd.backlight


В функции Voil Loop нужно в самом условии прописать строчку lcd.print для вывода данных на дисплей. И еще нужно предварительно установить положение курсора, здесь в скобках идут 2 цифры, первая это номер символа, а вторая это номер строки. Нужно помнить, что у этого дисплея отсчет строк и столбцов начинается не с единицы, а с нуля. То есть здесь имеются строчки под номерами 0 и 1, а не 1 и 2, как может показаться сначала. Затем загрузим код в плату и посмотрим что будет.


Схема с дисплеем видна на фото 3. Кстати, так как у нас при подключении дисплея используется интерфейс i2c, то подключать будем его к аналоговым выводам. Выходы SDA и SCL соответственно подключаем к А4 и А5, а остальные два это уже питание и "земля".


Как мы видим, нажимая на любой символ, мы увидим его отображение на нашем дисплее.


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


Как мы видим, все отлично получается. Чтобы стереть строчку, вспомним калькулятор. Когда нам нужно было удалить значение, мы нажимали на … кнопку сброса. Нажмем на такую кнопку в плате и можем заново набирать символы:)



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


Попробуем при нажатии определенной клавиши включать светодиод, или выключать. Для этого подключим к нашей плате светодиод. Я буду использовать макетную плату и резистор ( желательно использовать от 150 до 220 вольт), ну и двумя перемычками замкну схему, подключив их к пинам питания и земли на нашей плате Ардуино. Вот так будет работать данная схема: нажимаю на 1 и включается светодиод, нажимаю на 2 и он выключается.

Светодиод  я кстати буду подключать к пину 12 на плате Ардуино.


Схема со светодиодом на фото 4


Теперь давайте разберем скетч.


Мы возьмем наш самый первый скетч и просто его дополним. В начале с помощью очень полезной функции Define присвоим название подключенному к пину 12 светодиоду, как ledpin. В функции Void setup указываем сигнал со светодиода, как выход. Кстати, если бы не наша библиотека Кейпад ( для нашей клавиатуры ), то нам бы пришлось прописывать все то же самое для наших 8 пинов, с которыми связана наша клавиатура. В функции void loop идет условие, здесь нажатие определенной клавиши у нас приравнивается к значению переменной key, Далее мы должны прописать оператор Switch, который будет сравнивать значения переменной key и давать определенные команды в зависимости от этого значения. Состоит он из двух вспомогательных операторов Case и Break. Проще говоря, если будет найдено значение переменной, равное 1 , то будет выполняться действие. Оператор break служит командой выхода из оператора Case.


Соответственно при нажатии на 1, будет выполняться максимальная подача напряжения на светодиод и он будет гореть. При нажатии на 1 , он гореть не будет. Это указывается в функции Digitat write , где в скобках задается название переменной и указание ей. Можно таким образом написать определенные команды для каждой кнопки и управлять большим числом светодиодов или создать одну команду для включения всех светодиодов сразу. На этом скетч заканчивается, он довольно простой.


На сегодня это все, советую также посмотреть видео и подписаться на нас:)


Во второй части статьи будут еще интересные схемы, причем более сложные.

Матричная клавиатура и Arduino Часть I arduino, электроника, радиоэлектроника, микроконтроллеры, матричная клавиатура, кнопка, видео, длиннопост
Матричная клавиатура и Arduino Часть I arduino, электроника, радиоэлектроника, микроконтроллеры, матричная клавиатура, кнопка, видео, длиннопост
Матричная клавиатура и Arduino Часть I arduino, электроника, радиоэлектроника, микроконтроллеры, матричная клавиатура, кнопка, видео, длиннопост
Матричная клавиатура и Arduino Часть I arduino, электроника, радиоэлектроника, микроконтроллеры, матричная клавиатура, кнопка, видео, длиннопост
Показать полностью 4
26
Кто-то выронил гигантскую кнопку
5 Комментариев  
Кто-то выронил гигантскую кнопку
32
Мелодии на кнопках домофона
15 Комментариев  

1."В траве сидел кузнечик"



4949455 5959544


4949455 595954


42 222 21 111 1124544


42 222 21 111 112454



2. песня из к/ф Бумер


686868-000-8668-000-8668-999-8668-000-86



3.Реквием по Мечте


8-76-3-8-76-3-9-87-8-8-76-3-8-76-3-9-87-8-86-8686-8686-8686-8686-86-86-86-86-86-87-888-777-6-888-777-6-888-777-6-666-777-8-888-777-6



4.Жили у бабуси два веселых гуся



43211555-4321555-4664-3553-2342-111

P.S. надо попробовать :)

3534
Князь Александр Невский и кнопка вызова машиниста в метро
95 Комментариев в Star Wars  
Князь Александр Невский и кнопка вызова машиниста в метро
160
Кнопка reset - Dendy. Помогите с названием кнопки.
79 Комментариев в Сообщество Ремонтёров  
Кнопка reset - Dendy. Помогите с названием кнопки. dendy, кнопка, reset, ремонт техники
Кнопка reset - Dendy. Помогите с названием кнопки. dendy, кнопка, reset, ремонт техники

Добрый день уважаемые. Принесли денди в ремонт, вообщем я её починил, но тут такая беда, вышла из строя кнопка RESET, предложил заказчику замену, но тот настаивает на идентичной кнопке, я уже перерыл Ali и прочие сайты (кнопка обычная с 2 выводами) размер 15х15х15. Не могу найти её хоть тресни. Может вы знаете как называется это чудо китайской кнопочной индустрии?

Фото кнопки прилагаю. Консоль 1996 года.

Спасибо за уделенное время.

27
За такое расположение кнопок дизайнер этого ноутбука должен гореть в аду
36 Комментариев  
За такое расположение кнопок дизайнер этого ноутбука должен гореть в аду
468
Кнопки для лифта
25 Комментариев  
Кнопки для лифта
303
Ремонт 2х типовых проблем у LG NEXUS 5 (D821)
194 Комментария в Сообщество Ремонтёров  

Доброго времени суток.

Многие слышали об одном из самых успешных аппаратов из серии Google - LG Nexus 5.

Отличные характеристики, приличная камера и супер цена - всё это сделало этот аппарат 2013 года - бестселлером.

Такой аппарат был и у меня, оставил после себя только приятные воспоминания.

В последнее время - почти у всех моих знакомых, у кого были Nexus 5, вылезли одни и те же проблемы. Сейчас я расскажу как с ними бороться.

1) Неадекватное поведение кнопки Power/циклическая перезагрузка телефона.


При этой неисправности - возникают проблемы с включением или выключением аппарат.

Происходит это обычно после года эксплуатации, у кого-то раньше, у кого-то позже.

Происходит это из-за износа кнопки, расположенной на самой плате. Решается - её заменой ( перепайкой)


Вот собственно сам телефон.

Ремонт 2х типовых проблем у LG NEXUS 5 (D821) ремонт техники, LG, nexus 5, кнопка, power, залипалка, Ремонтики, длиннопост
Показать полностью 9
4714
В этом лифте есть кнопки на случай, если руки заняты.
135 Комментариев  
В этом лифте есть кнопки на случай, если руки заняты.
256
При пожаре, открутить 2 гайки ...
19 Комментариев  
При пожаре, открутить 2 гайки ...
769
Говорят, клиент остался доволен. (Фото не моё, делал не я)
65 Комментариев  
Говорят, клиент остался доволен. (Фото не моё, делал не я)
4322
Волшебная кнопка.
239 Комментариев  

Надо было мне на одном объекте снять слой паркета.

Только верхний слой, потертый и некрасивый.


Я не силен в паркете и дали мне специальную бригаду.

Бригадир русский, с сединами, обещал всё в лучшем виде:

- Конечно сделаем. Давайте отреставрируем полностью. Можем морилкой покрыть, лаком в два-три слоя, как скажете. У нас большой опыт.

- Давайте начнем со снятия, а дальше обсудим. Что вам потребуется для работ?

- Вот договор, смета и счет. Как оплатите аванс - выходим.

- Оборудование? Расходники?

- Всё в смете. Оборудование у нас своё.


Через два дня оплатил, приезжаю смотреть на работников.

Таджики. Или узбеки. Машинка какая-то усталая, похоже на арендованную.

Бригадир отдает указания, работники бегают с этой машинкой.


"Мдаа, ввязался.." - подумал, но у бригадира спросил:

- В договоре 3 дня на работы, сколько реально?

- Завтра всё готово будет. Выдайте 3 тысячи на подотчет на расходники.

- о_О начинайте работать, через 3 часа приеду.


Через 3 часа.

Сделали около 2 кв.м. Один тащит машинку, другой сверху сидит на ней.

- А так и должно быть?

- Так быстрее, мы уже проверяли.

- Паркет не испортите, в договоре мат ответственность на вас.

- На подотчет дайте.

- Вот телефон снабженца, всё что надо он привезет, - расходники в смете, придется вычитать потом с тебя, подумал.


На следующий день.

Бригадира уже нет,

работники сделали около 10 м2, осталось еще 30 м2,

на этот раз на машинке лежит мешок с цементов 50 кг.

- Где Николай Семенович?

- Он отошёл.


Через 4 часа в этот же день.

Бригадира всё нет, на машинке уже 2 мешка с цементом,

сделано 15 м2.

- Где Николай?

- Он отошёл.

- Тормозите, дайте посмотреть машинку.


Останавливают, отходят, смотрят на меня.

- Мешки снимите. - снимают.


Понимаю, что так оно работать не должно. Не может быть, чтобы надо было на механизм 100 кг сверху класть, чтобы он работал.

Ну да. Мешки кладут, чтобы шлиф поверхность до пола доставала.

А почему не достает?

А ну вот, тут специальный стопор для перевозки, чтобы не повредить.

Снимаю стопор, включаю - пошло как по маслу.

Рабочие глаза выпучили.

За 10 минут обрабатываю 1 м2 в одиночку.


Звоню Николаю:

- Вы уволены.

- Как? Что? Я за расходниками отъехал, уже обратно еду.

- Хорошо, но решение принято.


То, что они обработали пришлось переделывать.

Возвращать аванс Николай не стал, пришлось удержать его оборудование по стоимости аренды в счет аванса.

Сначала он возмущался, но, увидев досудебную претензию, успокоился.


Жаль, что такие обещалкины позорят профессию.



Строительная история №48

Показать полностью
2077
Кнопочную фабрику сделал
191 Комментарий  

Я очень люблю кнопки. Иногда по вечерам пораньше спать ложусь, чтобы с утра можно было пораньше встать и начать нажимать кнопки. Все кнопки, какие были дома, понажимал. В прошлом году решил разных, новых кнопок прикупить. Забрал посылку с кнопками с Почты и думаю: «Нахуя мне просто кнопки?! Они же что-то делать должны. Все кнопки дома что-то делают».


В общем, слабоумие и свободное время:

Кнопочную фабрику сделал кнопка, дерево, сделай сам, слабоумие, длиннопост, видео
Показать полностью 15 1
1468
Ничего не трогай
40 Комментариев  
Ничего не трогай Moonbeard, Комиксы, кнопка, длиннопост
Ничего не трогай Moonbeard, Комиксы, кнопка, длиннопост
Показать полностью 4
72
Найдена кнопка выключения кота.
5 Комментариев  
Найдена кнопка выключения кота.
1415
Чтобы выйти из отделения банка...
57 Комментариев  

Пост http://pikabu.ru/story/_4319250 напомнил...

На днях зашёл в отделение "жёлтого" банка, дабы снять денег. Отделение ещё не работает (начало 10:00, время 9:10), но в предбаннике есть банкоматы, куда можно войти, проведя своей картой.

В общем, снял денег, иду к выходу. А внутри обычная кнопка, которая дверь открывает. Так вот она не работает. Нажал. Потыкал. Подёргал. Снова потыкал. Дверь закрыта. Мимо ходят люди, но никому денег не надо, сюда не идут :)

Напомню, до открытия отделения ещё 50 минут >_<


В итоге нашёл телефон банка 8-800-..., позвонил. Далее у нас с милой девушкой Анной (А) состоялся примерно такой диалог:

Я: Добрый день. Зашёл в отделение банка на ул. Уральской, а теперь не могу выйти...

А: Там кнопочка есть, нажмите на неё.

Я: Да пробовал, дверь не открыватеся.

А: А вы дверь толкали?

Я: (&@%#) Конечно.

А: А подёргайте кнопку?

Я: Уже, и не раз...

А: Подождите на линии, сейчас попробую с отделением связаться...


И включает мне музыку...


Тут открывается дверь в сам банк и выглядывает другая девушка (Д).

Д: Это вы не можете выйти?

Я: Ага :(

Д: Вот же кнопочка, её нажать надо!

Я: Да ладно?! Правда, что ли???


В общем, кончилось всё благополучно, у неё подёргивания кнопки из стороны в сторону лучше получились, видимо практика открывания дверей есть :) Извинилась и пообещала вызвать кого-нибудь починить кнопку :)

1126
Чтобы кнопка встала на ...
49 Комментариев  
Чтобы кнопка встала на ...
37
Реакция клавиатуры после удаления кнопки 0
3 Комментария  
Реакция клавиатуры после удаления кнопки 0


Пожалуйста, войдите в аккаунт или зарегистрируйтесь