Menu
CoddyTech

Colori intermedi

Fa parte della sezione Uscite del percorso Arduino di Coddy. Lezione 9 di 24.

I pin 11, 10 e 9 hanno tutti un ~, quindi è possibile attenuare ciascun colore del LED RGB con analogWrite(). Ogni canale va da 0 a 255 e la combinazione di tre livelli offre molti più di otto colori:

  • arancione: rosso 255, verde 80, blu 0
  • viola: rosso 128, verde 0, blu 255
  • un bianco tenue: tutti e tre a 60

Modifica setColor() in modo che usi analogWrite(); i suoi parametri diventano livelli di luminosità:

void setColor(int red, int green, int blue) {
  analogWrite(redPin, red);
  analogWrite(greenPin, green);
  analogWrite(bluePin, blue);
}

Ecco perché i terminali dei colori sono collegati ai pin ~: su un altro pin il colore potrebbe essere solo acceso o spento.

challenge icon

Sfida

Facile

Modifica setColor() per usare analogWrite(), poi mostra, ancora e ancora:

  • arancione (255, 80, 0) per un secondo
  • viola (128, 0, 255) per un secondo

Premi Run, poi Check.

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) {
  digitalWrite(redPin, red);
  digitalWrite(greenPin, green);
  digitalWrite(bluePin, blue);
}

void loop() {
  // arancione (255, 80, 0) per un secondo, poi viola (128, 0, 255) per un secondo
}
quiz iconMettiti alla prova

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