Главная chevron_right Наши уроки chevron_right Arduino chevron_right Урок 13. Подключение клавиатуры 4*4 и пьезоизлучателя к Arduino

Урок 13. Подключение клавиатуры 4*4 и пьезоизлучателя к Arduino

Подключаем мембранную клавиатуру 4×4 и пьезозуммер к Arduino: определяем нажатую клавишу, выводим результат в монитор порта и воспроизводим уникальный звук для каждой кнопки

Видео-обложка запускается при наведении

Теперь научимся подключать устройство ввода к Ардуине. В этом примере разберемся, как подключить мембранную клавиатуру 4*4

Данный пример будет выполнять две задачи:

  1. Первая задача: определяет, какая из клавиш была нажата на клавиатуре и передать информацию по сериал порту на компьютер, где в "мониторе последовательного порта ".
  2. Вторая задача: при каждом нажатии клавиш издавать звуковой сигнал. У каждой клавиши звуковой сигнал будет разный.

В данном уроке нам понадобится:

Для реализации проекта нам необходимо установить библиотеки:

Сборка:

1) Клавиатуру удобнее всего подключить к Ардуине проводками Папа-Папа.

Контакты на клавиатуре отсчитываются слева направо.

Клавиатура 4*4Arduino (uno)
Контакт 1pin 11
Контакт 2pin 10
Контакт 3pin 9
Контакт 4pin 8
Контакт 5pin 7
Контакт 6pin 6
Контакт 7pin 5
Контакт 8pin 4

Контакты к которым подключаем клавиатуру, могут быть перенастроены на любые другие цифровые контакты. Настраиваются здесь:

byte rowPins[ROWS] = {11,10, 9, 8};
byte colPins[COLS] = {7, 6, 5, 4};

2) Звуковой сигнал будет издаваться с помощью зуммера, его подключаем следующим образом:

ЗуммерArduino
GNDGND
IOpin 3
VCC5V или 3V

Контакт Pin3 так же может быть изменен на любой удобный вам цифровой выход. Настраивается здесь:

 tone(3, (int)key*10, 300); // 3 - это и есть номер цифрового порта

Скетч:

Теперь, если все подключено и библиотеки установлены, можно приступить к загрузке скетча.

#include <Keypad.h> // Подключаем библиотеку
const byte ROWS = 4; // 4 строки
const byte COLS = 4; // 4 столбца
char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};
byte rowPins[ROWS] = {11,10, 9, 8};
byte colPins[COLS] = {7, 6, 5, 4};
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup(){
  Serial.begin(9600);
}
void loop(){
  char key = keypad.getKey();
  if (key){
    Serial.println(key); // Передаем название нажатой клавиши в сериал порт
    tone(3, (int)key*10, 300); // Издаем звуковой сигнал длиной 300 миллисекунд
  }
}

Скачать скетч можно по этой ссылке

Видео:

Комплект для повторения проекта

Что понадобится

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

4 позиции
Все уроки Arduino