【问题标题】:Serial monitor constantly say 0 when using arduino and sound sensor使用 arduino 和声音传感器时,串行监视器一直说 0
【发布时间】:2017-05-16 02:18:31
【问题描述】:

我在使用 arduino 声音传感器和 LED 时遇到问题。我不断在串行监视器中获得 0 的值,同样的事情发生在我拥有的另一个声音传感器上。我目前正试图让它根据声音点亮 LED,但串行监视器读数为 0,它不会激活代码。应该附上一张图片。声音传感器上的灯亮了,所以我知道 GND 和 5V 正在工作。因为很难说我使用的是 330 欧姆电阻。我从 elegoo 入门套件中获得了声音传感器,所以我知道它可能很便宜。图片在最后的链接中。谢谢。

     int MicPin = A0;
     int MicValue1 = 0;
     int MicValue2 = 0;

     int led1 = 2;
     int led2 = 4;
     int led3 = 6;
     int led4 = 8;

     void setup() {
     pinMode(led1, OUTPUT);
     pinMode(led2, OUTPUT);
     pinMode(led3, OUTPUT);
     pinMode(led4, OUTPUT);
     pinMode(MicPin, OUTPUT);
     Serial.begin(9600);
      }

     void loop() {
     MicValue1 = analogRead(MicPin);
     Serial.println(MicValue1);
     delay(1);
     MicValue2 = analogRead(MicPin);
     Serial.println(MicValue2);

     if (MicValue1 - MicValue2 > 1) {
     digitalWrite(led1, HIGH);
     delay(2000);
     }
     else {
     digitalWrite(led1, LOW);
     }
    } 

enter image description here

【问题讨论】:

    标签: audio arduino led


    【解决方案1】:

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

    有一个小旋钮连接到传感器,我们需要旋转它来调整特定的电阻值,您可以在串行监视器中看到不同的值。

    有用link

    【讨论】:

    • 这有帮助吗
    • 我将能够在几个小时内再次处理它,但我很确定这会有所帮助,谢谢
    • 很高兴听到它有帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-23
    • 1970-01-01
    • 1970-01-01
    • 2013-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多