2018. január 6., szombat

BBC micro:bit


Nemrégiben megkértek rá, hogy tartsak egy előadást a BBC micro:bit eszközről tanároknak.
Részemről a szerkezetet nem ismerem, így kicsit bele kell ásnom magam. Rendeltem egy pár dolgot, hogy neki tudjak kezdeni.

Ezeket szedtem össze:

micro:bit:
https://hqelektronika.hu/termekek/kit-microbit-microbit-fejleszto-keszlet

breakout panel (sajnos a micro:bit élcsatlakozója nem a kedvencem):
http://hu.farnell.com/webapp/wcs/stores/servlet/ProductDisplay?catalogId=10001&langId=36&urlRequestType=Base&partNumber=2563844&storeId=10162

motor vezérlő:
http://hu.farnell.com/webapp/wcs/stores/servlet/ProductDisplay?catalogId=10001&langId=36&urlRequestType=Base&partNumber=2563846&storeId=10162

Ezekből próbálok valamit összehozni.

Első lépések:
Körülnézve, kiderült, hogy számos fejlesztőkörnyezet létezik az eszközhöz. Nagyjából ezeket a lehetőségeket találtam:

Microsoft Makecode - Ez egy scratch/javascript online környezet. Kifejezetten gyerekek részére
MicroPython - A Python nyelv mikrovezérlőkre optimalizált verziója, itt megfejelve egy kifejezetten a micro:bit-hez készült online felülettel.
Arduino - Az Adafruit készített egy leírást, hogyan integrálható a micro:bit az Arduino ökoszisztémába
MBed - Az ARM (a micro:bit-en lévő processzor magjának tervezője) saját online fejlesztőkörnyezete

Ezeken túl alapvetően bármilyen mikorkontroller fejlesztőkörnyezet használható ami támogatja a Nordic Semiconductor nRF51822 processzorát (nRFgo, Keil uVision, IAR, stb.).

Egyenlőre ugyan a Makecode-ban fogok valamit összerakni, de a profeszionális eszközök (amik, ha időm engedik elő fognak kerülni) igénylik, pl. a hibakeresés lehetőségét, ezért a micro:bit saját DAPLink firmware-ét lecseréltem egy Segger J-Link firmware-re, ezek alapján:
https://www.segger.com/products/debug-probes/j-link/models/other-j-links/bbc-microbit-j-link-upgrade/
Ez a Makecode-ból vagy MicroPython-ból való programozhatóságot nem befolyásolja.
folyt köv...

2 megjegyzés:

  1. Sikerült odáig eljutnod, hogy oda-vissza tudj debuggolni? Én erre nem helyeztem hangsúlyt igazán a tesztek során, de komolyabb fejlesztéshez elengedhetetlen.
    Ami kicsit kiábrándított, hogy semmilyen modulárisnak tekinthető panel nincs hozzá, pedig nagyon adná magát: élcsatlakozó (köszi a szakkifejezésért) bedug, és máris van mondjuk egy 4 karakteres 7 szegmenses kijelződ órához (esetleg külső RTC panellel), vagy egy RGB ledszalag vezérlőd (a BT-vel kívülről irányíthatóan), vagy motorvezérlőd önegyensúlyozó robothoz (ha már a gyorsulásmérő rajta van).

    VálaszTörlés
    Válaszok
    1. A debuggig még nem jutottam el, az majd jön, ha fel nem adom addig. Elvileg a J-Link-el meg az mcuoneclipse féle Eclipse toolchain-el mennie kellene. Ezt meg fogom próbálni összerakni (ha más project, el nem térít).
      Nem mondom, hogy sok, de itt vannak hozzá kész modul kiegészítők: https://www.kitronik.co.uk/microbit/bbc-micro-bit-accessories.html

      Törlés