BBC MicroBit

Hardver, szoftver
Hardver
Forrás: https://malnapc.hu/2017/03/bbc-microbit/
A mini számítógép lelke egy ARM Cortex-M0 processzor 256kB flash és 16kB statikus memóriával valamint egy 2.4GHz-es Bluetooth Low Energy vezeték nélküli hálózati egységgel megtámogatva.
A panel elején kapott helyet:
- egy 25 elemből álló piros LED mátrix,
- 2 darab programozható nyomógomb és a
- 25 pólusú csatlakozósáv. Ez utóbbi 5 nagyméretű csatlakozást kínál, így krokodilcsipesszel vagy 4mm-es banándugóval támadhatunk neki. Föld, +3V és három darab digitális/analóg ki vagy bemenet. Ezt a kezdők részére, míg a maradék keskenyebb csatlakozókat, melyek 6 soros I/O-t, SPI és I2C interfészt is tartalmaznak, haladóknak szánták, komolyabb projektekhez.

A hátoldalon található
- a már említett CPU és
- bluetooth.
- Mellettük egy gyorsulásmérővel kiegészített iránytű,
- reset gomb,
- táp és USB OTG csatlakozó kapott még helyet.
A tápellátás történhet a programozáshoz is használható USB csatlakozón, vagy külső telep használatakor a “battery connector”-on keresztül. Ezzel a micro:bit máris hordozhatóvá válik.

Szoftver
A fent említett webes programozói felületen egy újdonság, a JavaScript Blocks Editor (PXT) vár ránk. Első ránézésre nagyon hasonlít a Scratch programra. Ez a kezdőknek javallott, de nem kell elkeseredni a profibbaknak sem! Ők Python környezetben írhatnak programot a micro:bit számára. A reklámszöveg szerint mindenféle menő dolgot készíthetünk az áramkörrel. A kis robotoktól kezdve a hangszerekig a lehetőségek száma végtelen.
Programozási felületek:
- Microsoft Touch Develop (online)
- Microsoft Block Editor (online)
- Code Kingdoms Javascript editor (online)
- MicroPython (online soon and offline)

Használata
A mikro:bit használata 5 egyszerű lépésben
Csatlakoztasd a micro:bit-et a számítógépedhez mikro USB-kábelen keresztül. Mac, PC, Chromebook és Linux rendszerek mind támogatottak. Jön egy szórakoztató alkalmazás, próbáld ki!

A micro:bit megjelenik a számítógépen, mint egy meghajtó, neve: "MICROBIT". Ez azonban nem egy normál USB lemez!
Az egyik fantasztikus szerkesztőnk segítségével írd be az első mikro-bit kódodat! Húzz és dobj néhány blokkot, és próbáld meg a programot a Szimulátoron a Javascript Blokkszerkesztőben, amint ez az alábbi képen látható!

Kattints a szerkesztőben lévő "Letöltés" gombra. Ez letölt egy "hex" fájlt, amely egy kompakt formátumú program, amelyet a micro:bit képes olvasni. Miután a hex fájlt letöltötted, másold át a micro:bit-re! Ez olyan, mint egy fájl USB-meghajtóra történő másolása. (Windows rendszerben jobb egérgombbal kattintva válasszad a "Küldés → MICROBIT" elemet.)


A mikro:bit működése szünetel, és a sárga LED villog a hátulján, amíg a programkód átmegy. Miután befejeződött, a kód automatikusan futni fog!

??? micro: bites sárga LED villog és új kód indítás A MICROBIT meghajtó automatikusan kiadja és visszatér minden egyes programozáskor, de a hex file el fog tűnni.
A mikro:bit csak hex fájlokat fogadhat, és másikat nem tárol!
Milyen jó dolgokat fogsz létrehozni? A mikro:bit válaszolhat a gombokra, a fényre, a mozgásra és a hőmérsékletre. Még a vezeték nélküli üzeneteket is küldhet más mikro:bit-ekre a "Rádió" funkció használatával.
Nézd meg a hardver oldalát, hogy ötleteket nyerj!
Ez az oldal megmutatja, hogyan kell használni a micro:bit-et, de a JavaScript Blokkokkal is használhatod a Python-t és a szövegalapú JavaScript-et a mikro:bit programozásához.
A kódhoz lapozz a különböző nyelvek megtekintéséhez, vagy nézzd meg az ötleteket tartalmazó oldalt néhány olyan dologgal kapcsolatban, amelyeket szeretnél kipróbálni.

Programozás
BBC micro:bit blokkszerű programozása
Tegyünk egy gyors túrát és nézzük meg, mi áll rendelkezésünkre!
- Projektek (Projects) - A számítógéphez csatlakoztatott felhőalapú tárolórendszer nem szükséges fiókbeállítással.
- Megosztás (Share) - Lehetővé teszi, hogy a barátaival különböző módon osztja meg a projekt kódját!
- Blokkok/JavaScript (Blocks/JavaScript) - Válasszon saját kalandját blokkokban (alapértelmezett) vagy JavaScriptben.
- Programterület (Program Space) - Ez az a hely, ahol a varázslat történik, és ahol elkészíti a programot ... ahol "kódot csinálsz".
- Nagyítás/Visszavonás (Zoom/Undo-Redo) - Néha meg kell szüntetnie a dolgokat, vagy kicsinyíteni és körülnézni; ezek a gombok.
- Név és mentés (Name & Save) - Nevezze el a programot, és mentse el (töltse le) a számítógépre.
- Letöltés (Download) - Hasonló a Mentéshez, töltse le a programot .hex fájlként, és húzza be a mikrobe: bitbe.
- Blokk könyvtár (Block Library) - Az összes lehetőség a program építőelemek, amelyek színkóddal a funkció.
- Szimulátor elrejtése/megjelenítése (Simulator Hide/Show) - Ha el szeretné rejteni / megjeleníteni a szimulátort,
- Szimulátor (Simulator) - Nincs szükség hardverre! A MakeCode valós idejű szimulátorral rendelkezik! Ahogy megváltoztatod a programodat, láthatod, mit fog csinálni ezen a virtuális mikroszkón: kicsit!

