Operácie

Rýchlokurz micro:bit

Zo stránky SensorWiki

Tento rýchlokurz je určený pre študentov, ktorí ešte nikdy neprogramovali. Za niekoľko hodín samostatnej práce sa naučíte napísať jednoduchý program pre mikropočítač BBC micro:bit a zvládnete základné programátorské konštrukcie: postupnosť príkazov, cykly, podmienky a premenné. Na cvičeniach už budeme tieto znalosti považovať za samozrejmé a budeme na nich stavať (komunikácia, senzory, ...).

Kurz tvorí 9 krátkych lekcií. Každá pridá k tomu, čo už viete, práve jednu novú vec. Odporúčame ich preto prejsť v poradí a pri každej si vyriešiť aj úlohy na konci. Na jednu lekciu počítajte zhruba 15 – 20 minút.

Čo je micro:bit

Súbor:Microbit-Komponenty.png
Rozloženie komponentov na doske micro:bit V2

BBC micro:bit je malý jednodoskový počítač veľkosti platobnej karty. Jeho jadrom je mikrokontrolér, teda jednočipový počítač, ktorý obsahuje procesor, pamäť aj vstupno-výstupné obvody. Na doske sú priamo osadené súčiastky, s ktorými môžeme hneď pracovať bez akéhokoľvek zapájania:

  • LED displej – matica 5 × 5 červených LED diód. Dá sa na ňom zobraziť obrázok, číslo alebo bežiaci text. Každú LED vieme rozsvietiť aj samostatne a s rôznym jasom.
  • Tlačidlá A a B – dve tlačidlá na prednej strane, ktoré môže program čítať.
  • Tlačidlo reset – na zadnej strane; spustí program odznova.
  • Akcelerometer a magnetometer – snímajú náklon, pohyb, otrasy a smer (kompas).
  • Snímač teploty – je súčasťou procesora, meria teda skôr teplotu čipu než okolia.
  • Snímač svetla – túto úlohu plní samotný LED displej.
  • Rádio a Bluetooth – na komunikáciu medzi micro:bitmi alebo s mobilom či počítačom.
  • Okrajový konektor – pozlátené kontakty na spodnom okraji. Na veľké otvory 0, 1, 2, 3V a GND sa dajú pripojiť krokosvorky, ostatné piny sú dostupné cez rozširujúce dosky.
  • Micro USB konektor – slúži na napájanie aj na nahrávanie programu.
  • Konektor pre batérie – micro:bit môže fungovať aj bez počítača, napr. z dvoch AAA batérií.

Verzie V1 a V2

V laboratóriu máme obe verzie, väčšina kusov je však novšia verzia V2. Verziu spoznáte podľa nápisu na zadnej strane dosky. Verzia V2 má navyše na prednej strane pozlátené logo, ktoré funguje ako dotykové tlačidlo, a medzi kontaktmi okrajového konektora sú malé výrezy.

micro:bit V1 micro:bit V2
Procesor ARM Cortex-M0, 16 MHz ARM Cortex-M4 s FPU, 64 MHz
Pamäť Flash / RAM 256 kB / 16 kB 512 kB / 128 kB
Reproduktor – (zvuk len cez pin 0) áno, priamo na doske
Mikrofón – áno, s indikačnou LED
Dotykové logo – áno
Vypínanie – dlhým stlačením tlačidla reset

Všetky programy v tomto kurze fungujú na oboch verziách. Kde využívame niečo, čo má len V2 (zvuk z reproduktora, dotykové logo), je to v texte výslovne uvedené.

Prostredie MakeCode

Programovať budeme vo webovom prostredí Microsoft MakeCode, ktoré nevyžaduje žiadnu inštaláciu:

https://makecode.microbit.org

Odporúčame prehliadač Chrome alebo Edge a anglické rozhranie. Všetky názvy blokov v tomto návode sú po anglicky, a po anglicky je aj väčšina návodov na internete. Ak by ste predsa len chceli bloky po slovensky, použite https://makecode.microbit.org/?lang=sk_SK

