Skip to content

Активност

Штоперица на додир

Средње | MakeCode, Python | Лед екран, Лого осетљив на додир, Тастери | Measurement, Аритметички оператори, Логичке операције, Променљиве, Улаз/излаз

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

Шта је ово?

Направите праву штоперицу користећи нови micro:bit додирни-лого сензор као додатно дугме.

Увод

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

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

  • Како се користи нови micro:bit-ов додирни лого сензор као додатно дугме у практичном пројекту
  • Како мерити време користећи променљиве и математичке операторе
  • Како да претворите мерне јединице (милисекунде у секунде) помоћу математичких оператора
  • Шта је Boolean (логичка) променљива и како се помоћу њих може контролисати ток програма

Како употребљавати

  • Преузмите програм на нови micro:bit уређај који има уграђен звучник
  • Притисни тастер А да покренеш штоперицу. Док штоперица ради, анимирано срце које куца приказује се на ЛЕД екрану.
  • Притисни тастер Б да зауставите штоперицу. Можете да га покренете и зауставите колико год пута желите и он ће се и даље додавати времену, баш као права штоперица.
  • Притисните златни лого на предњој страни micro:bit уређаја да бисте приказали измерено време у секундама.
  • Да бисте вратили време на нулу, притисните дугме за ресетовање на полеђини micro:bit уређаја.

Како то ради

  • micro:bit уређај прати колико је дуго укључен у милисекундама (хиљадити део секунде). То се назива време рада.
  • Притиском на дугме А, променљива која се назива старт поставља се на тренутно време рада.
  • Притиском на дугме Б, вредност променљиве старт одузима се од новог времена рада да би се утврдило колико је времена протекло од покретања штоперице. Ова разлика се додаје укупном времену које се чува у променљивој која се назива време.
  • Ако притиснете лого осетљив на додир, програм приказује укупно протекло време на ЛЕД екрану. претвара време у секунде тако што милисекунде (хиљадити део секунде) дели са 1000. Користи се оператор целобројног дељења да би резултат био цео број (цели бројеви).
  • Поред тога, програм користи и Boolean (логичку) променљиву која се назива running и која се користи за контролу програма. Boolean (логичка) променљива може имати само две вредности: тачно (true) или нетачно (false). Ако променљива running има вредност тачно, штоперица је покренута. Ако променљива running има вредност нетачно, штоперица или није покренута или је заустављена.
  • Ако променљива running има вредност тачно, петља се користи да се анимација срца појављује на ЛЕД екрану.
  • Приказаће време када притиснете лого осетљив на додир само ако је штоперица заустављена, ако променљиваrunning нема вредност тачно.
  • Код спречава лажна очитавања тако што осигурава да се променљива време мења само када притиснете дугме Б ако је штоперица већ покренута, односно ако је променљива running има вредност тачно.

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

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

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

1from microbit import *
2time = 0
3start = 0
4running = False
5
6while True:
7    if running:
8        display.show(Image.HEART)
9        sleep(300)
10        display.show(Image.HEART_SMALL)
11        sleep(300)
12    else:
13        display.show(Image.ASLEEP)
14    if button_a.was_pressed():
15        running = True
16        start = running_time()
17    if button_b.was_pressed():
18        if running:
19            time += running_time() - start
20        running = False
21    if pin_logo.is_touched():
22        if not running:
23            display.scroll(int(time/1000))

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

  • Измените програм тако да можете ресетовати време протресањем micro:bit уређаја.
  • Учините мерач времена (тајмер) тачним тако што ћете користити разломке уместо целих бројева (цели бројеви).
  • Додајте функцију за тренутно време, тако да док штоперица ради приказује се време у том тренутку, ако додирнете лого осетљив на додир. Обратите пажњу да се ово време на додаје укупном времену у променљивој време.