Пьезоизлучатель

Как работать со звуком на Arduino.

Для извлечения звуков, сигналов и простых мелодий на Ардуино используется пьезопищалка, пьезоизлучатель ( buzzer ).

Подключается напрямую к плате Arduino.
Имеет два контакта: “плюс” (более длинный разъем) и “минус” (короткий разъем).

Контакт “минус” подключается к разъему GND ( “Земля” ) на плате Arduino.
Контакт “плюс” подключается к цифровому пину на плате микроконтроллера.
В примере используется цифровой пин “8”.

 

BUZZER

BUZZER

 

Для управления используется функция tone(), в которой задается пин подключения, частота звука, длительность импульса.

 

Самая простая программа для извлечения звука:

void setup() {

}

void loop() {
 
  noTone(8);
  tone(8, 4000, 100);
  delay(1000);
  
}

Функция noTone() здесь отключает сигнал импульса на пьезоизлучателе.

 

Чтобы проверить на каждой конкретной модели звукового излучателя все возможные к использованию частоты, а также их качество и громкость,
можно использовать следующую программу:

void setup() {

  Serial.begin(9600);
  
}

void loop() {
 
  noTone(8);
  for (int i=0; i<10000; i+=100) {
  Serial.print("Frequency -    ");  
  Serial.println(i);  
  tone(8, i, 100);
  delay(1000);
 }
  
}

 

Здесь испытывается диапазон частот от 0 до 10000 с шагом 100.
На каждой частоте звуковой сигнал воспроизводится платой и значение текущей частоты выводится в последовательный порт.

 

BUZZER

BUZZER

 

В соответствии с этим тестом, можно выбрать самую качественную частоту для воспроизведения нужных звуковых сигналов.
Обычно частотой качественного резонанса является число из диапазона близкого к значению 4000.