Каталог
Пианино на Arduino

Пианино на Arduino

В этом проекте мы создадим музыкальные кнопки с использованием Arduino. Каждая кнопка будет воспроизводить определенную ноту через зуммер при нажатии.

Необходимые компоненты:

  • Arduino Uno или Nano
  • 8 кнопок
  • Зуммер
  • Соединительные провода
  • Макетная плата (breadboard)
  • Резисторы (10 кОм для подтягивающих резисторов)

Подключение компонентов:

Схема подключения:

  • Подключите один конец каждой кнопки к соответствующему цифровому пину на Arduino (от 2 до 9).
  • Подключите другой конец каждой кнопки к земле (GND) через резистор 10 кОм (подтягивающий резистор).
  • Подключите один из выводов зуммера к цифровому пину 13 на Arduino, другой вывод - к земле (GND).

Код проекта:

int but1 = 2; // Пин для первой кнопки
int but2 = 3; // Пин для второй кнопки
int but3 = 4; // Пин для третьей кнопки
int but4 = 5; // Пин для четвертой кнопки
int but5 = 6; // Пин для пятой кнопки
int but6 = 7; // Пин для шестой кнопки
int but7 = 8; // Пин для седьмой кнопки
int but8 = 9; // Пин для восьмой кнопки
int buzzer = 13; // Пин для зуммера
void setup() {
  // Объявляем пины кнопок как входы
  pinMode(but1, INPUT);
  pinMode(but2, INPUT);
  pinMode(but3, INPUT);
  pinMode(but4, INPUT);
  pinMode(but5, INPUT);
  pinMode(but6, INPUT);
  pinMode(but7, INPUT);
  pinMode(but8, INPUT);
  // Объявляем пин зуммера как выход
  pinMode(buzzer, OUTPUT);
}
void loop() {
  // Читаем значения с кнопок
  int b1 = digitalRead(but1);
  int b2 = digitalRead(but2);
  int b3 = digitalRead(but3);
  int b4 = digitalRead(but4);
  int b5 = digitalRead(but5);
  int b6 = digitalRead(but6);
  int b7 = digitalRead(but7);
  int b8 = digitalRead(but8);
  // Если кнопка 1 нажата, воспроизводим ноту 300 Гц
  if (b1 == 1) {
    tone(buzzer, 300, 100);
  }
  // Если кнопка 2 нажата, воспроизводим ноту 400 Гц
  if (b2 == 1) {
    tone(buzzer, 400, 100);
  }
  // Если кнопка 3 нажата, воспроизводим ноту 500 Гц
  if (b3 == 1) {
    tone(buzzer, 500, 100);
  }
  // Если кнопка 4 нажата, воспроизводим ноту 600 Гц
  if (b4 == 1) {
    tone(buzzer, 600, 100);
  }
  // Если кнопка 5 нажата, воспроизводим ноту 700 Гц
  if (b5 == 1) {
    tone(buzzer, 700, 100);
  }
  // Если кнопка 6 нажата, воспроизводим ноту 800 Гц
  if (b6 == 1) {
    tone(buzzer, 800, 100);
  }
  // Если кнопка 7 нажата, воспроизводим ноту 900 Гц
  if (b7 == 1) {
    tone(buzzer, 900, 100);
  }
  // Если кнопка 8 нажата, воспроизводим ноту 1000 Гц
  if (b8 == 1) {
    tone(buzzer, 1000, 100);
  }
  // Небольшая задержка для плавного воспроизведения звуков
  delay(10);
}

Заключение

Этот проект демонстрирует основы работы с кнопками и зуммером на платформе Arduino. Вы научитесь подключать кнопки и зуммер, считывать состояния кнопок и воспроизводить звуки с использованием функции tone(). Проект можно расширить, добавив новые кнопки и ноты, или использовать его как основу для создания более сложных музыкальных инструментов на Arduino.

Комментарии
РОМАН РЫБАК И ЛЮБА ДРЕЛЬ
НЕ РАБОТАЕТ
Предзаказ
Предзаказ успешно отправлен!
Имя *
Телефон *
Добавить в корзину
Название товара
100 тг
1 шт.
Перейти в корзину
Обратный звонок
Запрос успешно отправлен!
Имя *
Телефон *
Заказ в один клик
С помощью уведомлений о заказе можно не только получать актуальную информацию по заказу, но и иметь быстрый канал связи с магазином