Po kliknutí na New Project a zadaní mena projektu uvidíte tri hlavné časti obrazovky:

  • Simulátor (vľavo) – virtuálny micro:bit, na ktorom sa program spustí okamžite po každej zmene. Tlačidlá A a B sa v ňom dajú stláčať myšou. Väčšinu programov si tak vyskúšate aj bez skutočného zariadenia.
  • Paleta blokov (v strede) – bloky sú rozdelené do farebných kategórií: Basic, Input, Music, Led, Loops, Logic, Variables, Math atď.
  • Pracovná plocha (vpravo) – sem bloky ťaháte a skladáte z nich program.

Tri pohľady na ten istý program

V hornej časti obrazovky je prepínač Blocks / JavaScript / Python. Nejde o tri rôzne programy, ale o tri spôsoby zápisu toho istého programu. Keď program poskladáte z blokov a prepnete sa do JavaScriptu, uvidíte ten istý program zapísaný textom, a naopak.

  • Bloky sú prehľadné a nedá sa v nich urobiť syntaktická chyba (napr. zabudnutá zátvorka). Dobre na nich vidno štruktúru programu: čo je vnútri cyklu, čo patrí do ktorej vetvy podmienky. Fungujú podobne ako vývojový diagram.
  • JavaScript a Python sú skutočné textové programovacie jazyky. Profesionálne programy sa píšu textom, preto si ich zvykajte čítať od začiatku.

V každej lekcii preto nájdete obrázok programu v blokoch a pod ním ten istý program v JavaScripte a Pythone (prepínajú sa záložkami). Odporúčame program najprv poskladať z blokov a potom sa prepnúť do textového zobrazenia a porovnať ho s návodom.

💡 Pozor na dva rôzne Pythony: Python v prostredí MakeCode používa rovnaké príkazy ako bloky a JavaScript (napr. basic.show_string("Ahoj")). Na internete často nájdete príklady v jazyku MicroPython (prostredie python.microbit.org), ktorý má iné príkazy (napr. display.scroll("Ahoj")). Syntax jazyka je rovnaká, ale príkazy pre micro:bit sa líšia, takže príklady z MicroPythonu v MakeCode nefungujú a naopak.

Nahratie programu do micro:bitu

  1. Pripojte micro:bit k počítaču USB káblom. V počítači sa objaví nový disk s názvom MICROBIT.
  2. V MakeCode kliknite na tlačidlo Download. Stiahne sa súbor s príponou .hex, čo je preložený program.
  3. Súbor pretiahnite (alebo skopírujte) na disk MICROBIT. Počas nahrávania bliká žltá LED na zadnej strane, potom sa micro:bit reštartuje a program sa spustí.

Pohodlnejší spôsob v prehliadači Chrome/Edge je micro:bit s MakeCode spárovať (tlačidlo … vedľa Download → Connect device). Potom sa program nahrá priamo jedným kliknutím na Download. Podrobnosti nájdete v návode Micro:bit Download.

Program zostáva v micro:bite uložený aj po odpojení napájania. Po zapnutí sa spustí znova.

Lekcie

  1. Výpis na displej – postupnosť príkazov, text, čísla, ikony
  2. Animácia – vlastný obrázok, nekonečný cyklus forever
  3. Premenná – pomenované miesto v pamäti
  4. Cyklus for – opakovanie s počítadlom, súradnice LED
  5. Cyklus while – opakovanie, kým platí podmienka
  6. Tlačidlá a udalosti – visačka na diskotéku
  7. Podmienka if-else – rozhodovanie v programe
  8. Počítadlo – premenná, ktorú menia udalosti
  9. Kuchynské minútky – záverečný projekt, spája všetko dohromady

Ako je lekcia zostavená

  • Čo sa naučíte – krátky prehľad cieľov lekcie.
  • Vysvetlenie – nový pojem všeobecne, platí pre akýkoľvek programovací jazyk.
  • Program – obrázok v blokoch, výsledok v simulátore a kód v JavaScripte a Pythone.
  • Ako to funguje – rozbor programu riadok po riadku.
  • Časté chyby – na čo si dať pozor.
  • Úlohy – samostatná práca. Úlohy riešte, len čítaním sa programovať nenaučíte.

Odkazy