Skip to content

Активност

Снимач звука

Средње | MakeCode, Python | Лед екран, Микрофон | Аритметички оператори, Променљиве, Руковање подацима, Улаз/излаз

Корак 1: Уради

Шта је ово?

Направите снимач нивоа звука како бисте пратили како се ниво буке у твојој околини временом повећава или смањује

Увод

Водич за програмирање

Шта сте научили

  • Како измерити јачину звука помоћу micro:bit-вог уграђеног сензора микрофона
  • Користите променљиве и операторе за праћење максималних вредности података које прикупљате из стварног света.

Како то ради

  • Нови микрофон на micro:bit-у мери ниво звука у бројевима између 0 и 255, баш као и светлосни сензор.
  • У петљи се врши упоређивање тренутног нивоа звука са вредностима у променљивојмаксЗвук у којој се чува најјачи звук. Ако је тренутни звук јачи од предходно сачуваног најјачег звука, тада се вредност максЗвук ресетује на ту нову вредност.
  • Унутар петље, условна наредба if проверава да ли сте притиснули дугме А. Ако јесте, тада се приказује нивоа звука на ЛЕД екрану. На овај начин можете да пратите како одређена места временом постају све гласнија.
  • Ресетујте максималну вредност притиском на дугме ресет које се налази на полеђини micro:bit уређаја.

Шта вам је потребно

  • нови micro:bit уређај са звуком (или MakeCode симулатор)
  • MakeCode или Python уређивач
  • батерије (опционално)

Корак 2: Програмирај

1from microbit import *
2maxSound = 0
3lights = Image("11111:"
4              "11111:"
5              "11111:"
6              "11111:"
7              "11111")
8# ignore first sound level reading
9soundLevel = microphone.sound_level()
10sleep(200)
11
12while True:
13    if button_a.is_pressed():
14        display.scroll(maxSound)
15    else:
16        soundLevel = microphone.sound_level()
17        display.show(lights * soundLevel)
18        if soundLevel > maxSound:
19            maxSound = soundLevel
20            

Корак 3: Унапреди

  • Измените пројекат тако да прати и најтиши, минималну вредност нивоа звука
  • Користите радио за слање нивоа звука на други micro:bit, тако да можете даљински надгледати ниво звука