Supercar LED – Arduino

Uno dei progetti più semplici da realizzare con Arduino è quello di far lampeggiare un LED (cosiddetto blink), ma in questo progetto non ci limitiamo ad un solo LED ma simuleremo l’effetto Supercar (serie televisiva anni 80), cioè lo scorrimento di un LED da destra verso sinistra e viceversa.

Componenti Utilizzati

– Arduino UNO

– 8 LED Rossi

– 8 resistenze da 330Ω

Schema di Collegamento

Lo schema è semplicissimo, ogni LED è stato collegato con una resistenza di 330Ω ai pin digitali della scheda Arduino che useremo, questa resistenza limiterà la corrente che scorrerà in esso. Per conoscere il valore preciso della resistenza da inserire in serie al diodo LED vi rimandiamo alla seguente lezione (prossimamente). Nel mio progetto ho usato una semplice schedina che ho realizzato su millefori sulla quale i LED già sono provvisti di una resistenza, basta collegare i terminali semplicemente alla scheda.

Programma

#define timer 100  //Tempo di ritardo
#define num_pins 8  //Numero dei pins (dei led collegati)int pins[] = { 5, 6, 7, 8, 9, 10, 11, 12};  //Array dei pin usatiint i;void setup()
{
     //Dichiara tutti i pins come OUTPUT
     for (i = 0; i < num_pins; i++)
         pinMode(pins[i], OUTPUT);
}void loop()
{
     int i;
     //loop per accendere e spegnere i led
     for(i = 0; i < num_pins; i++)
     {
         digitalWrite(pins[i], HIGH);
         delay(timer);
         digitalWrite(pins[i], LOW);
     }
     for (i = num_pins - 1; i >= 0; i--)
     {
         digitalWrite(pins[i], HIGH);
         delay(timer);
         digitalWrite(pins[i], LOW);
     }
}

Nella pate iniziale del programma abbiamo definito quanti led abbiamo usati nel progetto e un array che contiene il numero dei pin digitali che abbiamo adoperato. Nel blocco di setup abbiamo realizzato un ciclo for che va a definire tutti i pin che abbiamo indicato nell’array precedente come pin di OUTPUT. Nel blocco loop abbiamo altri due cicli for, il primo lo usiamo per scorrere il segnale alto dal pin più basso (nel nostro caso 5) a quello più alto (nel nostro caso 12), mentre il secondo farà lo scorrimento opposto.

Previous article
Next article

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Ultimi Articoli