Корак 1: Уради
Шта је ово?
Направите електронску свећу коју можете да угасите дувањем! Уграђени микрофон новог micro:bit уређаја детектује звук вашег даха и гаси свећу, а затим је поново пали.
Увод
Водич за програмирање
Шта сте научили
- Како се користе случајни бројеви да бисте упалили насумичне ЛЕД диоде
- Како променити излаз као одговор на улазе са сензора
- Како се користи Булова логика да бисте направили прекидач који се укључује и искључује када га покрене исти догађај
Како то ради
- Насумични број између 1 и 3 чува се у променљивој која се назива flicker.
- Овај број се користи за насумично укључивање и искључивање ЛЕД диода како би се симулирао пламен који трепери.
- ЛЕД диоде micro:bit уређаја распоређене су у мрежу по колонама и редовима нумерисаним од 0 до 4. Програм исцртава (укључује) и уклања цртеже (искључује) различите ЛЕД диоде у горњем реду у зависности од случајног броја сачуваног у променљивој flicker.
- Координате за ЛЕД диоде су увек дате тако да је дата прво колона (по x-оси), а затим ред горе или доле (по y-оси). Средина пламена је на координати 2, 0.
- Бесконачна петља наставља да приказује анимацију.
- Такође, програм користи променљиву под називомlit како би се пратило да ли је свећа упаљена или не. Ово је логичка (Boolean) променљива. Boolean (логичка) променљива може имати само две вредности: тачно (укључено) или нетачно (искључено).
- Када сензор микрофона детектује гласан звук, на пример када дувате у њега, мења се вредност променљиве litса осветљено на not lit (није осветљено). Дакле, када дунете у микрофон, ако је вредност променљивеlit тачно, она се мења у нетачно, а ЛЕД диоде се искључују.
- Ако је вредност променљиве lit нетачно, њена вредност постаје тачно и поново се покреће анимација.
Шта вам је потребно
- micro:bit
- MakeCode или Python уређивач
- батерије (опционално)
Корак 2: Програмирај
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: Унапреди
- Направите сопствени дизајн за укључивање или искључивање анимације користећи звук.
- Анимацију можете да покренете коришћењем блока "при гласном звуку" како бисте подесили осветљеност додавањем блока "поставите праг гласног звука" блоку "при покретању". Пронађите ову опцију под Улаз и '...више.' Користите мање бројеве за тиши звук, а веће бројеве за гласније звукове.
- У Python-у за промену нивоа за гласне звуке користите
microphone.set_threshold(SoundEvent.LOUD, 128)
непосредно пре петљеwhile True:
, мењањем броја128 у жељену вредност. Тај број може да буде било који број између 0 и 255, тако што 255 представља најгласнији звук.
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.