Audio 带有Arduino的声音传感器在串行监视器中始终显示1023

Audio 带有Arduino的声音传感器在串行监视器中始终显示1023,audio,arduino,android-sensors,arduino-uno,Audio,Arduino,Android Sensors,Arduino Uno,我连接了一个声音传感器模块,它有3个引脚:Vcc、grnd和输出 代码粘贴在下面,我注意到无论声音如何,串行端口上显示的值总是1023。怎么了 int sensorPin = A0; void setup () { pinMode (ledPin, OUTPUT); Serial.begin (9600); } void loop () { sensorValue = analogRead (sensorPin); Serial.println (sensorValue, DEC); del

我连接了一个声音传感器模块,它有3个引脚:Vcc、grnd和输出

代码粘贴在下面,我注意到无论声音如何,串行端口上显示的值总是1023。怎么了

int sensorPin = A0;
void setup () 
{
pinMode (ledPin, OUTPUT);
Serial.begin (9600);
}
void loop () 
{
sensorValue = analogRead (sensorPin);
Serial.println (sensorValue, DEC);
delay(1000);
}

我假设您有一个简单的模拟输出传感器模块,它根据环境音量提供10位模拟值。如果这个假设是正确的,您正确连接了所有管脚,并且接收到的值总是超出范围或处于最大值,您可能需要集成一个电阻器以获得有效值。尝试一个小电阻并增加电阻,直到收到合适的值。也许您模块的文档提供了更多信息

例如,如果您有Adafruit麦克风放大器或类似产品,您还应该查看制造商或经销商的教程网站,该网站几乎总是为您提供有关模块编程、电路和可能性的全面概述

以下来自Adafries话筒放大器的代码举例说明了如何处理采样率、转换信号和打印当前音量

/****************************************
声音等级示意图示例
Adafruit话筒放大器
****************************************/
常量int sampleWindow=50;//采样窗宽度,单位为毫秒(50毫秒=20赫兹)
无符号整数样本;
无效设置()
{
Serial.begin(9600);
}
void循环()
{
unsigned long startMillis=millis();//示例窗口的开始
无符号int-peakToPeak=0;//峰间电平
无符号int-signalMax=0;
无符号int-signalMin=1024;
//收集50毫秒的数据
while(millis()-startMillis信号最大值)
{
signalMax=sample;//只保存最大级别
}
否则如果(样本<信号最小值)
{
signalMin=sample;//只保存最小级别
}
}
}
peakToPeak=signalMax-signalMin;//max-min=峰值振幅
双伏特=(峰值峰值*3.3)/1024;//转换为伏特
串行打印项次(伏特);
}

我已经修改了您的语法,并缩短了标题。请提供更多有关传感器名称/类型和电路图的详细信息。非常感谢您的输入,正如您所说,我使用的是模拟输出传感器模块,传感器上连接有一个小旋转旋钮,我们需要旋转它来调整特定的电阻值,现在我可以在串行监视器输出中看到不同的值,但我的要求是测量音调的频率,这是将这些整数转换成频率值的三种方法。我们将非常感谢您的帮助。啊,好的,太好了。也许你的传感器有一个LM567/LM567C音频解码器或类似的东西。如果获得模拟值,则可以轻松播放参考频率,并将出现的值映射到参考音调(依此类推)。否则,您可以查看模块的数据表以获取关系或谷歌“Arduino音频检测”。这里有一些教程,或者你可以过滤输出,放大,设置阈值,然后测量边缘之间的距离。但是,在我看来,你至少应该在硬件上做前三步(一个截止频率在10赫兹左右的高通滤波器,一个放大器和一个施密特触发器),然后把它连接到一个数字管脚上。然后测量边缘之间的间隔。那只是因为通常ADC读取速度很慢。。。您可以尝试减少ADC预分频器以获得更快的读数,但是。。再一次,HW更好。非常感谢您的输入,小姐87,我正在尝试。我会尝试让您知道结果,我可能会再打电话给您。嗨,小姐87,我已经建立了0.1uf和100k欧姆的高通滤波器,来到opamp,哪一个将是最好的,我可以选择741系列opamp或LM324。您能指导我这方面的工作吗。