Опубликовано

Датчик звука KY-037

Датчик звука, как следует из названия, предназначен для обнаружения звука (фиксирует появление громкого звука). На рис. S8.1 показаны наиболее широко применяемые в проектах Arduino датчики звука.

Внешний вид, назначение контактов

8_01-звук

Рис. S8.1. Применяемые в проектах Arduino датчики звука

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

Работая с датчиком звука, можно использовать как цифровой, так и аналоговый его выходы (рис. S8.2). Аналоговый выход выдает значение сигнала микрофона, а цифровой выход передает 1, если сигнал превысит пороговое значение, и 0 в противном случае. Пороговое значение можно настроить с помощью потенциометра, расположенного на плате датчика. Можно подключить одновременно и два выхода (например, для настройки порогового значения).

2-08-2-звук

Рис. S8.2. Схема подключения датчика звука

Программный код

Листинг S1.8. Измерение громкости с помощью датчика звука

#define soundAnalogPin A0 // пин, к которому аналоговый выход

#define soundDigitalPin 4 // пин, к которому цифровой выход

int analogVal=0; // Объявляем переменные для хранения значений

int digitalVal=0; //с датчика и задаем ее начальное значение 0

void setup()

{

Serial.begin(9600); // Открываем монитор порта

pinMode(soundAnalogPin, INPUT);//Настройка аналогового пина на вход

pinMode(soundDigitalPin, INPUT);// Настройка цифрового пина на вход

}

void loop()

{

//присваиваем переменной аналоговое значение

analogVal =analogRead(soundAnalogPin);

//присваиваем переменной цифровое значение

digitalVal=digitalRead(soundDigitalPin);

//Выводим полученныес датчика значения

Serial.print("Sound value A0: "); //

Serial.print(analogVal,DEC);

Serial.print(" D0: ");

Serial.println(digitalVal,DEC);

 

delay(100); //задаем паузу

}

Результат

2-08-3-звук

Рис. S8.3. Фиксация хлопка в ладоши на мониторе последовательного порта