Krok 1: Wykonaj to
Co to jest?
Zrób elektroniczną świeczkę, którą możesz zdmuchnąć! Wbudowany mikrofon nowego micro:bita wykrywa dźwięk Twojego oddechu i wyłącza świeczkę - i włącza ponownie.
Wprowadzenie
Przewodnik po kodowaniu
Czego nauczysz się
- Jak używać liczb losowych, aby zapalić losowo diody LED
 - Jak przełączać wyjścia w odpowiedzi na wejścia z czujnika
 - Jak używać logiki Boole'a, aby naprzemian włączać i wyłączyć przełącznik za pomocą jednego zdarzenia
 
Jak to działa
- Liczba losowa między 1 i 3 jest przechowywana w zmiennej o nazwie flicker.
 - Ta liczba jest używana do losowego włączania i wyłączania diod LED, aby wyglądały jak migocący płomień.
 - Diody LED micro:bit są ułożone w siatkę złożoną z kolumn i wierszy numerowanych od 0 do 4. Program włącza i wyłącza różne diody LED w górnym rzędzie w zależności od losowej liczby zachowanej w zmiennej flicker .
 - Współrzędne diod LED są zawsze podawane najpierw kolumna (oś x), a następnie wiersz (oś y). Środek płomienia znajduje we współrzędnych 2, 0.
 

- Pętla 'na zawsze' podtrzymuje działanie animacji.
 - Program używa również zmiennej o nazwie lit do śledzenia, czy świeca jest zapalona, czy nie. To jest zmienna logiczna. Zmienne logiczne mogą mieć tylko dwie wartości: true (prawda, włączony) lub false (fałsz, wyłączony).
 - Gdy czujnik mikrofonu wykrywa głośny dźwięk, na przykład, gdy na niego dmuchasz, kod przełącza wartość lit przez ustawienie jej na not lit. A zatem kiedy dmuchasz na mikrofon, jeśli lit jest true (prawda), staje się false (fałsz) i ekran jest czyszczony, wyłączając diody LED.
 - Jeśli lit była false (fałsz), staje się true (prawda) i ponownie włączamy animację.
 
Czego potrzebujesz
- micro:bit
 - MakeCode lub edytor Pythona
 - pakiet baterii (opcjonalnie)
 
Krok 2: Zakoduj to
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()Krok 3: Ulepsz to
- Stwórz własny projekt animacji, włączanej i wyłączanej dźwiękiem.
 - Możesz sprawić, by blok 'gdy dźwięk głośny' był bardziej lub mniej wrażliwy poprzez dodanie bloku 'ustaw dźwięk głośny na poziomie' do bloku 'podczas uruchamiania'. Znajdź ten blok w kategorii 'Wejście' i ...'więcej'. Użyj mniejszych liczb dla cichych dźwięków, większych liczb dla głośniejszych dźwięków.
 - W Pythonie, aby zmienić próg głośnych dźwięków, użyj 
microphone.set_threshold(SoundEvent. LOUD, 128)tuż przed pętląwhile True:, zmieniając liczbę 128 na żądaną głośność dźwięku. Może to być dowolna liczba między 0 i 255, przy czym 255 to dźwięk najgłośniejszy. 
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.


