Есть ли какие-то подводные камни при проектировании больших резистивных клавиатур для ардуино? Когда речь идет о 4-5 кнопках - все просто. Но если нужно предположим 60-80 кнопок? На сколько групп нужно раздивать и нужно ли? Есть ли еще какие проблемы?
Применяйте или 74HC595 или возьмите старую клаву от компа PS/2- она к ардуине нормально цепляется и разводите свою клаву как вам хочется http://cxem.net/arduino/arduino22.php
nickjust 74HC595 имеет на сколько помню 8 ног на регистры, томеж на ней можно сделать матричную клаву на 16 кнопок. Матричную клаву на 16 кнопок можно и на самой ардуине сделать. ПС2 - не подходит, там контроллеры х%й пойми какие ставят на которые даташита не найдешь и если в последствии мне надо будет собрать 100-200 устройств, то где я под них найду столько клавиатур да еще и с одинаковыми контроллерами (это при условии если свершится чудо и даташит будет найден)
Попробую пояснить: мне не нужно управление с отдельной клавиатуры, мне нужно собрать устройство в формфакторе МК98 =)
Заголовок сообщения: Re: Резистивная клавиатура ардуино: есть ли подводные камни?
Добавлено: Пн авг 20, 2018 23:05:43
Друг Кота
Карма: 38
Рейтинг сообщений: 618
Зарегистрирован: Пн апр 06, 2015 11:01:53 Сообщений: 3092 Откуда: москва, уфа
Рейтинг сообщения:0
я правильно понимаю, что речь вот о таком - http://easyelectronics.ru/multipleksirovanie.html ? Если да, то все быстро упрется в разрешение АЦП, плюс я сходу не вижу удобного способа определять нажатия нескольких кнопок.
74HC595 имеет на сколько помню 8 ног на регистры, томеж на ней можно сделать матричную клаву на 16 кнопок
а если на двух?) скажем, на парочке из CD4515 (демультиплексор 4-в-16) и CD4051 (мультиплексор 8-в-1) можно родить матрицу о 128 кнопках, потратив на это 8 пинов контроллера.
Последний раз редактировалось arkhnchul Вт авг 21, 2018 10:42:54, всего редактировалось 1 раз.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Заголовок сообщения: Re: Резистивная клавиатура ардуино: есть ли подводные камни?
Добавлено: Вт авг 21, 2018 10:50:20
Друг Кота
Карма: 38
Рейтинг сообщений: 618
Зарегистрирован: Пн апр 06, 2015 11:01:53 Сообщений: 3092 Откуда: москва, уфа
Рейтинг сообщения:0
там же, типа вот так - http://easyelectronics.ru/matrichnaya-klaviatura.html , или так - http://www.openmusiclabs.com/learning/d ... index.html 4515 ставим снизу (картинка "расширение разрядности дешифратором"), 4051 чуть сложнее - на его входы Y0-Y7 вешаем строки (это будет "считывающий порт"), вход COM заводим в контроллер (это и будет собственно единственный входной пин), входы ABC - к контроллеру. Процедура сканирования: выставили нулевой столбец на 4515 и погнали строки: на пины ABC подаем 000, смотрим чо там на COM - это нулевая кнопка нулевого столбца. На ABC 001, смотрим COM - первая кнопка нулевого столбца. Заканчиваем на 111 строке, меняем столбец, прогоняем заново строки. И Так пока столбцы не кончатся.
74HC595 имеет на сколько помню 8 ног на регистры, томеж на ней можно сделать матричную клаву на 16 кнопок.
Обычно на матрицу в 16 кнопок 4 входа и 4 выхода. В этом варианте всё равно ещё входной регистр нужен, напр 165-й. Если только я не упустил какой-то нюанс
Есть расширители портов MCP23017/MCP23S17 (два байтовых порта; первая I2C, вторая SPI). Назначение вход/выход - отдельно для каждого вывода портов. Так же, отдельно, можно включить Pull-up. Есть возможность "заказать" выдачу прерывания по изменению уровня на входах... Т.ч., матрицу из кнопок можно подключить к ней без лишних деталей...
ПС2 - не подходит, там контроллеры х%й пойми какие ставят на которые даташита не найдешь и если в последствии мне надо будет собрать 100-200 устройств, то где я под них найду столько клавиатур да еще и с одинаковыми контроллерами (это при условии если свершится чудо и даташит будет найден)
Ммммм...пробовал разные клавы PS/2 разных фирм ...пох контроллер - у кнопок жесткий SCAN КОД каждой кнопы
Звучит очень интересно, но я ни фига не понял ... как будет выглядеть схема?
вотпрямщас лень рисовать, я маленько того-с. Мб завтра. Рекомендую таки вникнуть в те две ссылки и даташиты на упоминаемую логику - там ничего сложного, как только въедете в принцип. И, кстати, ничего требующего вот прям именно этих микросхем тоже.
А что тут сложного? Надеюсь, у вас не возникнут вопросы к чему подключить линии Vdd, Vss, SCK, SDA, A0-A2 и RESET (всё есть в pdf-е)... У матрицы кнопок есть "столбцы" и "строки". Столбцы подключаете к порту GPAx, а строки к GPBx (или наоборот; как больше нравится). У того порта, который захотите сделать "входом" - потом программно включите Pull-up (внутренняя "подтяжка" к +питания). Если нужно, с того порта которого назначите "входом", заведите INTх на тот вход контроллера, который можете назначить на внешнее прерывание. Лично я бы использовал INT, чтоб постоянно не опрашивать клавиатуру. Смысл в следующем: Исходное состояние - все кнопки отпущены, все выходы порта в "0". Опрос клавиатуры не проводится. Как только будет нажата любая кнопка, получаете прерывание, считываете по какому входу (к примеру, это столбец) было изменение уровня с "1" на "0" и начинаете "шерстить" строку, ища нажатую кнопку. Алгоритм несколько сложнее чем "постоянный опрос", но в этом случае можно контроллер "отправить в сон" и "просыпаться" по нажатию любой кнопки. Если выберите именно MCP23017 (I2C; на али их как махорки в табачной лавке) - для общения с такой клавиатурой нужно выделить 2(3) линии контроллера. P.S. Если после подключения клавиатуры у MCP23017 останутся "лишние" выводы портов - никто не мешает использовать их для подключения, условно, светодиодов или завести на них некие входные линии, чтоб "разгрузить" выводы контроллера.
nickjust "микро"компьютер на ардуино Мега. нечто вроде МК98 но более полезное. И тут нужна клавиатура 60-80 кнопок, томеж буквы/символы + 2 5ти позиционных джойстика. Сыылки посмотрел, все дошло, спасибо) Albert_V: что делать с Vdd, Vss, SCK, SDA и RESET, это пожалуй единственное что я понял))) А вот типовую схему включения с клавиатурой на дофига кнопок как-то не понял)
А вот типовую схему включения с клавиатурой на дофига кнопок как-то не понял)
Что значит "типовая"? Нарисуйте схему матричной клавиатуры 8х8 (64 кнопки) и подпишите 16 выводов от неё. Я по вашему рисунку скажу как её подключить к MCP23017.
Хай всем! Случайно просматривал https://voron.ua/catalog/017964 (внизу) там готовых микрух , заточенных для клавиатуры куча - причем по смешной цене ,особенно серия TMxxxx
ИЛИ ВОТ на 1 микрухе 64 кнопы интерфейс i2c - ставим 2 микрухи и закрываем вопрос !
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 26
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения