← Materiály

🎯 Chyť svetielko

Chyť červené svetielko na zelenom cieli. Cieľ je v každom kole inde a na konci kola vidíš skóre.
0 / 4 krokov
⬇ Stiahnuť na plochu

🧠 Rýchla teória

🔌 Čo potrebuješ

NeoPixel pás zapojený podľa návodu NeoPixel pás (krok 1): žltý kábel (dátový) → P0, červený → 3V, čierny → GND. Cyklus pre index si skúšal v návode Cykly pokročilé (Bežiace svetielko). Premennú poznáš z dúhy.

🎮 Ako sa hrá

Po páse beží červené svetielko. Na páse svieti aj zelený cieľ, pri každom kole na inom mieste. Keď je červené svetielko na zelenom cieli, stlač a drž tlačidlo A. Chytil si ho a dostaneš bod.

Keď svetielko prebehne celým pásom, kolo skončí. Na micro:bite sa ukáže skóre, 4 sekundy pauza a začne nové kolo s novým cieľom.

🎯 Podmienka v cykle

Do cyklu môžeš vložiť aj podmienku ak. Pri každom kroku cyklu sa micro:bit spýta: je svetielko na cieli? A zároveň: je stlačené tlačidlo A? Ak je odpoveď áno na obe, urobí to, čo mu povieš. Tak chytíš svetielko.

🛠️ Postav to krok za krokom

tlačidlo Nový projekt
📁 NOVÝ PROJEKT · hra

Chyť svetielko

🏠 domček → Nový projekt → názov Chyť svetielko → Vytvoriť

🧩 Pridaj rozšírenie: Rozšírenia → neopixel.

1 Príprava: skóre a cieľ

Premenné → Vytvoriť premennú skore Premenné → Vytvoriť premennú ciel Neopixel → nastaviť strip na NeoPixel at pin

V hre si pamätáme dve čísla: skore (koľko bodov máš) a ciel (na ktorej LED je zelený cieľ).

  1. Vytvor dve premenné: skore a ciel.
  2. Do počas spustenia daj nastaviť strip… (kolík P0, 10 LED).
  3. Pod to daj nastaviť skore na 0. Hra začína s nulou bodov.

👀 Zatiaľ nič nesvieti. Hru stavíme v ďalších krokoch.

počas spustenia: nastaviť skore na 0, nastaviť strip na NeoPixel at pin P0 with 10 leds

2 Náhodný cieľ a bežiace svetielko

Premenné → nastaviť ciel na 0 Matematika → vybrať náhodne od 0 do 10 Cykly → pre index od 0 do 4 Neopixel → strip clear Neopixel → strip set pixel color at 0 to red Neopixel → strip show

Na začiatku každého kola si micro:bit vyberie náhodné miesto pre cieľ. Potom pošle červené svetielko po páse. Do bloku vždy daj:

  1. nastaviť ciel na vybrať náhodne od 0 do 9. Číslo 10 zmeň na 9. Cieľ je teda na LED 0 až 9.
  2. Pod to cyklus pre index od 0 do 9 a do neho strip clear.
  3. strip set pixel color at ciel to green. Premennú ciel vezmeš zo skupiny Premenné.
  4. strip set pixel color at index to red, potom strip show a pozastaviť 150.

Zelená LED sa kreslí ako prvá a červená ako druhá. Keď je červená na zelenej, svieti červená.

👀 Zelená LED svieti na jednom mieste, červené svetielko cez ňu prebehne. V ďalšom kole bude zelená inde.

vždy: nastaviť ciel na vybrať náhodne od 0 do 9; pre index od 0 do 9: strip clear, set pixel color at ciel to green, set pixel color at index to red, strip show, pozastaviť 150

3 Chyť ho tlačidlom A

🔧 Ostávaš v tom istom projekte. Len ho vylepšíš.

Logika → ak … potom Logika → … a … Logika → Porovnanie → 0 = 0 Vstup → tlačidlo A je stlačené Premenné → zmeniť skore o 1 Neopixel → strip show rainbow

Pod pozastaviť 150, stále vnútri cyklu pre index, daj ak … potom:

  1. Z Logiky vlož blok … a … (obe veci musia platiť naraz).
  2. Do ľavej strany daj porovnanie index = ciel: svetielko je na zelenej.
  3. Do pravej strany daj tlačidlo A je stlačené (z Vstupu).
  4. potom: zmeniť skore o 1, strip show rainbow from 1 to 360 a pozastaviť 1000. Dostaneš bod a pás sa rozsvieti dúhou.

