Вопрос по матрчной клавиатуре или как нажать клавишу?
Вопрос по матрчной клавиатуре или как нажать клавишу?
Уважаемые матерые радиокоты! Помогите решить проблему. Существует микроконтроллер с матричной клавиатурой. Нужно симитировать нажатие клавиш на этой клавиатуре, используя сигналы с выходов другого контроллера. Как это можно реализовать?
З.Ы. Электромагнитные реле не предлагать. Не подойдут по габаритам и энергопотреблению. Первый контроллер питается от 3.3в, Ренесас какой-то с ПЗУ. Второй контроллер attiny13a в смд корпусе, но можно при необходимости и другой применить, главное габариты чтоб маленькие были. "Нажимать" нужно по очереди 2 кнопки.
З.Ы. Электромагнитные реле не предлагать. Не подойдут по габаритам и энергопотреблению. Первый контроллер питается от 3.3в, Ренесас какой-то с ПЗУ. Второй контроллер attiny13a в смд корпусе, но можно при необходимости и другой применить, главное габариты чтоб маленькие были. "Нажимать" нужно по очереди 2 кнопки.
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Для этого, как минимум, нужно видеть схему подключения этих кнопок. А дальше - осциллограммы в указанных точках.Помогите решить проблему.
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Тинькой считываем строки, анализируем, выставляем на столбцы нужные сигналы. Или наоборот, ссчитываем столбцы, а выдаем на строки. Зависит от того, где у приблуды входа и выхода. А анализировать методом тыка либо как предложил Аlex - с помощью осциллограмм.
Docendo discimus
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Ну значит ловим на левом входе низкий уровень и , в зависимости от нажатой кнопки, подаём его на правые выходы, на время удержания этого низкого уровня.
Или просто повторяем на выходах (до диодов) то, что на входе, в зависимости от нажатой кнопки.
Или просто повторяем на выходах (до диодов) то, что на входе, в зависимости от нажатой кнопки.
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Аlex писал(а):Ну значит ловим на левом входе низкий уровень
Хм... А откуда там возьмется низкий уровень? Кнопка не нажата и вход подтянут к питанию...
Я думал надо на выходе ловить момент сканирования, и тогда на вход сигнал подавать...
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Всё верно. Просто Аlex принял входы за выходы, а выходы за входы. Но и ваше описание, что у чего вход, выход неоднозначно.
Docendo discimus
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Понятно. Значит тинька должна считывать состояние двух выходов ренесаса и управлять своим выходом по результатам? Можно просто переключать с выхода на вход состояние вывода тиньки?
И еще. Сейчас память тиньки уже на 90% забита. Может не программное решение применить, а схемотехническое? Например, ключ транзисторный туда воткнуть?
И еще. Сейчас память тиньки уже на 90% забита. Может не программное решение применить, а схемотехническое? Например, ключ транзисторный туда воткнуть?
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Переключать-то можно. Но нужно следить по схеме, когда и какие сигналы будут поступать на тиньку - в смысле чтоб не попалить порт, когда он настроен как выход и на него же поступает внешний сигнал.
В плане что воткнуть - дело хозяйское. Что вам даст ключ?
В плане что воткнуть - дело хозяйское. Что вам даст ключ?
Docendo discimus
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
pyzhman писал(а): в смысле чтоб не попалить порт, когда он настроен как выход и на него же поступает внешний сигнал.
Ну можно же диод постивить как на выходах ренесаса?
Последний раз редактировалось Xrust Пн окт 28, 2013 12:32:03, всего редактировалось 1 раз.
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
pyzhman писал(а):В плане что воткнуть - дело хозяйское. Что вам даст ключ?
Цель - чтобы тиньке не пришлось состояние выходов ренесаса считывать. А что и как воткнуть - я сам еще не придумал, потому и спрашиваю.
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Вот такая схема заработает? Снизу земля - это столбец в момент опроса, когда на нем логический 0. Справа вход строки, подтянутый резистором к питанию. Вместо (а вернее параллельно) кнопке ставим транзистор. Затвором управляет Attiny, когда нужно "нажать" клавишу. Это будет работать? Или я что-то неправильно понимаю?
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Короче, собрал схему из предыдущего поста. И вот что имеем.

Вроде все правильно, и должно работать. Импульсы идут на вход (смотрю осциллографом в точке А), если подать управляющий сигнал на затвор (точка В), а результата нет. От кнопки нажатие регистрируется, а от ключа - нет.
Амплитуда импульсов вроде нормальная для логического 0 и 1.
Подскажите, в чем может быть моя ошибка?
А вот схема клавиатуры, которую я пытаюсь переделать.

