Матричная клавиатура PRO (Мультитач)

Пользовательские блоки для вывода информации на дисплеи и индикаторы, управления тачскрином, различными клавиатурами, добавления русских шрифтов для вывода на дисплеи типа HD44780
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Ответить
Аватара пользователя
Dryundel
Полковник
Сообщения: 2406
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Поблагодарили: 15 раз

Матричная клавиатура PRO (Мультитач)

Сообщение Dryundel »

Матричная клавиатура PRO (Мультитач)
Стартовая Бета версия.
1.jpg
Матричная_клавиатура_PRO_V1.0_b_(Code_-_Professional).ubi
[spoiler=Для тестов использовалась вот такая мембранная клавиатура]
1.jpg
[/spoiler]
.
Набор блоков для вывода действий кнопок клавиатуры (в комплекте 2 блока).
Описание выходов и настроек находится в настройках блоков.

Основные возможности
- Мультитач (до 10 одновременно нажатых кнопок) !!!
- Любые две одновременно нажатые кнопки отслеживаются и без диодов (в отличии от штатного блока).
- Встроенный Debounce (дребезга контактов) настраивается.
- Несколько клавиатур в проекте (не тестировал)
- Настройка выводимых символов (любые символы и даже служебные типа \n (перенос строки))
- Есть отдельные блоки для каждой кнопки
- Отслеживание Нажатия, клика, двойного клика, удержания (на каждой кнопке)
- Отслеживание одновременно двух кнопок (любых настраивается) можно настроить несколько сочетаний
- Фильтрация двух нажатых кнопок от нажатия их по отдельности.
- Подключение напрямую к пинам контроллера
- Подключение через I2C
- Поддерживаемые микросхемы расширения - PCF8574, PCF8574A, PCF8575, PCA9554, PCA9555, PCA9534, PCA9535, PCA9539, PCA6408, PCA6416, MCP23008, MCP23016, MCP23017.

Тестировалось на NANO, ESP32, MCP23017, PCF8574 (других микросхем у меня нет)
На Raspberry Pi 2040 - пока не пошло
На STM32 не тестировалось (скорее всего не заработает)


Ограничения:
Поддерживаются клавиатуры 3х3, 3х4, 4х3, 4х4
Для мультитач обязательны диоды на выходах столбцов, катодом к контроллеру (микросхеме)
ВНИМАНИЕ! диоды ставятся на столбцы. Не так как в штатном блоке, там на строки. (читай статью)
Полный мультитач (до 10 кнопок одновременно) работает только на основном блоке на выходах Press.
На отдельных блоках кнопок мультитач адекватен до 2 кнопок одновременно.

Важно!
Входы колонок на контроллере должны иметь внутреннюю подтяжку. Если ее нет, обязательна внешняя.
К примеру у ESP32 есть несколько входов не оснащенных PULLUP (смотри даташит)
На микросхемах должна быть внешняя подтяжка к +5V у входов строк (4,7 - 10 кОм).
Но может работать и без подтяжки на некоторых микросхемах, которые программно настраиваются.

Полностью все варианты и настройки протестировать не хватило сил и времени.
Подробное описание с примерами постараюсь сделать со временем.

Тестируйте, пишите комментарии. :)
.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Dryundel
Полковник
Сообщения: 2406
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Поблагодарили: 15 раз

Матричная клавиатура PRO (Мультитач)

Сообщение Dryundel »

Господа, товарищи, братья!
Есть техническая возможность поддержки ATtiny I2C с микросхемами расширений PCF8574, PCF8575.
У меня их просто нет, а заказывать ради экспериментов и ждать месяц, как то лениво.
Если есть потребность в данном расширении блока и желание поделиться сим добром, пишите в личку.
(Только те у которых есть порт I2C)
.
Rovki писал(а): 03 сен 2022, 13:18 а чего нет аттини или микросхем расширения ?
Нет ATtiny.
Аватара пользователя
Rovki
Полковник
Сообщения: 5721
Зарегистрирован: 22 апр 2016, 17:25
Откуда: Чехов
Имя: Анатолий
Благодарил (а): 67 раз
Поблагодарили: 213 раз
Контактная информация:

