Обзор модуля MAX9814
В этой статье расскажу о модуле микрофона на чипе MAX9814, а так же покажу как подключить его к плате Arduino UNO. В качестве демонстрации изготовим индикатор шума.
Технические параметры.
► Интегральная микросхема: MAX9814
► Напряжение питания: 2.6 .. 5.5 В
► Три коэффициента усиления: 40дБ, 50дБ, 60дБ
► Автоматическая регулировка усиления (АРУ)
► Коэффициент гармоник: 0.04%
► Плотность шума: 30 нв
Общие сведения.
Модуль состоит из электронного микрофона (20-20 кГц) и специального усилителя на чипе MAX9814 фирмы Maxim. Микросхема намного лучше усиливает звук по сравнению с другими усилителями из-за встроенного автоматического регулировкой усиления (АРУ), которая подавляет «громкие» звуки и усиливает «тихие» звуки. Модуль отлично подойдет в проектах, где часто меняется уровни звука и вам не придется постоянно настраивать усиление.
Как можно заметить, на модуле выведен дополнительный вход GAIN, с помощью которого можно регулировать «Максимальное усиление», если не подключать его, максимальное усиление составит 60 дБ., если подключить вывод к GND усиление составит 50 дб и минимальное усиление можно получить при подключение этого вывода к питания 40 дб. Так же, можно отрегулировать соотношение время срабатывание/время восстановления, для этого необходимо подключить вывод AR к VDD получим 1:2000 мс, если подключим к GND получим 1:500 мс и если оставим по умолчанию получим 1:4000 мс. Дополнительную информацию можно получить с официальной документации.
Назначение контактов:
► AR — регулировка время срабатывание/время восстановления
► Gain — регулировка «Максимальное усиление»
► Out — выход звукового сигнала.
► Vdd и GND — питание модуля
Пример №1 Подключение модуля MAX9814 к Arduino UNO
Необходимые детали:
► Arduino UNO R3 x 1 шт.
► Модуль электронного микрофона с усилителем MAX9814 x 1 шт.
► Провода DuPont, 2,54 мм, 20 см x 1 шт.
Подключение
В примере используем Arduino UNO R3 и модуль MAX9814. Подключение не сложное, необходимо всего три провода, первым делом подключаем вывод OUT (MAX9814) к выводу A0 (Arduino), затем подключаем питание VCC к +5В и GND к GND. Так же, приведу схему подключения.
Программа:
Скетч взять сайта Adafruit который специально написан для модуля MAX9814 и Arduino.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
const int sampleWindow = 50; // Время измерения в мс unsigned int sample; // Объявляем переменную sample void setup() { Serial.begin(9600); } void loop() { // Cохраняем текущие значение millis в startMillis unsigned long startMillis= millis(); // Создаем переменною peakToPeak, где храним разницу между минимальным и максимальным сигналом unsigned int peakToPeak = 0; // signalMax максимальным значением unsigned int signalMax = 0; // signalMin минимальным значением unsigned int signalMin = 1024; // Пока в startMillis содержащиеся больше заданного sampleWindow, выполняется код в цикле while while (millis() - startMillis < sampleWindow) { // Сохраняем значение переменной sample считанное с аналогового входе 0 sample = analogRead(0); // Если значение sample меньше 1024, то есть максимальное значение, читаемое на аналоговом порту if (sample < 1024) { // Если значение sample больше максимального значения, найденного в signalMax if (sample > signalMax) { // Обновление значения signalMax, содержащимся в sample signalMax = sample; } // В противном случае, если значение sample меньше, чем signalMin else if (sample < signalMin) { // Обновление значения signalMin, содержащимся в sample signalMin = sample; } } } // В переменной peakToPeak будет хранится разницу между максимальным значением и минимальным значением. peakToPeak = signalMax - signalMin; // Значение peakToPeak умножается на 5 - это напряжение, с которым работает Arduino, а затем делим на 1024, поскольку на аналоговом порту от 0 до 1024. double volts = (peakToPeak * 5.0) / 1024; // Отправляем переменную в вольте. Serial.println(volts); } |
Открываем «Мониторинг порта» и можем увидеть показания напряжение на выводе А0.
Если будут вопросы пишите.
Ссылки
Документация MAX9814
Купить на Aliexpress
Контроллер Arduino UNO R3 на CH340G
Контроллер Arduino UNO R3 на Atmega16U2
Модуль электронного микрофона с усилителем MAX9814
Провода DuPont, 2,54 мм, 20 см
Купить в Самаре и области
Контроллер Arduino UNO R3 на CH340G
Контроллер Arduino UNO R3 на Atmega16U2
Провода DuPont, 2,54 мм, 20 см
Модуль электронного микрофона с усилителем MAX9814