Для динамической клавиатуры нужно не кнопка на замыкание а переключающая кнопка , чтобы можно было фиксировать начало и конец события
Можно поподробнее расписать эту мысль?
Между чем и чем должно происходить переключение?
НЕ понял вопроса. переключающая кнопка на выходах высокий потенциал - центр к земле
на нормальном НЗК - момент размыкания - начало отсчета - на разомкнутом контакте - момент замыкание - конец отсчета … Чем интенсивнее нажатие тем менее время между двумя событиями… ну как то так…
теоретически на 60 кнопок должно хватить 4 выхода и 8 входов МК итого 12
пардон … чуть больше 8-10 выходов и 8 входов
только на мой взгляд это чисто для развлечения т.к рентабельность при цене миди клавы чувствительной к скорости нажатия на 50 кнопок порядка 8т…имхо остается под сомнением
@romansochi , Вы бы место цифр 1, 2 и 3 нарисовали на схеме, куда эти контакты подключаются.
ну 16 разрядный дешифратор и 2 -4 разрядных мультиплексора
ну например
по 4 значному адресу каждая из 16 линий подтягивается к земле ну а с помощью кнопок этот земля появляется на мультиплексорах код кнопки нажат и отжат снимается с выходных линий мультиплексоров
играя енайблями мультплексоров и адресными линиями дешифратора можно опросить 64 кнопки на события (начало нажатия и конец нажатия ) -входы выходы соеденить на МК -какой ну наверное не ниже 2560 в случае ATMEL … т.к 14 а то и 15 линий займет клава енабли и т.д.
рассчитываем время между нажата отжата - это и есть интенсивность нажатий .. ну почти … кнопки должны быть с одинаковым рабочим ходом…
получается типа 3 октавы - 60 кнопок и 4 динамичные (8 обычных) для своих нужд…
решение в лоб возможно чего-то пропустил не учел
а не…не 3 октавы !
1 кнопкка нота например ДО большой октавы , тогда 60 нота СИ 3-ей октавы ну вроде так я не музыкант
поглядел- 61 динамическая кнопка на 5 октав и 3(6) кнопок динамических(обычных) для своих нужд например функциональные выбора режима и т.д
Схему, честно говоря, не понял.
Понял только , что на 3 клавиши используется 3+3+4=10 ног разных микросхем.
Не понял, в частности, чем эта схема лучше схемы стандартной матрицы.
Ну , стандартная матрица на 12 ног - это 36 обычных или 18 динамических кнопок…
с моим вариантом на теже 12 ног - 128 обычных или 64 динамических…почти в 3 раза больше… , + быстрый опрос , выкатил 16 адресов и снял 16 байт значений + отслеживается нажатие нескольких клавиш одновременно…(хотя это и на стандартной матрице можно сделать).к тому же добавив еще один мультиплексор получаем еще 64 обычных кнопки , для выбора режимов работы увеличив кол-во ног всего на 4.
. можно конечно спи расширители ,но все равно на 128 кнопок это 8 расширителей… да и опрос 8 расширителей имхо больше времени занимает чем считать 16 байт , по крайне мере для 2860 … хотя может ошибаюсь считать надо
ЭЭЭ … На 3 клавиши 5 ног , каждая следущая до 16 по одной ноге добавляет
Блин … ну я ж не мог рисовать все 64 кнопки … 1 кнопка использует 1.4.5 ноги ,( 3 пина) для следующих 15 кнопок ноги 4.5 одни и тежи ,т.е все 16 кнопок запараллелены, разный только центральный пин … таким образом
1 кнопка 3 пина
2 кнопки 4 пина
3 кнопки 5 пин
и т.д
а то , что Вы подписали 8.9.10 это следующие 32 кнопки по такому же принципу…(Да и там не 8.9.10 там 16 ножек , просто я нарисовал первые 2 и последнюю 16 . Рисовать 16 одинаковых подключений было долго)
всего 4 блока по 16 кнопок ( на схеме нарисовано первые 2 и последняя остальные пропущенны) на 16 ножек дешифратора - 4 блока - и по 2 блока на каждый мультиплексор…
Да и там схематично , а самом деле дешифратор с инвертируемыми выходами
типа
Спасибо, я, вроде, разобрался, как работает (или как должна работать) схема, так что понимаю, что LOW должен быть только на одном выходе, а на остальных - HIGH.
А вот насчет цифр - возникают вопросы: насколько я понимаю, схема в том виде, что нарисована (естественно, учитывая пропущенные детали) содержит два 4-входовых мультиплексора и один 16-выходовый дешифратор, и обеспечивает обработку 64 клавиш по переключающей группе (считай, по две пары контактов) на каждую.
Но если мы нарисуем “стандартную” матрицу, то результат будет тот же: 16*8=128 контактных групп, то также соответствует 64 клавишам.
Т.е. при 24 контактах обе схемы обеспечивают подключение до 64 клавиш. Чуда не произошло.
Зато у схемы явный недостаток - “нестандартные” контактные группы.
Исправил Выше рисунок… Понимаете не правильно …Использует всего 12 выводов МК
(т.е если стандартная матрица 6 на 6 или 36 кнопок обычных ну или 18 если динамическим эффектом)
а если с логикой то
используя всего 12 выводов МК (4 слева адрес входа и байт справа выход 4+8=12) И это 128 обычных клавиш или 64 с динамическим эфФЕКТОМ
Ну теоретически есть переключающие стандартные кнопки но конечно руки придется применить . а вообще я же писал , что сейчас только для развлечения т.к за 8 штук можно купить готовую правда с меньшим числом октав. к томуже можно и не кнопки использовать а натянуть 8 струн (т.к 8 выходов с блоков кнопок) и между ними контакты бегающие…
Да и кстати если использовать у мультиплексоров W (|| EZ ||0E ||E) вывод как чип селект и запарралелить одноименные разряды , то можно еще на 3 вывода сократить и тогда у МК будет занято 4+4+1 - 9 ножек … тогда и 328 может хватить меги возможно
P/S если полноценно делать с кучей выборов режимов и т.д то добавив еще 1 копеечный мультиплексор можно получить 64 клавиши октав+ 128 кнопок выбора режима , и при этом займется
4+4+4+4- Всего 12 выводов или 4+4+1+1 Всего 10 выводов во втором варианте …
вместо 32 ножек стандартного матраса
При чем тут выводы МК?
Речь идет о том, сколько линий идет к клавиатуре.
А если уж учитывать дополнительные микросхемы, то со сдвиговыми регистрами можно на 6 ногах сделать любое количество клавиш, хоть 2048.
Видел я проект такой конструкции. Более того, автор утверждает, что проект успешный. Вот только сам автор свой проект в железе не реализовал, а из тех, что попытался, до конца дошел только один, причем утверждает, что инструмент пригоден для того, чтобы “подбирать аккорды”. Есть даже демонстрационное видео, но динамики я на нем не услышал.
Тот проект, ссылку на который я выкладывал выше, собран именно на 328, причем без дополнительных микросхем. И, кстати, “с кучей выборов режимов” и светодиодной индикацией.
Могу даже здесь схему продублировать:
Пардон ,4+4+4+4- 16 вывоводов , или 4+4+1+1+1-11 выводов нужно использоватью. и не 64 динамических+128 , а 64 динамические и 64 обычные
Ну незнаю… какой смысл считать провода к кнопкам они везде одинаковы будут…а конкретно проводов к блоку кнопок всего 24 да и то если логику рядом с мк на плате ставить, что совсем необязательно… я обычно считаю сколько я займу у мк выводов т.к именно в этом обычно ограничение…
да и выше приведенная схема всего 24клавиши+2 против 64+128
я про проект незнал , просто прикинул как еше можно сделать