Создание мини-пианино на Arduino UNO — пошаговое руководство
Компоненты и материалы
- Arduino UNO — 1 шт.
- Макетная плата — 1 шт.
- Тактильные кнопки 12 мм — 7 шт.
- Перемычки — набор
- Пьезоизлучатель (зуммер) — 1 шт.
Необходимые инструменты
- Паяльница (опционально, для надежного монтажа)
О проекте
Простой музыкальный инструмент на 7 нот (до, ре, ми, фа, соль, ля, си). Каждая кнопка соответствует одной ноте. При нажатии зуммер воспроизводит соответствующую частоту. Встроенный светодиод на пине 13 мигает при игре.
Схема подключения
- Кнопки подключены к пинам D4–D10 (один контакт на GND, второй на пин; используются внутренние pull-up резисторы).
- Зуммер подключен к пину D11 (PWM).

Программный код
Требуется библиотека Tone (доступна на GitHub). Установите её через менеджер библиотек или вручную. Код определяет частоты нот, настраивает пины кнопок на вход с подтяжкой, в цикле опрашивает кнопки и воспроизводит тон через tone().
#define T_C 262
#define T_D 294
#define T_E 330
#define T_F 349
#define T_G 392
#define T_A 440
#define T_B 493
const int C = 10, D = 9, E = 8, F = 7, G = 6, A = 5, B = 4;
const int Buzz = 11, LED = 13;
void setup() {
pinMode(LED, OUTPUT);
pinMode(C, INPUT_PULLUP); // ... аналогично для D..B
digitalWrite(LED, LOW);
}
void loop() {
while(digitalRead(C) == LOW) { tone(Buzz, T_C); digitalWrite(LED, HIGH); }
while(digitalRead(D) == LOW) { tone(Buzz, T_D); digitalWrite(LED, HIGH); }
// ... для остальных нот ...
noTone(Buzz);
digitalWrite(LED, LOW);
}
Можно менять гаммы, раскомментируя другие массивы частот в скетче. Репозиторий проекта: GitHub.
Запуск
- Соберите схему.
- Установите библиотеку Tone.
- Загрузите скетч.
- Играйте, нажимая кнопки!
Производственный процесс
- Создание надежного RFID-замка на Arduino — пошаговое руководство
- Цифровые кости на Arduino: генератор случайных чисел с LCD-дисплеем и кнопкой
- Создание портативного ёмкостного сенсорного пианино на Arduino: пошаговое руководство
- Строим Iron Man на Arduino: компоненты, сенсоры и пошаговый гайд
- Find Me: Умный поисковик вещей на Arduino и Bluetooth
- Сборка функционального 3D-печатного манипулятора на Arduino: пошаговое руководство
- DIY-контроллер увлажнителя на Arduino с реле: безопасная работа с высоким напряжением
- Точные 7-сегментные часы на Arduino Pro Mini и DS1302 RTC
- PiBot: Робот-пианист на Arduino для точного исполнения музыки
- Урок Arduino для начинающих 01: Начало работы с первым проектом