]> git.piffa.net Git - sketchbook_andrea/blob - basic/pwm/pwm_1_soluzione_doppio_while_byte/pwm_1_soluzione_doppio_while_byte.ino
eb6cca72e97cdf3e919797532099041dd538c11f
[sketchbook_andrea] / basic / pwm / pwm_1_soluzione_doppio_while_byte / pwm_1_soluzione_doppio_while_byte.ino
1 /*
2    Fade sali e scendi
3  
4    PWM per un LED: aumentare progressivamente la luminosita'.
5    Aumenta e diminuisce la luminostia' usando un ciclo while
6  */
7
8 byte led  = 9   ;     // Il pin ~9 e' abilitato al PWM
9 byte brightness = 0;  // Valore iniziale per il PWM del LED
10
11 // the setup routine runs once when you press reset:
12 void setup()  { 
13   pinMode(led, OUTPUT); // Il PIN nove va dichiarato come un OUTPUT
14
15
16 void loop()  { 
17     while (brightness < 255) {
18   analogWrite(led, brightness);  // La funziona analogWrite utilizza il PWM
19   // a 8 bit integrato nel MCU: simula un serie di valori intermedi
20   // nell'intervallo discreto con minimo 0 (spento) e  massimo 255 (acceso).         
21   delay(10);       
22   brightness = brightness + 1; // Incrementiamo la luminosita'
23     }
24
25     while (brightness > 0) {
26   analogWrite(led, brightness);  // La funziona analogWrite utilizza il PWM
27   delay(10);       
28   brightness = brightness - 1; // Decrementiamo la luminosita'
29     }
30
31
32 }
33 /*
34 - basic/pwm/pwm_3_fade_reverser/pwm_3_fade_reverser.ino
35 E molto piu' snello utilizzando il solo ciclo loop come iteratore
36 e una condizione per cambiare l'incremento
37 */