Progetto 02: Semaforo

1. Panoramica

In questo progetto, utilizziamo tre LED (rosso, giallo e verde), un altoparlante sulla scheda micro:bit e una matrice LED 5x5 per realizzare un modello di semaforo.

2. Componenti

Img

Img

Img

scheda micro:bit *1

scheda di espansione micro:bit tipo T *1

cavo micro USB *1

Img

Img

Img

LED rosso *1

LED giallo *1

LED verde *1

Img

Img

Img

resistore 220Ω *3

fili jumper

breadboard *1

Img

Img

portabatterie *1
(batterie AA auto-fornite *2)

scheda semaforo *1

3. Conoscenza dei Componenti

Altoparlante

Img

Micro:bit è dotato di un altoparlante, che rende facile produrre suoni nel tuo progetto.

4. Schema di Collegamento

Img

Nota: la scheda micro:bit deve essere inserita nella scheda di espansione tipo T come mostrato sotto. La matrice LED della scheda micro:bit deve essere sullo stesso lato del logo della scheda di espansione.

Img

5. Flusso del Codice

Img

6. Codice di Test

Il file di codice è fornito nella cartella Progetto 02:Semaforo, file Project-02-Traffic-Lights.py.

Img

Codice completo:

'''
Function: traffic lights with countdowns and buzzes
Compiling IDE: MU 1.2.0
Author: https://docs.keyestudio.com
'''
# import microbit related libraries
from microbit import *

pin1.write_digital(0) # set P1 pin to low
pin2.write_digital(0) # set P2 pin to low
pin8.write_digital(0) # set P8 pin to low

import music # import music libraries

while True:
   pin1.write_digital(1)  # P1 pin to high
   display.show('6')  # LED matrixs shows 6
   sleep(1000)        # delay 1s
   display.show('5')
   sleep(1000)
   display.show('4')
   sleep(1000)
   display.show('3')
   sleep(1000)
   display.show('2')
   sleep(1000)
   display.show('1')
   sleep(1000)
   display.show('0')
   sleep(1000)
   pin1.write_digital(0)
   pin2.write_digital(1)
   music.play("C4:4")    # speaker plays C4 tone
   display.show('2')
   sleep(500)
   pin2.write_digital(0)
   music.reset()         # no tone
   sleep(500)
   pin2.write_digital(1)
   music.play("C4:4")
   display.show('1')
   sleep(500)
   pin2.write_digital(0)
   music.reset()
   sleep(500)
   pin2.write_digital(1)
   music.play("C4:4")
   display.show('0')
   sleep(500)
   pin2.write_digital(0)
   music.reset()
   sleep(500)
   pin8.write_digital(1)
   display.show('6')
   sleep(1000)
   display.show('5')
   sleep(1000)
   display.show('4')
   sleep(1000)
   display.show('3')
   sleep(1000)
   display.show('2')
   sleep(1000)
   display.show('1')
   sleep(1000)
   display.show('0')
   sleep(1000)
   pin8.write_digital(0)

7. Risultato del Test

Clicca su “Flash” per caricare il codice sulla scheda micro:bit.

Img

Dopo aver scaricato il codice sulla scheda, accendi tramite cavo micro USB o alimentatore esterno (imposta l’interruttore DIP su ON), e premi il pulsante di reset sulla scheda.

Img

Il LED verde si accende e la matrice LED 5×5 conta alla rovescia 6 secondi. Dopo che il LED verde si spegne, il LED giallo lampeggia e la matrice conta 3 secondi con suono dall’altoparlante. Infine, il LED rosso si accende con un conto alla rovescia di 6 secondi. Queste azioni si ripetono.

ATTENZIONE: Se il cablaggio è corretto ma non vedi i risultati, premi il pulsante di reset sul retro della scheda.

Img

Quando si alimenta tramite alimentatore esterno, impostare l’interruttore DIP su ON.

Img