Hallo,
ich hab den Soundsensor vom Arduino wie in diesem Video Ich versuche gerade lediglich, wenn der Sensor ein Klatschen (2 x lautes Geräusch hintereinander) vernimmt, dass dann die Message “Geklatscht” im Serialmonitor ausgegeben wird.
Irgendwo liegt noch ein Fehler in meinem Code, denn immer wenn der Serialmonitor ca. 15x geklatscht ausgegeben hat, dann scheint er, obwohl ich klatsche, keins mehr zu vernehmen. Jedenfalls wird dann keine Message mehr ausgegeben. Hier mein Code :
const int AnalogPin = A0;
int SensorValue = 0;
int Schwellwert = 1000;
int Schwellzeit = 2000;
unsigned int FirstTime = 0;
int claps = 0;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
SensorValue = analogRead(AnalogPin);
if (SensorValue < Schwellwert)
{
//Warte bis Klatschen verhallt ist
delay(300);
claps++;
if (claps == 1)
{
FirstTime = millis();
}
if (claps == 2)
{
//Klatschen im Zeitfenster ?
if ((millis()-FirstTime)<Schwellzeit)
{
claps = 0;
Serial.println("Geklatscht");
}
else
{
//Klatschen war nicht im Zeitfenster
//=> Klatschen war das erste Mal => Funktionen von claps = 1 wiederholen
FirstTime = millis();
claps=1;
}
}
}
}
Also keine Ahnung, irgendwo muss noch der Hund drin sein.
Könnt ihr mir helfen ?