Skip to content

Aktywność

Gra ciepło-zimno

Średnio zaawansowany | MakeCode, Python | Przyciski, Radio, Wyświetlacz LED | Komunikacja, Typy Danych

Krok 1: Wykonaj to

Co to jest?

Wykonaj tę zabawną grę dwuosobową używając funkcji radia BBC micro:bit.

Czego się nauczysz

Realizując ten projekt, dowiesz się o sieciach, o tym, w jaki sposób informacje są przesyłane między urządzeniami elektronicznymi drogą radiową oraz w jaki sposób komputery przechowują informacje w różnych typach danych, np. jak słowa są przechowywane w łańcuchach.

Jak to działa

  • To jest gra dla dwóch osób. Jedna osoba ukrywa obiekt i daje poszukującemu wskazówki: „gorąco”, gdy jest blisko obiektu, „chłodniej”, gdy odchodzi od obiektu i „cieplej”, gdy zbliża się do obiektu.
  • Zazwyczaj w tej grze krzyczy się „gorąco”, „chłodniej” i „cieplej”, ale w tej jej wersji te słowa są wysyłane przez radio z jednego micro:bita do drugiego i pojawiają się na wyświetlaczu LED.
  • Są dwa programy, jeden dla ukrywającego obiekt i jeden dla poszukującego.
  • Najpierw, każdy program ustawia grupę radiową na 47. Grupy są jak kanały, więc każdy micro:bit korzystający z tej samej grupy otrzyma wiadomość. Możesz użyć dowolnego numeru grupy od 0 do 255.
  • Ukrywający naciska przycisk A, aby wysłać komunikat „cieplej”, naciska przycisk B, aby wysłać komunikat „chłodniej” i naciska razem przyciski A i B, aby wysłać komunikat „gorąco”.
  • micro:bit może wysyłać wiadomości jako cyfry lub tekst. W tym projekcie używamy komunikatów tekstowych, więc upewnij się, że używasz bloków radiowych, które odwołują się do łańcuchów raczej nie liczb lub wartości.
  • W informatyce, łańcuch jest ciągiem znaków, którymi mogą być litery, cyfry, symbole i odstępy.
  • Gdy mikro:bit osoby poszukującej otrzyma komunikat radiowy, pokazuje otrzymany łańcuch na wyświetlaczu LED. Łańcuchy są również wyświetlane na micro:bicie osoby ukrywającej obiekt.

Czego potrzebujesz

  • 2 mikro:bity
  • Edytor MakeCode
  • pakiet baterii (zalecane)

Krok 2: Zakoduj to

Kod osoby ukrywającej

1# Imports go at the top
2from microbit import *
3import radio
4radio.config(group=47)
5radio.on()
6
7while True:
8    if button_a.is_pressed() and button_b.is_pressed():
9            radio.send('HOT!')
10            display.scroll('HOT!')
11    elif button_a.is_pressed():
12        radio.send('warmer')
13        display.scroll('warmer')
14    elif button_b.is_pressed():
15        radio.send('colder')
16        display.scroll('colder')
17    sleep(100)

Kod osoby poszukującej

1# Imports go at the top
2from microbit import *
3import radio
4radio.config(group=47)
5radio.on()
6
7while True:
8    message = radio.receive()
9    if message:
10        display.scroll(message)
11    sleep(100)

Krok 3: Ulepsz to

  1. Edytuj program tak, aby pojawiały się inne słowa zamiast "gorąco", "chłodniej" i "cieplej". Na przykład możesz użyć słów "gorąco", "chłodniej" i "cieplej" w języku obcym, którego się uczysz.
  2. Dodaj efekty dźwiękowe do programu.
  3. Użyj tej gry ze stoperem lub licznikiem kroków, aby zobaczyć, jak szybko znalazłeś obiekt.