Logo ODE

Facciamo suonare la Maker Uno – r01 (parte 5)

Nel punto 4 abbiamo acceso il LED e adesso, dobbiamo trovare il punto dove inserire il comando che lo spegnerà a fine esecuzione della nota.

Nel corso della nostra chiaccherata abbiamo detto che ad ogni nota è abbinato un tempo di esecuzione e che, per migliorare l’effetto “musicale”, fra una nota e l’altra viene introdotta una piccola pausa bene, noi dobbiamo inserire il comando di spegnimento del LED dopo l’arresto della nota.
Mentre per suonare una nota il comando è tone(), per spegnere il generatore di suoni il comando è noTone() ed è questo comando che dobbiamo cercare per cui

……..
// stop the waveform generation before the next note.
noTone(buzzer);
………

e inserire lo spegnimento del LED subito dopo il comando noTone().
In effetti, nella versione che trovate modificata da me, ho scelto di spegnere tutti i LED senza concentrarmi solo su quello appena acceso. Questa scelta è di tipo cautelativo e non ottimizzata. Va detto che, il ciclo di di spegnimento di tutti i LED si conclude in un tempo irrilevante per l’esecuzione delle note.
Il codice modificato secondo quanto detto diventa

………
// stop the waveform generation before the next note.
noTone(buzzer);
//Shut down all LED
for (int LEDOFF = 5; LEDOFF<14; LEDOFF = LEDOFF + 1)
{
digitalWrite(LEDOFF,LOW);
}

………

A questo punto, se abbiamo svolto bene il nostro lavoro, dobbiamo salvare le modifiche e lanciare la compilazione che si dovrebbe concludere senza errori. Se il risultato è positivo, procedete al caricamento del codice nel microcontrollore e verificatene la corretta funzionalità

Approfondimenti:
Provate a modificare il codice in maniera tale che ogni volta venga spento solo il LED precedentemente acceso.


da

Commenti

Una risposta a “Facciamo suonare la Maker Uno – r01 (parte 5)”

  1. […] le note da suonare4) l’inseririmento nel codice di una routines che accenda il LED scelto5) l’inserimento mel codice di una routines che spegne il LED precedentemente accesoOgni singolo intervento sarà descritto nelle parti seguenti dell’articolo. Questa scelta di […]

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.