Робота зі звуком на Arduino

DelaySound
У цій статті я розгляну приклади роботи зі звуків на контролері Arduino

Даний приклад я планую використовувати в системізвукового оповіщення домашньої метеостанції, щоб своєчасно реагувати на критичні значення параметрів, що вимірюються.

Підключення п'єзовипромінювача до Arduino

Насправді, підключення дуже просте:

  • 1 висновокп'єзовипромінювача підключаємо до 9 дискретного пінуArduino
  • 2 висновокп'єзовипромінювача підключаємо до GNDArduino

tone

Генерація звуків на Arduino

Для генерації звуків наArduino існує функціяtone ()

Функція tone()

Генерує сигнал прямокутної форми із заданою частотою. Тривалість може бути задано параметром. Без зазначення тривалості сигнал генерується доки не буде викликана функція noTone(). До Arduino може бути підключений до п'єзо або інший високоомний динамік для відтворення сигналу. Одночасно може відтворюватись лише один сигнал.

Синтаксис функції tone()

  • tone (pin, частота)
  • tone (pin, частота, тривалість)

Приклад використання функції tone()

const int SoundPin = 9; // Пін підключення пьезоизлучателя - 9 дискретний int DelaySound = 1000; // Пауза 1 секунда

void loop() // Приклад використання tone() //tone(pin, частота) tone(SoundPin, 1915); // Відтворюємо сигнал із частотою 1915 Гц delay (DelaySound); // Пауза 1 секунда (1000 мілісекунд – значення змінної DelaySound) – тривалість відтворення сигналу

tone(SoundPin, 1700); delay(DelaySound);

tone(SoundPin, 1519); delay(DelaySound);

tone(SoundPin, 1432); delay(DelaySound);

tone(SoundPin, 1275); delay(DelaySound);

tone(SoundPin, 1136); delay(DelaySound);

tone(SoundPin, 1014); delay(DelaySound);