In questo tutorial analizzeremo uno degli sketch forniti nell’IDE : Fade.
Si può trovare nel menù File>Esempi>Basics>Fade.
Questo è lo sketch:
/* Fade This example shows how to fade an LED on pin 9 using the analogWrite() function. This example code is in the public domain. */ int led = 9; // the pin that the LED is attached to int brightness = 0; // how bright the LED is int fadeAmount = 5; // how many points to fade the LED by // the setup routine runs once when you press reset: void setup() { // declare pin 9 to be an output: pinMode(led, OUTPUT); } // the loop routine runs over and over again forever: void loop() { // set the brightness of pin 9: analogWrite(led, brightness); // change the brightness for next time through the loop: brightness = brightness + fadeAmount; // reverse the direction of the fading at the ends of the fade: if (brightness == 0 || brightness == 255) { fadeAmount = -fadeAmount ; } // wait for 30 milliseconds to see the dimming effect delay(30); }
Ora analiziamo le varie parti del codice:
linee 1-9 : Commento multilinea che spiega l’obbiettivo dello sketch e esplicita che è di dominio pubblico;
linea 10 : dichiarazione variabile intera con valore 9 che indica il pin 9 come pin collegato al led;
linea 11 : dichiarazione variabile intera dove verrà memorizzata la luminosità del led;
linea 12 : dichiarazione variabile intera con valore 5, valore da aggiungere o da sottrarre alla luminosità del led nel ciclo void loop();
linee 15-18 : funzione setup nella quale il pin 9 viene dichiarato come uscita;
linea 21 : inizio ciclo loop che finirà alla riga 34;
linea 23 : attraverso la funzione analogWrite la luminosità del led sul pin 9 viene impostata a 0, infatti la variabile brightness non è stata ancora modificata;
linea 26 : la variabile brightness viene incrementata del valore fadeAmount cioè 5;
linee 29-31 : viene controllato se la variabile brightness è uguale a 0 o a 255, nel momento in cui uno di questi due casi è vero la variabile fadeAmount viene cambiata di segno.
Quindi se brightness è uguale a 0 viene incrementata con fadeAmount, al contrario se è uguale a 255 (luminosità massima) viene decrementata del valore di fadeAmount;
linea 33 : viene impostata una pausa di 30 millisecondi prima di ripetere il ciclo.
Schema di montaggio in fritzing:
Devi effettuare l'accesso per postare un commento.