Например TDA7294

Форум РадиоКот • Просмотр темы - Вопрос по 4*4 клавиатуре
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт май 15, 2025 20:19:46

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 18 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Ср фев 22, 2017 21:11:49 
Встал на лапы

Карма: 1
Рейтинг сообщений: 0
Зарегистрирован: Ср ноя 23, 2016 09:50:36
Сообщений: 87
Рейтинг сообщения: 0
Вот делаю клавиатуру для пика:
Изображение
растолкуйте мне принцип работы с такой клавиатурой со стороны программы, то есть как осуществлять опрос и т.д.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Ср фев 22, 2017 22:27:40 
Грызет канифоль

Карма: 3
Рейтинг сообщений: 10
Зарегистрирован: Пт мар 20, 2009 12:25:47
Сообщений: 289
Откуда: Ivanovo
Рейтинг сообщения: 0
Диодов не хватает каждой кнопке.
И читай динамический опрос.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Ср фев 22, 2017 22:28:16 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1337
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4558
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
https://yandex.ru/search/?lr=5&msid=148 ... 1%80%D1%8B
Зачем тут переписывать то, чего и так навалом в интернете ?

Конкретно, что не понятно ?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 05:14:18 
Вымогатель припоя
Аватар пользователя

Карма: 2
Рейтинг сообщений: -39
Зарегистрирован: Пт сен 30, 2016 05:52:37
Сообщений: 529
Рейтинг сообщения: 0
Сам принцип таков. Есть "строки", есть "столбцы".

Цикл y от 1 до 4 по строкам
--подаем питание на y
--ждем чуток, пока пин отреагирует и включит питание
--Цикл x от 1 до 4 по столбцам
----если на x 1, то нажата кнопка (x,y)
--конец цикла по столбцам
--убираем питание с y
конец цикла по строкам

то есть суть в том, что по очереди на одну координату подаем питание, а по другой проверяем: появилось ли оно. И если появилось, то нажата кнопка на их пересечении. Далее убираем питание и переходим дальше. Проблемой будет, когда у вас будут нажаты несколько кнопок одновременно. Сигналы при этом будут контактировать друг с другом и на выходе у вас будет дичь (кто кого перетянет). Поэтому, на одну из координат по диоду шоттки воткните, а со стороны другой координаты подтяните к земле (если отсутствием сигнала будет считаться земля). Также не забудьте про дребезг контактов, который в вашем случае можно устранить программно.

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


Вернуться наверх
 
Открыт интернет-магазин MEAN WELL.Market – весь ассортимент MEAN WELL, выгодные цены

Открыта удобная площадка с выгодными ценами, поставляющая весь ассортимент продукции, производимой компанией MEAN WELL – от завоевавших популярность и известных на рынке изделий до новинок. MEAN WELL.Market предоставляет гарантийную и сервисную поддержку, удобный подбор продукции, оперативную доставку по России. На сайте интернет-магазина посетители смогут найти обзоры, интересные статьи о применении, максимальный объем технических сведений.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 07:16:29 
Друг Кота
Аватар пользователя

Карма: 49
Рейтинг сообщений: 392
Зарегистрирован: Вс июл 12, 2009 19:15:29
Сообщений: 7012
Откуда: Ижевск
Рейтинг сообщения: 0
spongebob писал(а):
Диодов не хватает каждой кнопке...

дабы не было кз при
LastHopeMan писал(а):
одновременно нажатые кнопки

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

Добавлено after 7 minutes:
LastHopeMan писал(а):
...
--Цикл x от 1 до 4 по столбцам
....

Интереснее считать сразу порт и по маске определить нажатую кнопку.

_________________
Docendo discimus


Вернуться наверх
 
LED-драйверы MOSO - надежные решения для индустриальных приложений

Продукция MOSO предназначена в основном для индустриальных приложений, использует инновационные решения на основе более 200 собственных патентов для силовой электроники и соответствует международным стандартам. LED-драйверы MOSO применяются в системах наружного освещения разных отраслей, включая промышленность, сельское хозяйство, транспорт и железную дорогу. В ряде серий реализована возможность дистанционного контроля и программирования работы по заданному сценарию. Разберем решения MOSO подробнее>>
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 09:57:16 
Грызет канифоль

Карма: 3
Рейтинг сообщений: 10
Зарегистрирован: Пт мар 20, 2009 12:25:47
Сообщений: 289
Откуда: Ivanovo
Рейтинг сообщения: 0
На каждой кнопке.
Иначе при одновременном нажатии 3х и более кнопок будут ложные срабатывания.
Представьте что вы нажали кнопки с адресами 1.1, 3.1, 3.3
При опросе первой строки окажутся на выходе "нажатыми" 1.1 и 1.3 (хотя 1.3 и не нажата).
П.с. это если есть вероятность одновременного нажатия 3-х и более. Если 2 и более, то на строки(столбцы). Если 1, то ничего не надо.


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 10:43:55 
Вымогатель припоя
Аватар пользователя

Карма: 2
Рейтинг сообщений: -39
Зарегистрирован: Пт сен 30, 2016 05:52:37
Сообщений: 529
Рейтинг сообщения: 0
pyzhman писал(а):
Только не каждой кнопке, а каждому столбцу или строке, в зависимости от того, куда вы подаете опрашивающий сигнал.

Вы меня некачественно прочитали :))) Не говорил я такого.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 11:01:00 
Друг Кота
Аватар пользователя

Карма: 49
Рейтинг сообщений: 392
Зарегистрирован: Вс июл 12, 2009 19:15:29
Сообщений: 7012
Откуда: Ижевск
Рейтинг сообщения: 0
Прочтите качественно моё предыдущее сообщение.

