Comandare un LED con battito di mani.
Il modulo
Nel modulo possiamo notare la presenza di
-
un microfono CZN-15E,
-
una resistenza variabile,
-
un modulo LM393,
-
LED,
-
un’uscita digitale (OUT)
-
VCC e GND
-
L’uscita digitale fornisce un segnale positivo (HIGH) quando l’intensità del suono supera un limite regolato dalla resistenza variabile. Nello specifico
-
Il microfono converte i segnali audio in segnali elettrici
-
Il modulo LM393 confronta il voltaggio del segnale proveniente dal microfono con quello regolato con il potenziometro e produce sul pin OUT in uscita un segnale:
HIGH, se è maggiore,
LOW, se è inferiore.
Dunque è preventivamente necessario regolare attraverso il potenziometro la sensibilità in modo da ottenere il segnale HIGH solo quando il rumore supera la soglia desiderata, in questo caso il battito delle mani.
Il codice
int stato_del_microfono;
void setup(){
pinMode(8,INPUT);
pinMode(12,OUTPUT);
digitalWrite(12,0);
}
void loop(){
stato_del_microfono = digitalRead(8);
if(((stato_del_microfono)==(1))){
digitalWrite(12,!(digitalRead(12)));
delay(300);
}
}
Volendo simulare quelle lampade che si accendono e rimangono in tale stato per un tempo prestabilito:
int stato_del_microfono;
void setup(){
pinMode(8,INPUT);
pinMode(13,OUTPUT);
digitalWrite(13,0);
}
void loop(){
stato_del_microfono = digitalRead(8);
if(((stato_del_microfono)==(1))){
digitalWrite(13,1);
delay(10000);
digitalWrite(13,0);
}
}