Сегодня в уроке рассмотрим принцип работы матричной клавиатуры 4х4. Подключим клавиатуру 4х4 к Arduino и напишем скетч для получения значений при нажатии на кнопки.
Клавиатура выполнена в виде матрицы 4×4, каждая кнопка является областью воздушного зазора между двумя диэлектрическими слоями с нанесенным на них токопроводящим покрытием. Дорожки покрытия одного слоя нанесены горизонтально (выводы 1—4), а другого вертикально (выводы 5—8). Нажатие на кнопку приводит к соединению дорожки одного слоя с дорожкой другого и замыканию одного из выводов 1—4 с одним из выводов 5—8.
Принцип работы очень простой, при нажатии кнопки замыкается контакт между столбцом и строкой, между ними начинает течь ток. Например, при нажатии клавиши «4» происходит короткое замыкание столбца 1 и строки 2. Схема клавиатуры 4 x 4 показана на рисунке ниже.
Необходимые детали:
Подключаем матричную клавиатуру к Arduino начиная с 2 цифрового пина до 9. Как показано на схеме подключения.
В данном примере будем использовать библиотеку «Keypad.h» скачать ее можно в «Менеджере библиотек» или внизу статьи в разделе «файлы для скачивания».
В строке поиска вводим «Keypad» находим библиотеку «Keypad by Mark Stanley» и устанавливаем ее.
В коде определяем количество рядов и колонок. Данный параметр зависит от типа клавиатуры.
#include <Keypad.h> // Подключение библиотеки Keypad const byte ROWS = 4; // Количество рядов const byte COLS = 4; // Количество строк
Также указываем массив символов кнопок.
char keys[ROWS][COLS] = { {'1','2','3','A'}, {'4','5','6','B'}, {'7','8','9','C'}, {'*','0','#','D'} };
И наконец, пины подключения клавиатуры к Arduino.
byte rowPins[ROWS] = {9, 8, 7, 6}; // Выводы, подключение к строкам byte colPins[COLS] = {5, 4, 3, 2}; // Выводы, подключение к столбцам
Принцип работы достаточно простой. Считываем состояние кнопок и если было нажатие, выводим в монитор порта символ нажатой клавиши.
byte rowPins[ROWS] = {9, 8, 7, 6}; // Выводы, подключение к строкам byte colPins[COLS] = {5, 4, 3, 2}; // Выводы, подключение к столбцам
Загрузите скетч и откройте «Последовательный монитор» из Arduino IDE и вы получим следующий результат.
На основе данного урока можно сделать кодовый замок по аналогии с кодовым замком, который я делал на дисплее Nextion. Но на этом возможности применения матричной клавиатуры в Arduino проектах не заканчивается. С помощью матрицы кнопок можно управлять элементами умного дома, станком с ЧПУ и пр.
Появились вопросы или предложения, не стесняйся, пиши в комментарии!
Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.
Всем Пока-Пока.
И до встречи в следующем уроке.
Понравилась статья? Поделитесь ею с друзьями:
Файлы для скачивания
![]() |
скетча для работы матричной мембранной клавиатуры с Arduino.ino | 1 Kb | 850 | Скачать |
![]() |
библиотека «Keypad.h».zip | 30 Kb | 848 | Скачать |
Вернуться в раздел: Уроки Arduino: Подключение датчиков и модулей к Arduino Дата публикации 19 октября , 2021
Читайте также
Комментарии
Войдите или Зарегистрируйтесь И Вы сможете общаться на форуме и оставлять комментарии без капчи.