Menu
CoddyTech

Fai aumentare e diminuire la luminosità

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

Per tornare a diminuire la luminosità, il passo deve cambiare direzione. Mantieni il passo in una sua variabile, fadeAmount. Aggiungere un numero negativo fa diminuire la luminosità:

int brightness = 0;
int fadeAmount = 5;

void loop() {
  analogWrite(9, brightness);
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(30);
}

Un segno meno davanti a una variabile ne inverte il segno: -fadeAmount trasforma 5 in -5 e -5 di nuovo in 5.

if controlla entrambi gli estremi. In cima il passo diventa -5 e il LED si affievolisce; in fondo diventa di nuovo 5 e il LED si illumina maggiormente. Il LED respira e non passa mai di colpo da luminoso a scuro.

challenge icon

Sfida

Facile

Fai sì che il LED sul pin 9 aumenti e poi diminuisca di luminosità, ancora e ancora:

  • una variabile fadeAmount con valore 5 accanto a brightness
  • aggiungi fadeAmount alla luminosità ogni volta che viene eseguito loop(), poi attendi 30 ms
  • inverti il suo segno quando la luminosità raggiunge 0 o 255

Premi Run, poi Check.

Provalo tu

const int ledPin = 9;
int brightness = 0;
// crea fadeAmount qui

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

void loop() {
  analogWrite(ledPin, brightness);
  brightness = brightness + 5;
  if (brightness > 255) {
    brightness = 0;
  }
  delay(30);
}
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