.. meta:: :language: it :description language=it: Embedded Systems Architecture: Esercitazione Arduino blinking LED :description language=en: Embedded Systems Architecture: Practice Arduino blinking LED :keywords: Embedded Systems Architecture, Practice Arduino blinking LED :author: Luciano De Falco Alfano Sheet arduino n.1 (blinking led) ================================== .. contents:: :local: Blinking led ---------------- [*Lezione del 29 ott 2019*] .. raw:: html Il mio contenuto dello sketch per l'esercitazione è il seguente: .. literalinclude:: ./exercises/sketch_20191030.ino :language: c :linenos: Accendere alternativamente 3 led ----------------------------------- [*Lezione del 04 nov 2019*] In coda alla `scheda della esercitazione n.1 `_ vi è la richiesta di accendere alternativamente due o tre led. Siccome siamo ingordi, facciamo tre. Il seguente video mostra lo schema montato e l'esecuzione dello sketch. .. raw:: html Lo sketch per accendere in alternativa i tre led è il seguente: .. literalinclude:: ./exercises/sketch_20191106.ino :language: c :linenos: Alla linea 11 vi è la definizione di un array di tre interi, che contengono ognuno il numero della porta di un LED. Vi accediamo con gli indici ``GLED``, ``YLED``, e ``RLED``, definiti con direttive di precompilazione alle linee da 7 a 9. Il resto consiste in un ciclo infinito in cui incrementiamo l'indice ``led_ndx`` e gli riassegniamo il modulo della divisione per 3. In tal modo cicliamo sugli indici da 0 a 2 e accendiamo di conseguenza il led presente alla porta ``LEDS[led_ndx]``. Per accendere il led usiamo la funzione ``drive_led``, leggermente modificata per supportare il *forever*: quando il tempo di spegnimento (o accensione) è zero, allora significa *per sempre*. L'accensione è prioritaria. Accendere un led tramite pulsante ----------------------------------- Nella stessa scheda della esercitazione n.1, vi è la richiesta di accendere un led secondo comando di un pulsante. Ecco il video del relativo assemblaggio e test .. raw:: html Lo sketch è il seguente: .. literalinclude:: ./exercises/sketch_20191106-2.ino :language: c :linenos: Questo sketch è estremamente semplice: legge il valore di tensione dal pulsante e lo riscrive sul led.