_________________
Docendo discimus


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 11:37:11 
Сверлит текстолит когтями
Аватар пользователя

Карма: 25
Рейтинг сообщений: 168
Зарегистрирован: Ср янв 29, 2014 08:41:31
Сообщений: 1231
Откуда: Баку
Рейтинг сообщения: 0
AN529

_________________
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 12:13:58 
Вымогатель припоя
Аватар пользователя

Карма: 2
Рейтинг сообщений: -39
Зарегистрирован: Пт сен 30, 2016 05:52:37
Сообщений: 529
Рейтинг сообщения: 0
pyzhman писал(а):
Прочтите качественно моё предыдущее сообщение.

Хорошо, тыкну лапой.

pyzhman писал(а):
LastHopeMan писал(а):
одновременно нажатые кнопки

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

LastHopeMan писал(а):
Поэтому, на одну из координат по диоду шоттки воткните, а со стороны другой координаты подтяните к земле (если отсутствием сигнала будет считаться земля)


Так что ваш косяк :music:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 17:32:32 
Друг Кота
Аватар пользователя

Карма: 49
Рейтинг сообщений: 392
Зарегистрирован: Вс июл 12, 2009 19:15:29
Сообщений: 7012
Откуда: Ижевск
Рейтинг сообщения: 0
Вы, очевидно, некачественно прочли моё сообщение. Ещё раз -
дабы не было кз при "одновременно нажатые кнопки". Это означает, что для того, чтобы не было короткого замыкания при одновременно нажатых нескольких кнопках, линии нужно развязать диодами. Что является подтверждением ваших слов -
Цитата:
Сигналы при этом будут контактировать друг с другом и на выходе у вас будет дичь

_________________
Docendo discimus


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 17:59:36 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 3
Рейтинг сообщений: 21
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Сообщений: 157
Откуда: не с Уфы
Рейтинг сообщения: 0
Думаю, качественнее всего было бы наверное использовать ацп для такого количества кнопок. А одновременные нажатия не использовать, тем более судя по всему такая клавиатура скорей всего для ввода пароля понадобится, либо такие нажатия, если они присутствуют в задумке, программно заменить на какой-нибудь иной алгоритм. Тогда и программа проще станет и ног меньше под это дело уйдёт.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 18:10:42 
Друг Кота
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1859
Зарегистрирован: Чт сен 12, 2013 00:54:12
Сообщений: 4119
Откуда: ЗаМКАДье. Там, где ЦУП
Рейтинг сообщения: 0
Медали: 5
Получил миской по аватаре (5)
Если нет желания ставить на кнопки диоды - сделайте так, что бы в любой момент времени выходом был только один из 8-ми выводов (остальные 7 - входы).
Программа немного усложнится, но деталей на плате будет меньше (особенно, если использовать встроенную "подтяжку" к Vdd /PULL-UP/).


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Чт фев 23, 2017 19:11:22 
Вымогатель припоя
Аватар пользователя

Карма: 2
Рейтинг сообщений: -39
Зарегистрирован: Пт сен 30, 2016 05:52:37
Сообщений: 529
Рейтинг сообщения: 0
pyzhman писал(а):
Вы, очевидно, некачественно прочли моё сообщение. Ещё раз -
дабы не было кз при "одновременно нажатые кнопки". Это означает, что для того, чтобы не было короткого замыкания при одновременно нажатых нескольких кнопках, линии нужно развязать диодами. Что является подтверждением ваших слов -
Цитата:
Сигналы при этом будут контактировать друг с другом и на выходе у вас будет дичь

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Пт фев 24, 2017 05:32:17 
Друг Кота
Аватар пользователя

Карма: 49
Рейтинг сообщений: 392
Зарегистрирован: Вс июл 12, 2009 19:15:29
Сообщений: 7012
Откуда: Ижевск
Рейтинг сообщения: 0
Суть вашего первого поста - необходимость использовать диоды для избежания кз при одновременно нажатых кнопках. Придерживаясь такого же мнения, я использовал ссылку на ваши слова. Очевидно, вы не качественно поняли смысл этого.

_________________
Docendo discimus


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Пт фев 24, 2017 10:51:46 
Это не хвост, это антенна
Аватар пользователя

Карма: 17
Рейтинг сообщений: 227
Зарегистрирован: Вс май 13, 2012 00:01:54
Сообщений: 1431
Рейтинг сообщения: 0
Если применить выходы с открытым коллектором, то не надо диодов. Но входы должны быть с подтяжками в плюс.
Чтоб не заставлять проц постоянно опрашивать клаву, - наверно можно сделать обработку по прерыванию.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Пт фев 24, 2017 11:10:23 
Вымогатель припоя
Аватар пользователя

Карма: 2
Рейтинг сообщений: -39
Зарегистрирован: Пт сен 30, 2016 05:52:37
Сообщений: 529
Рейтинг сообщения: 0
Или применить ТТЛ микросхемы включая счетчик, но по размеру проигрываем.
Например, так https://www.youtube.com/watch?v=5H5WsxCqO9A


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопрос по 4*4 клавиатуре
СообщениеДобавлено: Пт фев 24, 2017 15:55:22 
Друг Кота
Аватар пользователя

Карма: 49
Рейтинг сообщений: 392
Зарегистрирован: Вс июл 12, 2009 19:15:29
Сообщений: 7012
Откуда: Ижевск
Рейтинг сообщения: 0
Однако вопрос ТС состоит
anten89 писал(а):
...со стороны программы...

, а не со стороны железа.

_________________
Docendo discimus


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 18 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y