Как подключить 88 клавиш цифрового пианино к ардуино

Здравствуйте у меня никогда не было никакого взаимодействия с ардуино но недавно я столкнулся с проблемой что моё цифровое пианино gem prp8 погорело заживо,живой осталась только клавиатура чувствительная к силе нажатия, и я подумал смогу ли я сделать из нее midi клавиатура или midi контроллер,но я никак не могу найти информацию о том как мне 88 контактов подключить к какой то из плат ардуино, из клавиатуры торчит шлейф на 16пинов,на самой клавитуре есть маленькая плата ,я добавлю схему этой клавиатуры что юы кто то из вас кто решится мне помочь или подсказать мог ознакомиться с принципиальной схемой,моя задача сделать либо миди контроллер подключающийся по юсб или же миди контроллер с выходом на миди и дальнейшим подключение к звуковой карте через те же разъемы миди


Так же я узнал что это всё подключается по какой то матричной схеме но я совсем не понял принцип взаимодейсвия и как выводы шлейфа подключать к входам выходам ардуино

А надо бы разобраться

только 16 пинов маловато для 88 кнопок, если напрямую подключать, нужно 19 пинов (11х8)

Дежавю какое-то…

Нет, в ближайшие годы не сможешь

1 лайк

Как я понял та плата что находится на клавиатуре она какую то часть логических процессов забирает на себя или выполняет роль какого то сдивогового регистра

Там на фотографии что я прикрепил 1ю,слева снизу выходной шлейф там и подписан каждый из 16 контактов

А вот допустим если не брать в учёт эту платку на клавиатуре и подпаяться к каждой из клавиш отдельно ,и как то их подключить к ардуино
Получится такое сделать в теории?

Я давно PS 2 мышку к ардуино подключал, наверное и клавиатуру такую можно, а в ней клавиш-кнопок много…наверное :slight_smile:

А так да, матрица.

Да, собственно она и “расширяет” матрицу 8х8 в матрицу 24х8.
Обычная матрица работает так: мы подаем сигнал нужного уровня (высокий или низкий) на один из выходных контактов и смотрим на каком из входных контактов он появился. Соответственно, вычисляем номер замкнутого контакта (и какой клавише он соответствует).
В данном случае, скорее всего на контакты разъема AB0-AB4 подается номер нужного нам выходного контакта (от 0 до 23), а с выходов KD0-KD7 снимаем сигнал как обычно при работе с матрицей.
По моим измерениям минимальное время между замыканием двух контактов составляет примерно 2 мс. Чтобы обеспечить хоть какую-то плавность изменения velocity нужно, чтобы цикл опроса не превосходил примерно 0.2-0.5 мс. Выходных контактов у нас 24, значит, на один приходится около 10 мкс. За это время нужно выставить нужную комбинацию в выходной порт, немного подождать, считать комбинацию из входного порта, проанализировать ее, сравнить результаты анализа с тем, что было раньше и выяснить, что именно изменилось, и как это следует трактовать. Мне кажется, что для 16 МГц контроллера это слишком большой объем работы. Нужно использовать что-то вроде Blue Pill (72 МГц).
Если интересно, посмотрите мой проект клавиатуры на 25 клавиш:

там применяется как раз 16 МГц контроллер, но на мой взгляд - совсем на пределе возможностей.

Наверное - нет.
Во первых. стандартная компьютерная клавиатура - 101-103 кнопки. Соответственно, столько же там и контактов.
А на музыкальной клавиатуре на каждую клавишу - 2 контакта, т.е. всего - 176.
И еще: на компьютерной клавиатуре кнопки неравнозначны - для некоторых распознаются комбинации из трех клавиш, а на некоторых - только из двух. А на ф-но должны распознаваться любые комбинации хоть из 10 клавиш (20 контактных групп).

@sevava , а можно фото погоревшей платки? Очень любопытно что там.





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

Серъезная начинка)
Я предполагаю разделение на функциональные блоки:
1.Клавиши
2.Схема их сканирования
3. Мозги по обработке в МИДИ или звук.
Сгорел блок 3, верно?

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

Схема и мозги с платой сканирования клавиатуры целы но при этом есть неисправность части того что постоянно в определенный отрезок времени начинает играть аккомпонимент

Мозги починить определённо проще чем создавать новые. Боюсь это очень нетривиальная задача даже для лучших специалистов. Тут нужна команда из программиста, инженера-схемотехника и музыканта и очень много времени и сил.

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

Как пришло, так и ушло (с). Разрабатывать на основе клавиатуры новое устройство, да еще и с тем же функционалом - это вам будет задача на долгие годы и очень, ОЧЕНЬ большие деньги ))