Pulsante e moduli digitali di uscita

Il pulsante è modulo digitale di ingresso con cui in questo esempio prima farete accendere e spegnere il diodo luminoso e poi farete avviare e fermare il ventilatore.

Il diodo luminoso e ventilatore funzioneranno da moduli digitali di uscita. Ciò significa che si troveranno in uno dei due stati possibili – saranno accesi o spenti. In stato acceso il diodo luminoso sarà illuminato a massima intensità e il ventilatore girerà a massima velocità.

Questo esempio mostra come il modulo digitale di ingresso (pulsante) gestisce il funzionamento dei moduli digitali di uscita (diodo luminose e ventilatore).

Compito

Create il programma in cui ogni volta che si preme il pulsante il diodo luminoso si accende come segno che il pulsante è premuto. In aggiunta, allo stesso tempo come il diodo luminoso esterno, sul micro:bit deve accendersi e spegnersi il diodo che si trova al centro dello schermo (posizione: 2, 2).

Quando trasferite il programma su micro:bit e provate come funziona, staccate il diodo luminoso e al suo posto collegate il ventilatore, avviatelo premendo il pulsante.

Collegamento di moduli

Inserite il micro:bit nella scheda. Nei posti per collegamento dei moduli elettronici collegate il pulsante e il diodo luminoso come mostra lo schema di circuito. Il pulsante come modulo digitale di ingresso si può collegare a qualsiasi pin della scheda. Il diodo luminoso può essere il modulo digitale o analogo e anche esso può essere collegato a qualsiasi pin. In questo esempio, secondo lo schema mostrato, il pulsante è collegato a pin P0 e il diodo luminoso a pin P1. Collegate il micro:bit al computer con il cavo USB per alimentare il circuito e per poter trasferire il programma su micro:bit.

Come creare il programma

Collocate tutte le istruzioni in questo programma nel ciclo forever perché volete che il programma si esegua in continuazione. Cioé, volete che ogni volta che il pulsante viene premuto si accenda il diodo luminoso (o si avvia il ventilatore).

Nel programma prima bisogna definire la condizione che deve essere realizzata per far illuminare il diodo luminoso. Questa condizione è la pressione del pulsante. Il pulsante è il modulo digitale di ingresso collegato a pin P0. Ogni volta che si preme il pulsante il pin P0 assume il valore 1. Quando il pulsante si rilascia il valore del pin P0 diventa 0.

Passo 1

Dalla categoria Logic scegliete l’istruzione if then else e collocatela nel ciclo forever. Nella parte if dell’istruzione collocate l’operatore di confronto (di uguaglianza) che si trova nella categoria Logic. In questo modo potete verificare la condizione che deve essere: il valore letto al pin P0 è uguale a 1.

Dalla parte sinistra del confronto bisogna inserire il blocco che rappresenta il valore letto in modo digitale del pin P0. Questo blocco si trova nella categoria Pins. Trovate la categoria Pins nella parte Advanced delle categorie.

Passo 2

Dalla categoria Pins scegliete il primo blocco digital read pin P0. Con esso il micro:bit verifica il segnale digitale sul pin P0. Collocate questo blocco alla parte sinistra del confronto e dalla parte destra scrivete numero 1. Adesso è definita la condizione con la quale si verifica se il valore del segnale digitale sul pin P0 è uguale a 1. In altre parole, se il pulsante è premuto.

Se la condizione è soddisfata (il pulsante è premuto), il diodo luminoso deve illuminarsi. In codice sorgente lo definirete nella parte then dell’istruzione. Il diodo luminoso in questo circuito è il modulo digitale di uscita collegato a pin P1. Attraverso pin P1 il diodo luminoso riceve il segnale digitale. Micro:bit controlla questo processo monitorando lo stato del pin P0. Quando il micro:bit riceve dal pin P0 il segnale digitale 1, allora sul pin P1 imposta il valore del segnale digitale a 1.

Passo 3

L’istruzione con la quale il micro:bit imposta il valore del segnale digitale si trova nella categoria Pins e si chiama digitalwrite pin P0 to 0. All’interno di quell’istruzione potete scegliere il pin che vi serve e inserire il valore del segnale digitale che può essere 0 o 1.

Scegliete l’istruzione digital write pin P0 to 0 e collocatela nella parte then dell’istruzione. Cliccando sulla freccetta a fianco il parametro P0 cambiate P0 in P1 e come argomento dell’istruzione inserite 1.

Con ciò avete definito: se il valore del segnale digitale sul pin P0 è 1 (il pulsante è premuto), allora il pin P1 assume il valore 1 (il diodo luminoso si illumina).

Passo 4

Adesso nella parte else bisogna definire cosa accadrà quando la condizione non è soddisfatta (quando il pulsante non è premuto). Quando il pulsante non è premuto, il diodo luminoso non si illuminerà. Ciò significa che lo stato del pin P1 al quale il diodo è collegato sarà 0. Nella parte else dell’istruzione collocate l’istruzione digital write pin P0 to 0 e al posto di P0 scegliete P1.

Passo 5

Anche su micro:bit stesso potete monitorare il funzionamento del pulsante e del diodo luminoso. Nella parte if aggiungete l’istruzione show leds dalla categoria Basic e all’interno di essa scegliete il diodo che si trova al  centro dello schermo. Nella parte else aggiungete l’istruzione clear screen dalla categoria Basic nella parte more. Tramite queste istruzioni anche sullo schermo di micro:bit il diodo si accenderà e spegnerà a seconda che il pulsante venga premuto. Notate che i diodi luminosi (sia quella esterna che quella su micro:bit) si illuminano per tanto tempo quanto il pulsante è premuto.

Trasferite il programma su micro:bit e provatelo prima con diodi luminoso e poi con ventilatore.

Tags: