Slide associata

Extra: Ciclo For - dimmer

esempio_09_fade.ino

/* esempio_09_fade
 * Scketch di esempio
 */

// Il LED collegato esternamente connesso al piedino DIGITALE 3.
#define EXTLEDPIN  3

/* Questa funzione viene chiamata per impostare la scheda, una sola volta
 */
void setup () {
  pinMode(EXTLEDPIN, OUTPUT);  // Imposta il piedino del LED esterno in uscita
}

/* Questa funzione viene ripetuta all'infinito
 */
void loop () {
  int i;  // Definisce (crea) la variabile per il contatore
  /* 1) Inizialmente pongo i (il nostro contatore) ad 1
   * 2) Controllo che i sia inferiore a 255, altrimenti termino il ciclo
   * 3) Eseguo le azioni tra graffe
   * 4) Pongo i ad i+1 e ripeto da 2 
   */
  for (i = 1; i < 255; i = i+1) {
    analogWrite(EXTLEDPIN, i);       // Imposta il LED esterno alla luce indicata da i
    delay (1);                       // Attende un millisecondo
  }
  digitalWrite(EXTLEDPIN, HIGH);   // Accende il LED esterno
  delay (256);                     // Attende 1/4 di secondo
  /* 1) Inizialmente pongo i (il nostro contatore) a 254
   * 2) Controllo che i sia superiore a 0, altrimenti termino il ciclo
   * 3) Eseguo le azioni tra graffe
   * 4) Pongo i ad i-1 e ripeto da 2 
   */
  for (i = 254; i > 0; i = i-1) {
    analogWrite(EXTLEDPIN, i);     // Imposta il LED esterno alla luce indicata da i
    delay (1);                       // Attende un millisecondo
  }
  digitalWrite(EXTLEDPIN, LOW);    // Spegne il LED esterno
  delay (600);                     // Attende 3/4 di secondo
}


© Ing. Stefano Salvi - released under FDL licence

Valid XHTML 1.0! Valid CSS!