Передать значения в сторонний контроллер матричной клавиатуры

Всем привет.
Нужна помощь в понимании как с помощью ардуино передать значения в сторонний контроллер вместо физической матричной клавиатуры.


В ардуино получаю значения и на основании них хочу отправить сигнал нажатия соотв. кнопки на клавиатуре. Я вызвонил какие сочетания пар отвечают за кнопки. но не понимаю как дальше действовать.
подскажите ± похожие решения что бы подсмотреть аналогии. Заранее спасибо

Для начала нужно понять, как работает матричная клавиатура, соответственно, понять, как контроллер считывает состояние кнопок клавиатуры, после этого уже можно будет подумать, как эту клавиатуру эмулировать (говоря “эту” я не имею в виду конкретно вашу, а матричную клавиатуру вообще).
В общем - прямая дорога в гугл вам :slightly_smiling_face:

Дальше берешь кучу реле, припаиваешь к контактам кнопок, пишешь код.

А дальше нужно разобраться, каков принцип работы этой клавиатуры. Судя по тому, что кнопок 25, а проводов 10, то это матрица либо 6х4, либо 5х5 (мне лень реверсить разводку, это уж вы сами).
Как вариант, можно предположить, что работает это так: допустим это матрица 6х4 - 6 групп по 4 кнопки (а может 4х6 или 5х5 - разбирайтесь), контроллер в цикле выставляет по очереди на каждую из 6-ти “адресных” линий сигнал (0 или 1 - тоже надо выяснить) и “ловит” его на 4-х линиях “данных”. Если какая-то из 4-х кнопок группы будет в этот момент нажата, по на соответствующей линии “данных” этот сигнал появится. Так определяется нажатая кнопка.
В ардуине соответственно понадобиться тоже 10 пинов (также допустим 6+4), и если надо “нажать” кнопку, то на нужном “адресном” пине надо ловить сигнал от контроллера и в этот момент подавать на нужный пин “данных” импульс. Импульс должен быть чуть короче импульса “адреса”, чтобы не зазеваться и успеть его снять, пока не переключится “адрес”. Если в контроллере есть антидребезг, то возможно импульс придется подать несколько раз.
Осталось взять осциллограф или лог.анализатор и подтвердить или опровергнуть эту теорию.

1 лайк

не вариант т.к. как минимум на моем про микро тупо нет такого количества контактов)
и в целом это не вариант

это важно понять матрица 6х4 или 5х5?
в реверсить разводку как то может помочь то что Я вызвонил пары на шлейфе которые соответствуют кнопкам?
мне нужно только 9ть кнопок из всех. остальные нужно оставить так же физ. кнопками но на новой плате, но это уже другая история.

про осциллограф или лог.анализатор Я уже второй раз слышу и похоже что простыми путями мне не решить эту задачу…

задачи еще и не было, она тщательно скрывается )))

что вы называете задачей? ) Основную суть Я описал. Из фото платы очевидно же что это сип-телефон. мне нужно набрать на нем кнопки не физ. клавиатурой, а ардуиной. Уж не знаю куда детальнее )))



микросхемы на плате такие. поищу к ним инфо, но думаю обречено

Раз кнопок 9 то и реле надо 9. Может и 9 оптопар помогут.

можно и не релюшками, к примеру оптопарами

выше же это проговорили. реле не вариант.

Почему? это самый простой вариант в вашем случае, все остальное боюсь вы не потянете

оптопарами наверное более лаконично но это же нужно 18 контактов на ардуине или лепить туже матрицу из них

похоже что ваши знания в электронике на нуле…
Для 9 оптопар нужно 9 контактов и земля - общая на всех

Что реле, что оптопары - 9 контактов для управления и один на землю.

9 кнопок, значит 9 контактов, остальные 9 на обший

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

Из того же про микро сделать осциллограф и посмотреть на каких контактах идет сканирование и уже от этого плясать.

какой изящный то? Если нужно нажимать 9 кнопок - самое простое 9 контактов. Все остальное сложнее и явно не для вас, если вы даже об общей земле на все кнопки сами не догадались.
А так да, разве что поржать - могу предложить сделать через сдвиговый регистр. Вполне рабочий вариант и пинов меньше, только нафига???