]> git.piffa.net Git - sketchbook_andrea/blob - oggi/blink_2_1_sos/blink_2_1_sos.ino
Blink senza variabili, inizio corso
[sketchbook_andrea] / oggi / blink_2_1_sos / blink_2_1_sos.ino
1
2 // ////////////
3 // Commento iniziale
4 /*
5   Blink v2
6
7  Accensione e spegnimanto di un LED utilizzando funzioni
8  per comandare il lampeggio.
9
10  This example code is in the public domain.
11  */
12 // //////////////
13 // Dichiarazione variabili
14
15 int led = 13; // LED onboard sulla scheda
16
17
18 // /////////////////
19 // Setup: eseguita una volta sola all'accensione della scheda
20 void setup() {
21   // initialize the digital pin as an output.
22   pinMode(led, OUTPUT);
23 }
24
25 // ///////////////
26 // loop: Le istruzioni vengono eseguite all'infinito
27 void loop() {
28   // S
29   rapido(); // accende e spegne rapidamente il LED
30   rapido();
31   rapido();
32
33   // O
34   lento();  // accende e spegne lentamente il LED
35   lento();
36   lento();
37
38   // S
39   rapido(); // accende e spegne rapidamente il LED
40   rapido();
41   rapido();
42
43
44   //Funzione apposita:
45   esse();
46   ooo();
47   esse();
48 }
49
50
51   // ///////////////
52   // Funzioni create dall'utente:
53
54 void rapido() {
55   // Accende e spegne rapidamente il LED
56   int breve = 200;
57   // sequenze di istruzione: accendere e spegnere il LED
58   digitalWrite(led, HIGH);    // Mette il PIN del LED in stato acceso
59   delay(breve);               // Pausa
60   digitalWrite(led, LOW);     // Mette il PIN del LED in stato spento
61   delay(breve);               // Pausa
62 }
63
64 void lento() {
65   // Accende e spegne lentamente il LED
66   int lunga = 1000;
67   // sequenze di istruzione: accendere e spegnere il LED
68   digitalWrite(led, HIGH);    // Mette il PIN del LED in stato spento)
69   delay(lunga);               // Pausa
70   digitalWrite(led, LOW);     // Mette il PIN del LED in stato spento
71   delay(lunga);               // Pausa
72 }
73
74 void esse() {
75   // Emette una lettera S in Morse
76
77   int breve = 200;
78   
79   // sequenze di istruzione: accendere e spegnere il LED
80   digitalWrite(led, HIGH);    // Mette il PIN del LED in stato acceso
81   delay(breve);               // Pausa
82   digitalWrite(led, LOW);     // Mette il PIN del LED in stato spento
83   delay(breve);               // Pausa
84
85   digitalWrite(led, HIGH);    // Mette il PIN del LED in stato acceso
86   delay(breve);               // Pausa
87   digitalWrite(led, LOW);     // Mette il PIN del LED in stato spento
88   delay(breve);               // Pausa
89
90   digitalWrite(led, HIGH);    // Mette il PIN del LED in stato acceso
91   delay(breve);               // Pausa
92   digitalWrite(led, LOW);     // Mette il PIN del LED in stato spento
93   delay(breve);               // Pausa
94 }
95
96 void ooo() {
97   // Emette una lettera o in Morse
98
99   int lunga = 1000;
100   // sequenze di istruzione: accendere e spegnere il LED
101   digitalWrite(led, HIGH);    // Mette il PIN del LED in stato spento)
102   delay(lunga);               // Pausa
103   digitalWrite(led, LOW);     // Mette il PIN del LED in stato spento
104   delay(lunga);               // Pausa
105
106   digitalWrite(led, HIGH);    // Mette il PIN del LED in stato spento)
107   delay(lunga);               // Pausa
108   digitalWrite(led, LOW);     // Mette il PIN del LED in stato spento
109   delay(lunga);               // Pausa
110
111   digitalWrite(led, HIGH);    // Mette il PIN del LED in stato spento)
112   delay(lunga);               // Pausa
113   digitalWrite(led, LOW);     // Mette il PIN del LED in stato spento
114   delay(lunga);               // Pausa
115
116 }
117
118 void sos() {
119   // Emette un segnale di S.O.S
120
121 }
122
123 //////////////////
124 /* Domande:
125     1. Che differenza c'e' tra le funzioni esse() e sos()?
126
127     2. Esercizio: creare uno sketch per far brillare un led 10 volte lentamente
128        e dieci volte rapidamente.
129  
130  Soluzioni a fondo pagina.
131  
132  
133  
134  
135  
136  
137  
138  
139  
140  
141  
142  
143  
144  
145  
146  
147  
148
149
150  
151  
152  
153  Risposta:
154
155  1. esse() e' una funzione autonoma, puo' essere copiata/incollata in qualunque
156  sketch e funzionera' autonomamente.
157  sos() invece e' composta da altre funzioni: anche queste dovranno essere disponibili.
158
159  */