Drž A stlačené, keď je červené svetielko na zelenej. Nedrž ho stále, to by nebola hra!

👀 Chytíš svetielko: pás sa na sekundu rozsvieti dúhou. Ak ho nechytíš, nestane sa nič.

vždy: nastaviť ciel náhodne 0 až 9; pre index od 0 do 9: strip clear, set pixel color at ciel to green, set pixel color at index to red, strip show, pozastaviť 150; ak index = ciel a tlačidlo A je stlačené potom zmeniť skore o 1, strip show rainbow, pozastaviť 1000

4 Skóre na konci kola

🔧 Ostávaš v tom istom projekte. Len ho vylepšíš.

Základné → zobraziť číslo Základné → pozastaviť Základné → Vymazať obrazovku

Kolo skončí, keď cyklus pre index dobehne do konca. Až pod cyklom (mimo neho, ale ešte vnútri bloku vždy) daj:

  1. zobraziť číslo skore: na displeji micro:bitu sa ukáže tvoje skóre,
  2. pozastaviť 4000: čaká 4 sekundy, aby si skóre stihol prečítať,
  3. Vymazať obrazovku: displej zhasne.

Potom sa blok vždy začne odznova: micro:bit vyberie nový cieľ a svetielko vybehne znova. Skóre sa nenuluje, takže sa sčítavajú body zo všetkých kôl.

👀 Svetielko prebehne pásom, na displeji sa ukáže skóre, 4 sekundy pauza a nové kolo s cieľom na inom mieste.

🏁 Hra Chyť svetielko je hotová. Koľko bodov nazbieraš?

vždy: nastaviť ciel náhodne 0 až 9; pre index od 0 do 9 (strip clear, ciel zelená, index červená, show, pozastaviť 150, ak index = ciel a tlačidlo A je stlačené potom zmeniť skore o 1, rainbow, pozastaviť 1000); potom zobraziť číslo skore, pozastaviť 4000, Vymazať obrazovku

✅ Keď to nefunguje

Pás nesvieti.

Sú všetky tri svorky pripojené? Žltý kábel (dátový) ide do P0, červený do 3V, čierny do GND. Pridal si rozšírenie neopixel? Je v bloku nastaviť strip kolík P0 a počet LED 10?

Svetielko zanecháva za sebou stopu.

Na začiatku cyklu ti chýba strip clear. Ten zhasne všetky LED skôr, ako rozsvietiš nové.

Zelená LED nesvieti.

Blok set pixel color at ciel to green musí byť pred červeným svetielkom a pred strip show. Skontroluj aj, že je pod strip clear.

Zelený cieľ je stále na tom istom mieste.

Blok nastaviť ciel na vybrať náhodne musí byť v bloku vždy, nad cyklom pre index. Ak ho dáš do počas spustenia, vyberie sa len raz.

Svetielko chytám, ale nič sa nestane.

Drž A stlačené, kým je červené svetielko na zelenej. Je v bloku ak blok … a … a v ňom index = ciel? Je blok ak vnútri cyklu pre index, pod pauzou?

Pás sa rozsvieti dúhou stále, keď držím A.

Dúha sa ukáže len vtedy, keď je svetielko na zelenej a zároveň držíš A. Skontroluj, či máš v bloku naozaj a, nie alebo.

Skóre sa nezvyšuje.

Blok zmeniť skore o 1 patrí do vetvy potom, spolu s dúhou. A v bloku počas spustenia musí byť nastaviť skore na 0.

Skóre sa ukáže uprostred kola.

Blok zobraziť číslo skore je asi vnútri cyklu pre index. Má byť až pod ním, ale stále vnútri bloku vždy.

Farby pásu sú iné (červená vyjde zelená).

V bloku nastaviť strip zmeň RGB (GRB format) na RGB (RGB format) alebo naopak.

Program sa správa zmätene, hádajú sa dva programy.

Na ploche máš dva programy naraz. Hádajú sa o pás. Na ploche má byť len to, čo je na obrázku v kroku. Založ nový projekt.

Neviem nájsť starý projekt.

Klikni na 🏠 domček vľavo hore. Všetky projekty sú v Moje projekty, každý pod svojím názvom.

🔁 3 pokusy → 🧑‍🤝‍🧑 kamarát → 🙋 učiteľ