Значения аналогового микрофона не меняются
Я только что купил микрофон для своего Ardoino Nano 33 BLE. Микрофон может использовать как аналоговый, так и цифровой вход. Вот микрофон и как он подключен.
Вот код, в котором я прочитал ввод
int sensorPin = A5; // выбираем входной контакт для потенциометра
int sensorValue = 0;
void setup ()
{
Serial.begin (9600);
}
void loop ()
{
sensorValue = analogRead (sensorPin);
delay (500);
Serial.println (sensorValue, DEC);
}
Я последовал примеру производителя, и считывания происходят случайным образом от 0 до 5, иногда немного выше. В примере указано, что он должен увеличиться до 1023.
Что-то не так, может я что-то не так подключил, из-за чего это получилось? Также, когда я подаю 5 В, на микрофоне ничего не происходит, но если я подключаю 3,3 В, микрофон включает 2 красных светодиодных индикатора и дает мне значение около 80, но не реагирует ни на какие звуки.
@Vubbe, 👍1
Обсуждение2 ответа
/* отредактировано специально для предоставления потенциального решения, прокомментированного @jstola */
Вы опубликовали изображение вездесущего датчика обнаружения звука — обычно это Keyes KY-037.
Он основан на двойном компараторе LM393.
Плата имеет цифровой выход [помеченный DO] и аналоговый выход, помеченный AO. Он также имеет соединения + и G (земля).
Я выкопал свой и прикрепил его к Nano 33 BLT.
Обратите внимание, что у меня + подключен к 3,3 В, G подключен к земле, а AO подключен к A5.
Небольшая хитрость заключается в том, чтобы подключить только питание и землю и поворачивать потенциометр до тех пор, пока L2 (ближайший к потенциометру светодиод) не погаснет. Если вы немного пошумите, вы увидите кратковременное мигание L2. Это устанавливает порог цифрового выхода и хорошо подходит для тестирования аналогового выхода.
Затем я запустил эту простую программу (очень похожую на вашу)
void setup() {
pinMode(A5,INPUT); // в данном случае совершенно не нужен
Serial.begin(9600);
}
void loop() {
Serial.println(analogRead(A5));
}
Открыл последовательный плоттер Arduino IDE (shift+ctr+L) и наблюдал за изменением формы сигнала, когда я щелкнул пальцами — видите шипы?
Какое же решение вашей проблемы не работает?
Несколько возможностей.
- У вас другая плата.
Выглядит ли ваша плата так же, как та, которую я опубликовал, или отличается? Другое дело, если это другая плата, а не то, что вы разместили.
Предполагая, что это одна и та же плата (или, по крайней мере, одна и та же общая плата), возможно, что:
У вас неправильные соединения. Дважды проверьте это.
Вы не установили потенциометр рядом со средней точкой. Следуйте указаниям для этого и обратите внимание, что светодиод можно отключить. Это многооборотный потенциометр, и если вы услышите тихий щелчок, значит, вы зашли слишком далеко в этом направлении — переместите его в другую сторону и посмотрите, сможете ли вы заставить этот светодиод просто погаснуть.
В противном случае ваша плата может быть уничтожена
Добро пожаловать! Это носит общий характер, потому что вы не предоставили никаких ссылок на аппаратные элементы, поэтому все это чистый SWAG.
Я не могу правильно ответить на ваш вопрос, не зная, какая у вас плата, есть несколько похожих в красном и других цветах. Возможно, следующее поможет вам определить, что у вас есть. Внимательно изучите спецификации.
Ваше утверждение «Микрофон может использовать как аналоговый, так и цифровой вход». Микрофон аналоговый по своей природе, но его можно преобразовать в цифровой сигнал с помощью схемы операционного усилителя или компаратора, как это сделано во многих из этих модулей.
Мне кажется, что ваша плата выдаст вам логическую 1 или ноль, а не аналоговый выход. Горшок на них обычно устанавливает опорное напряжение для функции компаратора (может быть операционного усилителя). Если это двойной операционный усилитель, другая половина является усилителем для микрофона. Если есть аналоговый выход, сигнал микрофона необходимо усилить, так как выход микрофона составляет всего несколько милливольт, а аналого-цифровому преобразователю нужны вольты.
- Я не могу установить правильную конфигурацию звукового модуля
- Как использовать звуковой датчик LM393 + динамик в Arduino
- MAX30100 не работает
- Arduino Nano BME280 странные значения
- Использование библиотеки емкостных датчиков с мультиплексором 74HC4067
- Проблема с сигналом датчика пульса
- Считывание значений с емкостного сенсорного датчика TTP229 на arduino
- Подключение двух Arduino через I2C, когда контакты I2C A4/A5 уже используются.
«Есть также этот потенциометр 10K, который используется для установки опорного напряжения для операционного усилителя, также этот потенциометр используется для создания опорного напряжения для функции аналогового выхода модуля». - https://circuitdigest.com/microcontroller-projects/interfacing-sound-sensor-with-arduino, @VE7JRO