+++ /dev/null
-/*
- Blink FSM
-
- Accensione e spegnimanto di un LED utilizzando
- una FSM 2 stati statici.
-
-Costrutto switch basato su uno struct.
-
- */
-
-// Dichiarazione variabili
-int led = 13;
-int pausa = 500; // Variabile richiambile nel corso dell'esecuzione
-
-void setup() {
- // Inizializziamo il PIN 13 come OUTPUT
- pinMode(led, OUTPUT);
-}
-
-enum fsm_stati { // Stati della FMS
- on,
- off
-};
-
-fsm_stati stato;
-
-void loop() {
- switch (stato){
- case on :
- digitalWrite(led, HIGH); // Mette il PIN del LED in stato acceso
- delay(pausa); // Aspetta un secondo (mille millisecondi)
-
- stato = off ; // Setta il prossimo state
- break;
-
- case off:
- digitalWrite(led, LOW); // Mette il PIN del LED in stato spento
- delay(pausa); // Aspetta mezzo secondo
-
- stato = on ;
- break;
- }
-}