
Video
Schema circuito

Codice sorgente
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// Effetto Supercar con LED
4// ─────────────────────────────────────────
5// I 6 LED si accendono uno alla volta in avanti, poi all'indietro (effetto
6// Knight Rider). Mostra la logica di un ciclo for bidirezionale.
7//
8// Pin:
9// D2, D3, D4, D5, D6, D7 -> 6 LED (in ordine)
10// Ogni LED con una resistenza da 330 ohm
11
12int ledPins[] = {2, 3, 4, 5, 6, 7}; // Pin dei LED nell'ordine di accensione
13
14void setup() {
15 // Impostare tutti i pin dei LED come uscite
16 for(int i = 0; i < 6; i++) {
17 pinMode(ledPins[i], OUTPUT);
18 }
19}
20
21void loop() {
22 // Avanti: da D2 a D7, 100 ms per LED
23 for(int i = 0; i < 6; i++) {
24 digitalWrite(ledPins[i], HIGH);
25 delay(100);
26 digitalWrite(ledPins[i], LOW);
27 }
28
29 // Indietro: da D6 a D3. I LED alle estremità vengono saltati così il rimbalzo appare fluido
30 for(int i = 4; i > 0; i--) {
31 digitalWrite(ledPins[i], HIGH);
32 delay(100);
33 digitalWrite(ledPins[i], LOW);
34 }
35}
36FAQ
Come si crea l'effetto "Karaşimşek" (Knight Rider)?▾
I LED si accendono in sequenza, prima da sinistra a destra, poi da destra a sinistra. I due cicli si susseguono in ordine; poiché il secondo ciclo conta in senso inverso, la luce va avanti e indietro.
Sembra che i LED alle estremità si accendano due volte: come posso risolvere il problema?▾
Se il ciclo di rotazione riaccende il LED all'estremità, quel LED rimane acceso per due passi. È possibile evitare la ripetizione alle estremità avviando il ciclo di rotazione con un indice in meno o in più (ad es. da 4 a 1).
Come si regola la velocità?▾
Modifica il valore di delay() tra un passo e l'altro. Un intervallo compreso tra 30 e 80 ms produce un effetto fluido. Se desideri modificare la velocità durante il funzionamento, puoi aggiungere un potenziometro come nel progetto successivo, “Fulmine nero con regolazione della velocità”.
Posso aggiungere altri LED?▾
Sì, basta aggiungere nuovi pin alla serie di pin e aggiornare i limiti del ciclo. L'Uno dispone di 12 pin digitali liberi; per averne di più, puoi pilotare 8 o più LED con 3 pin utilizzando il registratore a scorrimento 74HC595.