Gyakorló feladatok
A. LED-ek kezelése

B. Gombok, csatlakozólábak (button, pin) kezelése

Mintafeladatok
A. sorozat


Írd ki a "HATOS LOTTO" szöveget (szelvény)! (Ékezetes betűink nem jelennek meg!)
Játszd le az alábbiakat 6-szor!
- jelezz egy felső C hanggal!
- írj ki egy véletlenszámot 1-45 közt!
- tegyél elegendően hosszú várakozásokat a megfelelő helyekre!
Készítsd el a programot ötös lottóra is (szelvény)! (Milyen sorsolási hiba van a programokban?)

B. sorozat


Állíts be egy "a" és egy "b" változót 0-ra! Hozd létre a "sum" változót is (ezek összegét tárolja majd)!
Az "A" gomb illetve "B" gomb lenyomására a következőket programozd:
- növelje 1-gyel az "a" illetve a "b" változót
- legyen ez látható
Az "A+B" gomb lenyomására pedig a következőket:
- a "sum" legyen "a" és "b" összege
- legyen ez látható is


Induláskor dobjon a gép egy véletlenszámot (0 ≤ gsz ≤ 9)! (Amíg a progit teszteljük, tegyük ezt láthatóvá!)
A játékos számát (tippjét) állítsuk 5-re! (jsz = 5)
Az "A" gomb lenyomására a "jsz" nőjön 1-gyel, de ha meghaladná a 9-et, állítsuk 9-re!
A "B" gomb lenyomására a "jsz" csökkenjen 1-gyel, de ha 0 alá menne, állítsuk 0-ra!
Az "A+B" gomb lenyomására pedig:
- ha jsz < gsz, írja ki, hogy "KICSI"
- ha jsz > gsz, írja ki, hogy "NAGY"
- ha jsz = gsz, írja ki, hogy "ELTALALTAD", és játsszon le egy dallamot!

C. sorozat


Hozd létre három változót: "a", "b", "sum" (a+b összeget tárolja majd)!
Az "A" gomb illetve "B" gomb lenyomására a következőket programozd:
- legyen az "a" illetve a "b" -20 és +20 közti véletlenszám
- legyen ez látható
Az "A+B" gomb lenyomására pedig a következőket:
- a "sum" legyen "a" és "b" összege
- legyen ez is látható


Állítsd be a kétjegyű számot (kj) "50"-re, a szorzót (sz) pedig "+1"-re!
Az "A" lenyomásával "kj"-t növeld/csökkentsd "10*sz"-szel, majd írd ki!
A "B" lenyomásával "kj"-t növeld/csökkentsd "1*sz"-szel, majd írd ki!
A "pin0"-ra kattintva változzon a szorzó "-1"-szeresére, és írd ki!
Az "A+B" gomb lenyomására írd ki, hogy "PRIM" vagy "NEM PRIM"!

Linkek
Oktatás
Bemutatók (magyarul)
- micro:bit a micro számítógép bemutatója
- micro:bit a micro számítógép, robot
- Egymillió hacker országa jön el (origo.hu cikk)
- BBC micro:bit – indul a lapka (k.o.m.p.o.s.z.t)
- Feltalálók csomagja (videó-angol)
Dokumentáció
- https://makecode.microbit.org/examples/
- https://makecode.microbit.org/projects/
- https://makecode.microbit.org/reference/
- https://www.microbit.co.uk/device/usb
- https://www.youtube.com/watch?v=ZIW_6rxYNBg
- http://microbit.org/hu/code/
- http://tanarblog.hu/cikk/microbit-eloadas
- https://www.youtube.com/watch?v=f9EHG8dnSnM&t=2689s
- https://thenextweb.com/gadgets/2016/03/22/hands-on-with-the-bbcs-microbit/
Kódolás
- https://www.microbit.co.uk/create-code - mind
- https://makecode.microbit.org/ - var1
- https://www.microbit.co.uk/app/ - var2
- http://microbit-micropython-hu.readthedocs.io/hu/latest/tutorials/introduction.html
Járgány
- https://www.kitronik.co.uk/blog/introducing-motor-driver-board-v2/
- https://www.youtube.com/watch?v=e0dh-eH8J3I
Vásárlás
- https://malnapc.hu/yis/bbc-microbit
- https://shop.pimoroni.com/collections/micro-bit-uk
- BBC Micro:bit motorvezérlő
- Feltaláló készlet a BBC micro: bithez
- Bit:Bot Robot levehető UH szenzorral