Матричная клавиатура для ввода символов
- Войдите на сайт для отправки комментариев
Пнд, 18/05/2020 - 15:24
Здравствуйте. Подключил матричную клавиатуру 4х4 к ARDUINO PRO MICRO. Подскажите, пожалуйста, как реализовать вывод символов не в сериал порт, а на экран по аналогии с обычной клавиатурой - нажимаешь 7 -на экран выводится 7. Что дописать в скетче нужно?
#include <Keypad.h> const byte ROWS = 4; const byte COLS = 4; char hexaKeys[ROWS][COLS] = { {'0','1','2','3'}, {'4','5','6','7'}, {'8','9','A','B'}, {'C','D','E','F'} }; byte rowPins[ROWS] = {6, 7, 8, 9}; byte colPins[COLS] = {5, 4, 3, 2}; Keypad customKeypad = Keypad(makeKeymap(hexaKeys), colPins, rowPins, COLS, ROWS); void setup(){ Serial.begin(9600); } void loop(){ char customKey = customKeypad.getKey(); if (customKey){ Serial.println(customKey); } }
Так?
заменить строчку 23 на печать символа на экране
Так?
это если у вас экран приделан к другой ардуине, не к той, на которой клавиатура :)
заменить строчку 23 на печать символа на экране
Таким образом?
Таким образом?
опять нет.
вы в бутылочку. что ли, играете? Открываете чужой код и наугад копируете оттуда любую строчку?
Если вам надо вывести символ на дисплей - причем тут метод write клавиатуры?
Для того, чтобы вывести что-то на экран. для начала надо подключить библиотеку экрана. инициализировать экран. задать позицию на дисплее, фонт, размер и цвет символов (смотря что применимо)
Все это на разных экранах делается по разному, а вы даже не сказаи. какой у вас дисплей
Таким образом?
опять нет.
вы в бутылочку. что ли, играете? Открываете чужой код и наугад копируете оттуда любую строчку?
Если вам надо вывести символ на дисплей - причем тут метод write клавиатуры?
Для того, чтобы вывести что-то на экран. для начала надо подключить библиотеку экрана. инициализировать экран. задать позицию на дисплее, фонт, размер и цвет символов (смотря что применимо)
Все это на разных экранах делается по разному, а вы даже не сказаи. какой у вас дисплей
Вывести нужно не на дисплей, а на экран монитора (в блокноте например).
Вывести нужно не на дисплей, а на экран монитора (в блокноте например).
тогда не знаю
Чота ржу.
Чота ржу.
праильно ржешь, а то я наехал на новичка. а сам команду эмуляции клавиатуры не узнал...
Вывести нужно не на дисплей, а на экран монитора (в блокноте например).
А каким именно боком Ваша про-микро соединена с монитором? И соединена ли вообще?
Здравствуйте. Подключил матричную клавиатуру 4х4 к ARDUINO PRO MICRO. Подскажите, пожалуйста, как реализовать вывод символов не в сериал порт, а на экран по аналогии с обычной клавиатурой - нажимаешь 7 -на экран выводится 7. Что дописать в скетче нужно?
Ничего - там все есть
Вывести нужно не на дисплей, а на экран монитора (в блокноте например).
А каким именно боком Ваша про-микро соединена с монитором? И соединена ли вообще?
Прошу прощения, возможно я не совсем понятно объяснил. ARDUINO PRO MICRO подключается не к монитору, а к ПК через micro USB. Нужно, чтобы клавиатура выполняла ввод букв и цифр, как с обычной клавиатуры, но с 16 кнопками. Например, открываю обычный блокнот на ПК, нажимаю 7 на клавиатуре - в блокноте печатается 7.
Прошу прощения, возможно я не совсем понятно объяснил. ARDUINO PRO MICRO подключается не к монитору, а к ПК через micro USB. Нужно, чтобы клавиатура выполняла ввод букв и цифр, как с обычной клавиатуры, но с 16 кнопками. Например, открываю обычный блокнот на ПК, нажимаю 7 на клавиатуре - в блокноте печатается 7.
Дык Вам драйвер нужен на компьютере. Его и ищите. При чем здесь ардуинка?
Прошу прощения, возможно я не совсем понятно объяснил. ARDUINO PRO MICRO подключается не к монитору, а к ПК через micro USB. Нужно, чтобы клавиатура выполняла ввод букв и цифр, как с обычной клавиатуры, но с 16 кнопками. Например, открываю обычный блокнот на ПК, нажимаю 7 на клавиатуре - в блокноте печатается 7.
что, вы так и не решили свою задачку?
вы же вчера давали правильный ответ
Т.е. надо, чтобы про-микро работало клавиатурой компьютера? Чтобы компьютер и не знал особо что там: честная клавиатура или Ваша про-микро. Так?
Прошу прощения, возможно я не совсем понятно объяснил. ARDUINO PRO MICRO подключается не к монитору, а к ПК через micro USB. Нужно, чтобы клавиатура выполняла ввод букв и цифр, как с обычной клавиатуры, но с 16 кнопками. Например, открываю обычный блокнот на ПК, нажимаю 7 на клавиатуре - в блокноте печатается 7.
что, вы так и не решили свою задачку?
вы же вчера давали правильный ответ
Благодарю, решил. Все получилось.
Подскажите, пожалуйста.
К Arduino Pro Micro подключаю матричную клавиатуру 5х6.
Задействованы 2, 3, 5, 7, 8, 9, 10, 14, 15, 16, 18 входы.
Входы SPI 14, 15 , 16 и
входы I2C 2, 3
нужно подтягивать к питанию?
pinMode(2, INPUT_PULLUP);
pinMode(3, INPUT_PULLUP);
pinMode(14, INPUT_PULLUP);
pinMode(15, INPUT_PULLUP);
pinMode(16, INPUT_PULLUP);
Входа нужно подтягивать.
Входа нужно подтягивать.
Спасибо за ответ.
Подскажите, пожалуйста.
Для подключения матричной клавиатуры по такой схеме нужно все входы подтянуть к питанию?
Нет.
Проверял на 6 кнопок скетч с библиотекой keypad.h
Все вроде работает.
Что неправильно?
Матрица будет работать только в том случае, если часть пинов будет сконфигурирована на вход, а часть - на выход.
Если у Вас ""все работает", то это лишь означает, что библиотека сама переключает какие ей нужно пины на выход. В этом случае производимая Вами инициализация пинов бесполезна.
Впрочем, правильнее всего - заглянуть в исходники библиотеки и выяснить, как именно она работает.
Огромное спасибо, andriano!
Действительно, библиотека сама определяет пины под колонки
columnPins
как выходы, а под строкиrowPins
как входы и подтягивает их к питанию INPUT_PULLUP