Arduino и мембранная клавиатура: руководство
Клавиатура позволяет взаимодействовать с микроконтроллером. Вы можете достать такие клавиатуры из старых телефонов или приобрести их в большинстве магазинов электроники менее чем за $2.
Они выпускаются в самых разных формах и размерах. Наиболее распространенные размеры – 3x4 и 4x4, и вы можете найти клавиатуры с надписями, буквами и цифрами на клавишах.
Вы даже можете создать собственную клавиатуру с нуля.
Если вы будете следовать этому руководству, вы сможете управлять любой клавиатурой.
Описание
Эти клавиатуры очень популярны среди любителей Arduino. Они очень дешевые и их можно использовать с любым микроконтроллером (MCU).
Где купить?
Вы можете приобрести эти модули всего за несколько долларов. Нажмите здесь, чтобы сравнить мембранную клавиатуру в нескольких магазинах и найти лучшую цену.
Вы можете воспользоваться ссылками выше или перейти напрямую на MakerAdvisor.com/tools, чтобы найти все детали для ваших проектов по лучшей цене!
Как это работает?
Мембранная клавиатура представляет собой матрицу, состоящую из строк и столбцов. Каждая клавиша привязана к определенной строке и столбцу (см. изображение ниже).
На клавиатуре с 12 кнопками у вас 4 строки и 3 столбца. Первая клавиша замыкает связь между строкой 1 и столбцом 1 (R1C1). 2 – это R1C2, 3 – R1C3, * – R4C1, 9 – R3C3 и так далее.
Arduino с мембранной клавиатурой
Для сборки этой схемы вам понадобятся следующие компоненты:
Схема подключения
Следуйте приведенной ниже схеме подключения. Если ваша клавиатура отличается от представленной ниже, попробуйте найти даташит в интернете.
Загрузка библиотеки
Вот библиотека, которая вам понадобится для этого проекта:
Скачайте библиотеку Keypad
Разархивируйте библиотеку Keypad
Установите библиотеку Keypad в вашу Arduino IDE, переместив разархивированную папку в: Arduino\Libraries
Перезапустите Arduino IDE
Загрузка кода
Если ваша клавиатура не работает с приведенным ниже кодом, возможно, вам придется изменить подключения из предыдущей схемы.
Поищите в интернете или обратитесь в магазин, где вы приобрели клавиатуру, чтобы найти даташит для вашей клавиатуры.
Примечание
Если ваша клавиатура имеет больше клавиш, вы можете изменить строки 3 и 4, чтобы добавить правильное количество строк и столбцов. Затем в строке 5 вы можете изменить массив, чтобы он соответствовал клавишам вашей клавиатуры.
#include "Keypad.h"
const byte ROWS = 4; // number of rows
const byte COLS = 3; // number of columns
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'#','0','*'}
};
byte rowPins[ROWS] = {8, 7, 6, 5}; // row pinouts of the keypad R1 = D8, R2 = D7, R3 = D6, R4 = D5
byte colPins[COLS] = {4, 3, 2}; // column pinouts of the keypad C1 = D4, C2 = D3, C3 = D2
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
void setup()
{
Serial.begin(9600);
}
void loop()
{
char key = keypad.getKey();
if (key != NO_KEY)
Serial.println(key);
}
Демонстрация
В этом проекте при нажатии клавиши её значение отображается в мониторе порта. Вот что вы должны увидеть в мониторе порта Arduino IDE, когда начнете нажимать клавиши клавиатуры.
Заключение
Теперь вы можете создать интерфейс для вашего Arduino с помощью клавиатуры. Вы также можете добавить LCD-дисплей к этому проекту.
Надеемся, это руководство было для вас полезным.