Indice
Descrizione
In questo episodio della serie dedicata ai sensori, impareremo a utilizzare un sensore di suono con Arduino. Vedremo come calibrare la soglia di rilevamento, realizzeremo il circuito e scriveremo lo sketch per accendere/spegnere il LED con un doppio battito di mani.
#define SOUND_PIN 2
#define LED_PIN 9
#define DEBOUNCE 100
#define THRESHOLD 300
#define CHANGE_DELAY 1000
unsigned long timestamp = 0;
void setup(){
pinMode(SOUND_PIN, INPUT);
pinMode(LED_PIN, OUTPUT);
}
void loop(){
int sound = !digitalRead(SOUND_PIN);
if(sound){
delay(DEBOUNCE);
timestamp = millis();
while((millis()-timestamp) < THRESHOLD){
if(!digitalRead(SOUND_PIN)){
digitalWrite(LED_PIN, !digitalRead(LED_PIN));
delay(CHANGE_DELAY);
break;
}
}
}
delay(1);
}