🛒
0 товар.
0 руб.
Логотип

Интернет-магазин «Неглупый Дом»

Поиск по сайту
Гугл таблица с ассортиментом

👏 Проект: тап-темп метроном по ритму нажатий на кнопку

Кнопка KY-004 и зуммер

Несколько нажатий кнопки в нужном темпе — устройство вычислит BPM по интервалам и продолжит отбивать ритм.

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

Скетч

const int buttonPin = 2;
const int buzzerPin = 8;
unsigned long lastTap = 0;
unsigned long avgInterval = 500;
unsigned long lastBeat = 0;
bool wasPressed = false;

void setup() {
  pinMode(buttonPin, INPUT);
  pinMode(buzzerPin, OUTPUT);
}

void loop() {
  bool pressed = digitalRead(buttonPin) == HIGH;
  if (pressed && !wasPressed) {
    unsigned long now = millis();
    unsigned long tapInterval = now - lastTap;
    if (tapInterval < 2000) {
      avgInterval = (avgInterval + tapInterval) / 2;
    }
    lastTap = now;
    tone(buzzerPin, 1500, 50);
  }
  wasPressed = pressed;

  if (millis() - lastBeat >= avgInterval) {
    tone(buzzerPin, 1000, 30);
    lastBeat = millis();
  }
}
                

`avgInterval` сглаживается как скользящее среднее — темп не «скачет» от одного неровного тапа.

Товары по теме

Ещё модули для Arduino: Электронные модули.

← ⏲️ кухонный таймер обратного отсч…🔢 ручной счётчик на энкодере KY-… →

🎁 Купить весь комплект со скидкой 10%

Все 2 товара сразу: 130 ₽ 117 ₽ (экономия 13 ₽)

Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.

Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.

Корзина

Поиск


Пример: понижающий или DC-DC или mini360 или aw-023 или арт. OZ/WB/YA