Menu
CoddyTech

Fai aumentare la luminosità di un LED

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

Una variabile può contenere la luminosità. Ogni volta che viene eseguito loop(), scrivila sul LED, aggiungici un po' e aspetta un momento. Il LED diventa più luminoso passo dopo passo:

int brightness = 0;

void loop() {
  analogWrite(9, brightness);
  brightness = brightness + 5;
  if (brightness > 255) {
    brightness = 0;
  }
  delay(30);
}

La luminosità è definita nella parte alta dello sketch, come il contatore delle pressioni, quindi mantiene il suo valore da un'esecuzione di loop() alla successiva. Se fosse creata all'interno di loop(), tornerebbe a 0 ogni volta.

255 è il valore massimo accettato da analogWrite(), quindi if fa ripartire la dissolvenza da 0 quando la luminosità lo supera.

Il passo e l'attesa determinano la velocità: circa 50 passi da 30 ms richiedono un secondo e mezzo.

challenge icon

Sfida

Facile

Fai aumentare gradualmente la luminosità del LED sul pin 9, ancora e ancora:

  • mantieni la luminosità in una variabile definita sopra setup(), con valore iniziale 0
  • in loop(), scrivila con analogWrite(), aggiungi 5 e attendi 30 ms
  • quando supera 255, riportala a 0

Premi Esegui e guarda il LED, poi Verifica.

Provalo tu

const int ledPin = 9;
// crea qui la variabile della luminosità, partendo da 0

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // imposta la luminosità, aggiungi 5, ricomincia dopo 255, attendi 30 ms
}
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