“KY-037″ — Широко применяются в робототехнике и системах автоматизации. Принцип работы данного модуля основан на изменении уровня напряжения на его выходе D0 при обнаружении микрофоном определенного уровня громкости. Так же модуль позволяет использовать встроенный микрофон напрямую - то есть для подключения к предварительному усилителю и последующее усиление и воспроизведение полученного звука. В отличии от аналогичного модуля KY-038 использован микрофон большего размера.
Тип микрофона: электретный Размер микрофона: 9х7 мм Усилитель + компаратор: LM386 Подстройка уровня выходного сигнала Индикация наличия питания и режима работы Питание: 5В
int sensor_value = 0;
int threshold = 540; //Enter Your threshold value here
int abs_value = 0;
int ledCount = 10; //number of Bargraph LEDs
int bargraph[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; // Bargraph pins
void setup() {
Serial.begin(9600); // setup serial
for (int i = 0; i <= ledCount; i++) // Define bargraph pins OUTPUT
{
pinMode(bargraph[i], OUTPUT);
}
for (int i = 0; i <= 9; i++)
{
digitalWrite(i, LOW);
}
}
sensor_value = analogRead(A0);
abs_value = abs(sensor_value - threshold);
int ledLevel = map(abs_value, 0, (1024 - threshold), 0, ledCount);
for (int i = 0; i < ledCount; i++) {
// if the array element's index is less than ledLevel,
// turn the pin for this element on:
if (i < ledLevel) {
digitalWrite(bargraph[i], HIGH);
Serial.println(i);
}
// turn off all pins higher than the ledLevel:
else {
digitalWrite(bargraph[i], LOW);
}
}
}