Матричная клавиатура PRO (Мультитач)

Сообщение Rovki »

Есть ..24 и 13, если не ошибаюсь
Электронщик до мозга костей и не только
Аватара пользователя
Dryundel
Полковник
Сообщения: 2406
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Поблагодарили: 15 раз

Матричная клавиатура PRO (Мультитач)

Сообщение Dryundel »

Rovki писал(а): 03 сен 2022, 14:53 Есть ..24 и 13, если не ошибаюсь
У 13 нет I2C.
Таблица ATtiny
Аватара пользователя
Rovki
Полковник
Сообщения: 5721
Зарегистрирован: 22 апр 2016, 17:25
Откуда: Чехов
Имя: Анатолий
Благодарил (а): 67 раз
Поблагодарили: 213 раз
Контактная информация:

Матричная клавиатура PRO (Мультитач)

Сообщение Rovki »

Dryundel писал(а): 03 сен 2022, 15:23
Rovki писал(а): 03 сен 2022, 14:53 Есть ..24 и 13, если не ошибаюсь
У 13 нет I2C.
Таблица ATtiny
А программно нельзя назначить?
Электронщик до мозга костей и не только
Аватара пользователя
Dryundel
Полковник
Сообщения: 2406
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Поблагодарили: 15 раз

Матричная клавиатура PRO (Мультитач)

Сообщение Dryundel »

Rovki писал(а): 03 сен 2022, 17:20 А программно нельзя назначить?
Нет. Поддержка I2C или есть или ее нет. Как аппаратный таймер, или он один или несколько.
[ref=#ff8000]Rovki[/ref], мы же с Вами это проходили на примере шины CAN для ESP8266.
Аватара пользователя
Rovki
Полковник
Сообщения: 5721
Зарегистрирован: 22 апр 2016, 17:25
Откуда: Чехов
Имя: Анатолий
Благодарил (а): 67 раз
Поблагодарили: 213 раз
Контактная информация:

Матричная клавиатура PRO (Мультитач)

Сообщение Rovki »

В attiny 24 и 44 есть i2c / И они у меня есть ,но только для SMD монтажа.
https://github.com/SpenceKonde/ATTinyCo ... tiny_x4.md
Электронщик до мозга костей и не только
kissmanyuriy
Рядовой
Сообщения: 8
Зарегистрирован: 31 окт 2020, 12:48
Имя: Юрий

Матричная клавиатура PRO (Мультитач)

Сообщение kissmanyuriy »

Здравствуйте. А можно допилить для клавиатуры 4х5 20 клавиш на PCF8575?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
kissmanyuriy
Рядовой
Сообщения: 8
Зарегистрирован: 31 окт 2020, 12:48
Имя: Юрий

Матричная клавиатура PRO (Мультитач)

Сообщение kissmanyuriy »

Уважаемый автор я не программист а инженер поэтому и пользуюсь FLProg 7.5.2
Решил попробовать ваш пользовательский блок. Ранее использовал Keyboard I2C Adv.

Отправлено спустя 2 часа 15 минут 25 секунд:
Keypad_I2C keypad_1(makeKeymap(keys_keypad_1), rowPins_keypad_1, colPins_keypad_1, ROWS_keypad_1, COLS_keypad_1, 32, PCF8574);
'PCF8574' was not declared in this scope
Что не так? ПАМАГИТЕ!!! :smile37:
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Dryundel
Полковник
Сообщения: 2406
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Поблагодарили: 15 раз

Матричная клавиатура PRO (Мультитач)

Сообщение Dryundel »

kissmanyuriy писал(а): 19 мар 2023, 17:28 Решил попробовать ваш пользовательский блок
Это бета версия. Возможны баги.
Требуется обратная связь. Написал в личку, жду ответа.
kissmanyuriy
Рядовой
Сообщения: 8
Зарегистрирован: 31 окт 2020, 12:48
Имя: Юрий

Матричная клавиатура PRO (Мультитач)

Сообщение kissmanyuriy »

Спасибо, все работает.
А все таки сложно допилить для клавиатуры 4х5 20 клавиш на PCF8575?
Ответить

Вернуться в «Дисплеи, индикаторы и клавиатуры»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя