Trasformare un interruttore in pulsante con Attiny85

Un altro semplice esempio di uso di questo microcontrollore.

Dopo il circuito per far lampeggiare un LED proviamo ad aggiungere la lettura dello stato di un ingresso e trasformare il comportamento di un interruttore in quello di un pulsante.

Il risultato sarà il seguente:

Il programma che ho utilizzato per l’emulatore di Tinkercad.com è questo:

int old_p3 = 0;
void setup()
{
pinMode(3, INPUT);
pinMode(1, OUTPUT);
}
void loop()
{
old_p3 = digitalRead(3);
delay(100); // Wait for 100 millisecond(s)
if (digitalRead(3) != old_p3) {
old_p3 = digitalRead(3);
digitalWrite(1, HIGH);
delay(500); // Wait for 500 millisecond(s)
digitalWrite(1, LOW);
}
}

Fai attenzione perché è una versione semplificata per l’emulatore, in un caso reale è quasi obbligatoria aggiungere anche un sistema antiribalzo per eliminare i disturbi che si avrebbero nella lettura del pin di ingresso.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.