Вроде все правильно, и должно работать. Импульсы идут на вход (смотрю осциллографом в точке А), если подать управляющий сигнал на затвор (точка В), а результата нет. От кнопки нажатие регистрируется, а от ключа - нет.
Амплитуда импульсов вроде нормальная для логического 0 и 1.Подскажите, в чем может быть моя ошибка?
А вот схема клавиатуры, которую я пытаюсь переделать.
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Ну всё не так сложно. K0-К3 по-очереди прижимаются к Vss, а на K10-13 ловятся нулевой уровень.А вот схема клавиатуры, которую я пытаюсь переделать.
По сути никаких ключей не нужно - ловим своим МК на линиях K0-К3 нулевой уровень и , в зависимости от необходимой нажатой кнопки, прижимаем к Vss линию K10-13, соответственно.
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Аlex писал(а):По сути никаких ключей не нужно - ловим своим МК на линиях K0-К3 нулевой уровень и
Это все понятно. Скорее всего в итоге так и сделаю. Но сейчас этап отладки. И есть определенные сложности. Это съемная панель магнитолы. Доступ к ее плате достаточно сложный. И я решил сначала попробовать с ключами. И вроде ключ срабатывает как надо, а магнитола не реагирует... Хочу разобраться: почему? Или лыжи не едут или я...

Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Я бы сделал приблизно так :

- Вложения
-
- 4N.JPG
- (6.59 КБ) 740 скачиваний
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Разобрался в проблеме. Оказывается, не хватало длительности "нажатия". Увеличил длину импульса в 4 раза и все заработало.
Jack_A, такое включение необходимо, если требуется гальваническая развязка. Но в моем случае источник питания общий и смысла усложнять нет. Остается попробовать по совету Аlex подключить без транзисторов. Теперь примерно ясны требования к длительности импульсов. Осталось придумать, как это осуществить программно.
Jack_A, такое включение необходимо, если требуется гальваническая развязка. Но в моем случае источник питания общий и смысла усложнять нет. Остается попробовать по совету Аlex подключить без транзисторов. Теперь примерно ясны требования к длительности импульсов. Осталось придумать, как это осуществить программно.
- АлександрЛ
- Друг Кота
- Сообщения: 43809
- Зарегистрирован: Пн ноя 30, 2009 03:00:01
- Откуда: Нерезиновая
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
А что так против оптопар? цена вопроса- то всего- 10 рублей....
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
... и 4 лишних детали и провода. Если схема до этого из всего 4 деталей состояла - тинька, 2 транзистора и энкодер - это слишком. Лучше я вообще без транзисторов сделаю.
Re: Вопрос по матрчной клавиатуре или как нажать клавишу?
Прошу прощения, что влажу в беседу умных людей.
С оптопарой - очень красивое решение, только если нужно иммитировать нажатие кнопок расположенных на одной "линии" будут программные сложности, типа длительностей импульсов, когда импульс подать, когда снять...
Если немного изменить предложенную схему, Тинька сможет просто выставить импульс "1" - "кнопка нажата" и держать его сколько нужно, и снять импульс "0" - когда "кнопку отпустили".
Правда для этого нужно, светодиод запитать не от "+5", а от выхода Тиньки, после резистора 330 Ом, поставить транзистор на "GND", базу транзистора подключить к "линии опроса клавиатуры".
Расчет на то, что у Тиньки выход не "открытый коллектор".
Собственно светодиод будет загораться только если Тинька "разрешила" и опрашивается именно эта линия клавиатуры, а значит фототранзистор будет замыкать только нужную кнопку и только на нужное время, всегда пока Тинька "жмет кнопку".
Вот модификация схемы, извиняюсь перед её автором за внесения изменений без получения на это разрешения.

С оптопарой - очень красивое решение, только если нужно иммитировать нажатие кнопок расположенных на одной "линии" будут программные сложности, типа длительностей импульсов, когда импульс подать, когда снять...
Если немного изменить предложенную схему, Тинька сможет просто выставить импульс "1" - "кнопка нажата" и держать его сколько нужно, и снять импульс "0" - когда "кнопку отпустили".
Правда для этого нужно, светодиод запитать не от "+5", а от выхода Тиньки, после резистора 330 Ом, поставить транзистор на "GND", базу транзистора подключить к "линии опроса клавиатуры".
Расчет на то, что у Тиньки выход не "открытый коллектор".
Собственно светодиод будет загораться только если Тинька "разрешила" и опрашивается именно эта линия клавиатуры, а значит фототранзистор будет замыкать только нужную кнопку и только на нужное время, всегда пока Тинька "жмет кнопку".
Вот модификация схемы, извиняюсь перед её автором за внесения изменений без получения на это разрешения.
- Вложения
-
- 4N_.PNG
- (15.12 КБ) 813 скачиваний