Skip to content

Aktivnost

Svijeća

Srednji | MakeCode, Python | LED zaslon, Mikrofon | Booleova logika, Odabir, Senzori

1. korak: Napravi

Što je to?

Napravite elektronsku svijeću koju možete ugasiti puhanjem! Micro:bit-ov novi ugrađeni mikrofon otkriva zvuk Vašeg daha te isključuje svijeću - zatim ju opet uključuje.

Uvod

Vodič za kodiranje

Što ćeš naučiti

  • Kako koristiti nasumične brojeve da biste upalili nasumične LED diode
  • Kako promijeniti izlaze kako bi reagirali na na senzorove naredbe
  • Kako koristiti Booleovu logiku da biste napravili prekidač koji se uključuje i isključuje nakon što ga ista radnja pokrene

Kako to radi

  • Nasumični broj između 1 i 3 je pohranjen u varijabli pod nazivom flicker.
  • Ovaj broj služi za uključivanje i isključivanje LED dioda nasumično kako bi izgledalo kao plamen.
  • Micro:bit-ove LED diode su psoložene u rešetku sa stupcima i redcima označenim od 0 do 4. Program plotira (uključuje) i deplotira (isključuje) LED diode u gornjem redu ovisno o tome koji je broj pohranjen u "Flicker" varijabli.
  • Koordinate za LED diode su uvijek dane sa stupcem preko (X-kor.) zatim red gore i dolje (Y-kor.) Sredina plamena je na koordinati 2, 0.
Rešetka prikazuje koordinate micro:bit-ovog LED zaslona.
  • Petlja zauvijek nastavlja reproducirati animaciju nakon završetka.
  • Program također koristi varijable pod nazivom litkako bi pratila je li svijeća uključena ili ne. Ovo je Booleova varijabla. Booleove varijable mogu imati samo dvije vrijednosti : točno (uključeno) ili netočno (isključeno).
  • Kada mikrofon otkrije glasan zvuk, na primjer kada pušete u njega, kôd mijenja vrijednost od funkcije lit tako da ju preusmjeri na not lit. Kada puhnete u mikrofon, ako je lit bila postavljena na točno, pretvorit će se u netočno te se tada LED zaslon i diode isključuju.
  • Ako je funkcija lit bila netočna, pretvorit će se u točnu te će uključiti animaciju svijeće.

Što ti treba

  • micro:bit
  • Uređivač MakeCode ili Python
  • baterije (prema potrebi)

2. korak: Kodiraj

1from microbit import *
2import random
3
4lit = True
5
6while True:
7    if microphone.was_event(SoundEvent.LOUD):
8        lit = not lit
9        sleep(500)
10    if lit:
11        display.show(Image(
12        "00900:"
13        "09990:"
14        "09990:"
15        "09990:"
16        "09990"))
17        sleep(150)
18        flicker = random.randint(1, 3)
19        if flicker != 2:
20            display.set_pixel(2,0,0)
21            display.set_pixel(flicker,0,9)
22        sleep(150)
23    else:
24        display.clear()

3. korak: Unaprijedi

  • Izradite svoj dizajn uključivanje i isključivanje animacije koristeći se zvukom.
  • Animaciju možete pokrenuti s funkcijom 'na glasan zvuk' kako biste podesili osjetljivost dodavanjem bloka 'postavite prag glasnog zvuka' na blok 'na početku'. Pronađite ovu opciju pod Ulaz zatim '...još.' Koristite manje brojeve za tiše zvukove, veće brojeve za glasnije zvukove.
  • U Pythonu, da biste promjenili prag glasnih zvukova koristite microphone.set.threshold(SoundEvent.LOUD, 128) prije petlje while True:, mijenjanjem broja 128 u vrijednost po želji. Taj broj može biti između 0 i 255, tako što je 255 najglasniji zvuk.