Grafico a barre con potenziometro
Fa parte della sezione Uscite del percorso Arduino di Coddy. Lezione 18 di 24.
Una fila di LED può mostrare un numero come una barra: più LED sono accesi, più grande è il numero. Qui il numero proviene dalla manopola.
Per prima cosa trasforma la lettura nel numero di LED da accendere, da 0 a 5:
int count = map(analogRead(A0), 0, 1023, 0, 5);Poi visita ogni LED con un ciclo for e decidi per ciascuno. I LED prima della posizione count sono accesi, gli altri sono spenti:
for (int i = 0; i < 5; i++) {
if (i < count) {
digitalWrite(ledPins[i], HIGH);
} else {
digitalWrite(ledPins[i], LOW);
}
}else è importante: quando abbassi la manopola, è ciò che spegne i LED che non fanno più parte della barra.
Sfida
MedioLa manopola è su A0 e i LED sono in ledPins. Crea un grafico a barre:
- trasforma la lettura in un conteggio da 0 a 5 con
map() - accendi quel numero di LED, partendo dal primo nell’array, e spegni gli altri
- attendi 10 ms, poi ripeti
Premi Run e gira la manopola, poi premi Check.
Provalo tu
const int knobPin = A0;
int ledPins[] = {2, 3, 4, 5, 6};
void setup() {
for (int i = 0; i < 5; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
void loop() {
// converti la lettura in un conteggio da 0 a 5
// accendi i primi LED in numero pari al conteggio e spegni gli altri
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Uscite
1Luminosità
Riduci la luminosità di un LED con PWMPin PWM contrassegnati con ~Fai aumentare la luminosità di un LEDFai aumentare e diminuire la luminositàDimmer a manopola4Cicli e array
Ripeti con un ciclo forUn array di pin LEDInseguitore a cinque LEDGrafico a barre con potenziometroContatore binario con LEDEsercitati da solo: Playground Arduino