Ciclo di colori arcobaleno
Fa parte della sezione Uscite del percorso Arduino di Coddy. Lezione 8 di 24.
Ogni colore richiede tre righe digitalWrite(). Una sequenza di sei colori ne richiederebbe 18, ed è facile confondere una riga con un’altra.
Una funzione rende tutto più breve. setColor() riceve un valore per ogni colore e scrive su tutti e tre i pin:
void setColor(int red, int green, int blue) {
digitalWrite(redPin, red);
digitalWrite(greenPin, green);
digitalWrite(bluePin, blue);
}Ora ogni colore occupa una riga e i suoi tre valori si leggono come una ricetta:
setColor(HIGH, HIGH, LOW); // giallo
delay(500);HIGH e LOW sono i numeri 1 e 0, quindi sono compatibili con un parametro int. Mantieni i parametri nello stesso ordine in cui li passi: rosso, verde, blu.
Sfida
FacileScrivi setColor() e usala per mostrare un arcobaleno, mezzo secondo per colore, ancora e ancora:
- rosso
- giallo
- verde
- ciano
- blu
- magenta
Premi Esegui, poi Verifica.
Provalo tu
const int redPin = 11;
const int greenPin = 10;
const int bluePin = 9;
void setup() {
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void setColor(int red, int green, int blue) {
// scrivi ogni valore sul rispettivo pin
}
void loop() {
setColor(HIGH, LOW, LOW); // rosso
delay(500);
// poi giallo, verde, ciano, blu e magenta
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Uscite
Esercitati da solo: Playground Arduino