BBC micro:bit to niewielka, programowalna płytka elektroniczna stworzona do nauki programowania i podstaw elektroniki. Sprawdzi się zarówno w rękach dzieci i młodzieży, jak i dorosłych rozpoczynających przygodę z systemami wbudowanymi.
Dzięki środowiskom takim jak MakeCode, MicroPython i Scratch oraz bogatemu zestawowi czujników i interfejsów micro:bit pozwala w kilka minut przejść od pierwszego programu do działającego projektu elektronicznego.
Czym jest BBC micro:bit?
BBC micro:bit to wielokrotnie nagradzane urządzenie edukacyjne, stworzone z inicjatywy BBC jako narzędzie do nauki programowania i elektroniki w szkołach.
Płytka ma wymiary około 52 × 43 mm, dlatego bez problemu mieści się w kieszeni. Jest wystarczająco prosta dla dzieci w wieku szkolnym, a zarazem na tyle rozbudowana, aby umożliwiać realizację praktycznych projektów elektronicznych.
Najważniejsze elementy i funkcje sprzętowe wersji 2.x to:
- Mikrokontroler Nordic nRF52833 z rdzeniem ARM Cortex-M4F – wykonuje kod i zarządza działaniem urządzenia;
- Wyświetlacz LED 5 × 5 złożony z 25 diod – umożliwia prezentowanie ikon, tekstu i animacji;
- Przyciski A i B – pozwalają sterować programem i uruchamiać wybrane działania;
- Logo dotykowe – pełni funkcję dodatkowego przycisku pojemnościowego;
- Akcelerometr – wykrywa ruch, wstrząsy i położenie płytki;
- Magnetometr – rozpoznaje kierunek pola magnetycznego i pozwala zbudować cyfrowy kompas;
- Pomiar temperatury i natężenia światła – umożliwia tworzenie prostych stacji pogodowych, termometrów i automatycznych lampek;
- Moduł radiowy i Bluetooth – zapewnia bezprzewodową komunikację z innymi płytkami micro:bit oraz urządzeniami mobilnymi;
- Głośnik i mikrofon – pozwalają odtwarzać dźwięki oraz reagować na odgłosy otoczenia;
- Złącze USB – służy do programowania i zasilania płytki z komputera;
- Złącze krawędziowe z pinami – zapewnia dostęp do podstawowych pinów 0, 1, 2, 3V i GND oraz interfejsów używanych w bardziej zaawansowanych projektach.
Micro:bit został zaprojektowany tak, aby maksymalnie obniżyć próg wejścia w świat elektroniki. Wystarczy podłączyć płytkę przez USB, przygotować program w przeglądarce i wgrać go bez konfigurowania skomplikowanego środowiska.
Możliwości micro:bita w elektronice i edukacji
Dzięki zintegrowanym czujnikom, wejściom i wyjściom oraz komunikacji radiowej micro:bit pozwala realizować różnorodne projekty:
- Nauka podstaw programowania – poznawanie instrukcji, pętli, warunków, zmiennych i funkcji w formie blokowej lub tekstowej;
- Podstawy elektroniki – obsługa wejść i wyjść cyfrowych, pomiar sygnałów analogowych oraz sterowanie diodami, brzęczykami i silnikami;
- Systemy wbudowane – przetwarzanie danych z czujników, reagowanie w czasie rzeczywistym i tworzenie prostych algorytmów sterowania;
- Komunikacja bezprzewodowa – budowanie sieci urządzeń, komunikatorów radiowych, pilotów i alarmów;
- Projekty IoT oraz integracja z komputerem i Scratchem – używanie micro:bita jako fizycznego kontrolera gry, cyfrowej tablicy wyników lub sterownika;
- Sztuczna inteligencja i uczenie maszynowe – korzystanie z dodatkowych narzędzi, takich jak platforma CreateAI, łącząca rozpoznawanie ruchu, uczenie maszynowe i micro:bit.
W edukacji micro:bit może być wykorzystywany między innymi do:
- tworzenia prostych liczników, takich jak krokomierz lub licznik gatunków w parku,
- przeprowadzania doświadczeń z fizyki i nauk przyrodniczych, obejmujących pomiar światła, temperatury lub przewodnictwa elektrycznego,
- prowadzenia interdyscyplinarnych zajęć łączących matematykę, technikę, informatykę i nauki przyrodnicze.
Przegląd środowisk programistycznych
Microsoft MakeCode – idealne na początek
MakeCode to jedno z najpopularniejszych środowisk do programowania BBC micro:bit, rozwijane przez firmę Microsoft.
Najważniejsze możliwości środowiska to:
- Edytor blokowy – umożliwia budowanie programu z kolorowych bloków, podobnie jak w Scratchu;
- Tryb JavaScript i Python – pozwala przełączać się z bloków na kod tekstowy i stopniowo poznawać składnię języków programowania;
- Praca w przeglądarce – ogranicza potrzebę instalowania dodatkowego oprogramowania;
- Symulator micro:bita – prezentuje działanie programu nawet bez podłączonej płytki.
MakeCode jest szczególnie polecany osobom początkującym. Oferuje intuicyjny interfejs, natychmiastowe efekty widoczne w symulatorze lub na wyświetlaczu LED oraz bogatą bibliotekę przykładów.
MicroPython – programowanie w Pythonie
Micro:bit obsługuje MicroPython, czyli wersję języka Python dostosowaną do możliwości mikrokontrolerów.
Do pisania kodu można wykorzystać prosty edytor Mu, przygotowany między innymi z myślą o micro:bicie, lub internetowe edytory Pythona dostępne w ekosystemie platformy.
MicroPython umożliwia realizację bardziej zaawansowanych projektów, a jednocześnie zachowuje czytelną składnię. Dzięki temu jest naturalnym kolejnym krokiem po programowaniu blokowym.
Scratch i inne integracje
Micro:bit można połączyć ze środowiskiem Scratch i wykorzystać jako fizyczny kontroler gry, cyfrowy pędzel lub tablicę wyników.
Taka integracja pozwala przełożyć abstrakcyjne obiekty Scratcha na rzeczywiste działania urządzenia. Ruch ręką może sterować postacią, a naciśnięcie przycisku wywoływać określone zdarzenie w grze.
C/C++ i bardziej zaawansowane metody
Bardziej doświadczeni użytkownicy mogą programować micro:bita w C/C++, korzystając z następujących narzędzi:
- kompilatorów skrośnych przeznaczonych dla procesorów ARM,
- bibliotek i zestawów narzędzi do budowania własnych projektów,
- oficjalnych oraz społecznościowych pakietów SDK.
Programowanie w C/C++ przydaje się wtedy, gdy micro:bit ma być częścią większego systemu wbudowanego lub potrzebna jest precyzyjna kontrola nad sprzętem.
Pierwsze kroki z BBC micro:bit
Podłączenie i przygotowanie płytki
Aby rozpocząć pracę z urządzeniem, wykonaj następujące kroki:
- Podłącz micro:bit do komputera przez USB – płytka pojawi się w systemie jako pamięć masowa;
- Otwórz edytor MakeCode – uruchom środowisko w przeglądarce internetowej;
- Utwórz nowy projekt – rozpocznij budowanie programu z dostępnych bloków;
- Pobierz gotowy program – zapisz plik
.hexi skopiuj go na dysk micro:bita.
Po zakończeniu przesyłania płytka uruchomi się ponownie i automatycznie zacznie wykonywać nowy program.
Pierwszy program – „Witaj, świecie” na matrycy LED
Klasyczny pierwszy program to „Witaj, świecie”, czyli prosty komunikat wyświetlany na ekranie. W micro:bicie funkcję ekranu pełni matryca LED 5 × 5, na której można:
- wyświetlać ikony, na przykład uśmiechniętą buźkę,
- przewijać napisy, takie jak imię lub krótka wiadomość,
- zapalać pojedyncze diody i tworzyć własne wzory.
Najprostszy program można przygotować za pomocą dwóch bloków: on start, który określa działania wykonywane po uruchomieniu urządzenia, oraz show icon lub show string, służących do prezentowania ikony albo tekstu.
Aby wyświetlić uśmiechniętą twarz po włączeniu płytki, otwórz sekcję on start, umieść w niej blok show icon i wybierz odpowiedni symbol. Po wgraniu programu micro:bit będzie prezentował ikonę przy każdym uruchomieniu.
Podstawy programowania w MakeCode
Blokowy edytor MakeCode przedstawia najważniejsze koncepcje programistyczne w przystępny, wizualny sposób. Użytkownik może skupić się na logice programu, zamiast od razu uczyć się składni języka tekstowego.
Zdarzenia
Micro:bit może reagować na różne działania użytkownika i zmiany wykrywane przez czujniki:
on start– uruchamia kod jeden raz po włączeniu urządzenia;on button A pressedion button B pressed– wykonują kod po naciśnięciu odpowiedniego przycisku;on shakeion gesture– reagują na ruch wykryty przez akcelerometr;on logo pressed– reaguje na dotknięcie logo w wersji V2.
Każde zdarzenie zawiera blok kodu wykonywany po wystąpieniu określonej sytuacji.
Pętle, warunki i zmienne
MakeCode udostępnia najważniejsze mechanizmy używane również w tekstowych językach programowania:
- Pętle – na przykład
forever, która wykonuje kod bez przerwy i może służyć do ciągłego sprawdzania wskazań czujników; - Instrukcje warunkowe – konstrukcje
ifielsepozwalają reagować na stan czujnika lub wartość zmiennej; - Zmienne – przechowują dane, takie jak liczba kroków, temperatura lub wynik w grze.
Te same koncepcje występują w Pythonie, C i wielu innych językach, dlatego micro:bit stanowi dobry pomost do bardziej zaawansowanego programowania.
Grupy bloków
Dla łatwiejszej pracy MakeCode dzieli dostępne bloki na kategorie:
- Basic – zawiera podstawowe operacje, takie jak wyświetlanie, pauza i pętla
forever; - Input – odpowiada za odczytywanie przycisków, akcelerometru i czujników;
- LED – umożliwia sterowanie diodami oraz ich jasnością;
- Radio – służy do wysyłania i odbierania wiadomości między micro:bitami;
- Music – pozwala generować dźwięki za pomocą wbudowanego głośnika lub zewnętrznego brzęczyka;
- Logic, Loops i Variables – zapewnia obsługę logiki, pętli i zmiennych.
Dzięki takiemu podziałowi początkujący użytkownik stopniowo poznaje wejścia, wyjścia, logikę oraz przepływ sterowania w programie.
Wejścia i wyjścia micro:bita – elektronika w praktyce
Micro:bit ma piny wyprowadzone na dolnej krawędzi płytki. Do największych pól można łatwo podłączyć przewody zakończone krokodylkami, dzięki czemu wiele prostych obwodów nie wymaga lutowania.
Podstawowe piny
Najczęściej wykorzystywane piny to:
- Piny 0, 1 i 2 – mogą działać jako wejścia lub wyjścia cyfrowe, a także obsługiwać sygnały analogowe i funkcje dotykowe;
- 3V – zapewnia zasilanie 3,3 V dla prostych obwodów;
- GND – stanowi wspólną masę układu.
Za pomocą złącza krawędziowego można podłączyć między innymi:
- diodę LED z odpowiednio dobranym rezystorem,
- brzęczyk do sygnalizacji dźwiękowej,
- mały silnik sterowany przez tranzystor lub dodatkowy sterownik,
- proste czujniki, takie jak przycisk, czujnik dotyku lub fotorezystor.
Radio i Bluetooth
Wbudowany moduł radiowy umożliwia bezprzewodową komunikację między micro:bitami. Pozwala tworzyć projekty obejmujące:
- komunikatory przesyłające krótkie wiadomości między urządzeniami,
- bezprzewodowe piloty, na przykład do sterowania robotem,
- rozproszone alarmy, w których czujnik znajduje się w jednym miejscu, a sygnalizator w drugim.
Aby użyć radia, należy skonfigurować grupę komunikacyjną. Służy do tego blok radio set group, który można umieścić wewnątrz on start i ustawić na wartość od 1 do 255. Urządzenia komunikujące się ze sobą muszą korzystać z tej samej grupy.
Bluetooth pozwala łączyć micro:bit ze smartfonami i tabletami, dzięki czemu można sterować aplikacjami lub odczytywać dane z czujników.
Przykładowe projekty dla początkujących
Poniższe projekty można zrealizować niemal od razu po wyjęciu micro:bita z pudełka. Zostały dobrane tak, aby stopniowo wprowadzać kolejne zagadnienia programistyczne i elektroniczne.
Elektroniczna wizytówka – przewijany napis
Cel: wyświetlenie na matrycy LED przewijanego tekstu, na przykład imienia lub pseudonimu.
Projekt można przygotować w trzech prostych krokach:
- utwórz nowy projekt w MakeCode,
- wybierz blok
on start, - dodaj
show stringi wpisz tekst do wyświetlenia.
Projekt można rozszerzyć, przypisując inne napisy do przycisków A i B.
Kostka do gry – generowanie losowej liczby
Cel: symulacja rzutu kostką i wylosowanie liczby od 1 do 6.
Aby przygotować elektroniczną kostkę:
- dodaj zdarzenie
on shake, - utwórz zmienną i przypisz do niej losową wartość od 1 do 6,
- wyświetl wynik za pomocą bloku
show numberlub odpowiedniego układu diod LED.
Projekt wprowadza pojęcia losowości, zmiennych i obsługi akcelerometru.
Krokomierz – wykorzystanie akcelerometru
Cel: liczenie kroków użytkownika na podstawie ruchu wykrywanego przez akcelerometr.
Podstawowy program krokomierza można zbudować w następujący sposób:
- utwórz zmienną
stepsi ustaw jej początkową wartość na 0, - w zdarzeniu
on shakezwiększaj zmiennąstepso 1, - po naciśnięciu przycisku A wyświetl aktualną wartość zmiennej.
Projekt pomaga zrozumieć obsługę wejść, wyjść, zdarzeń i zmiennych. Prosty krokomierz oparty na zdarzeniu wstrząśnięcia nie zapewnia jednak dokładności profesjonalnych urządzeń pomiarowych.
Nocna lampka – czujnik światła
Cel: automatyczne włączanie matrycy LED przy słabym oświetleniu.
Program nocnej lampki powinien wykonywać następujące działania:
- w pętli
foreverodczytuj poziom natężenia światła, - jeżeli wartość spadnie poniżej ustalonego progu, włącz diody LED,
- w przeciwnym razie wyłącz wyświetlacz.
To prosty przykład wykorzystania odczytu z czujnika oraz instrukcji warunkowej if/else.
Termometr – pomiar temperatury
Cel: wyświetlanie przybliżonej temperatury w stopniach Celsjusza.
Aby przygotować termometr:
- dodaj zdarzenie uruchamiane po naciśnięciu przycisku A,
- odczytaj temperaturę za pomocą funkcji
temperature, - pokaż wynik na matrycy przy użyciu bloku
show number.
Projekt można uzupełnić o prostą logikę. Jeśli temperatura spadnie poniżej ustalonego progu, urządzenie może wyświetlić ikonę oznaczającą zimno. Po przekroczeniu wyższej wartości może natomiast pokazać symbol informujący o wysokiej temperaturze.
Wskazanie pochodzi z czujnika zintegrowanego z elektroniką płytki, dlatego może różnić się od rzeczywistej temperatury otoczenia.
Alarm antywłamaniowy z radiem
Cel: zbudowanie układu, w którym jeden micro:bit wykrywa ruch, a drugi uruchamia alarm.
Czujnik ruchu
Pierwszy micro:bit pełni funkcję czujnika. W pętli forever sprawdza wskazania akcelerometru lub stan czujnika dotyku, a po wykryciu ruchu wysyła komunikat radiowy, na przykład tekst „ALARM” albo wartość 1.
Sygnalizator
Drugi micro:bit działa jako sygnalizator. Należy ustawić w nim tę samą grupę radiową, a następnie w zdarzeniu on radio received uruchomić dźwięk lub efekt świetlny.
Projekt uczy konfiguracji radia za pomocą radio set group, reagowania na zdarzenia i współpracy kilku urządzeń.
Bezprzewodowy kontroler do gier w Scratchu
Cel: sterowanie postacią w grze Scratch za pomocą micro:bita.
Aby skonfigurować kontroler:
- podłącz micro:bit do komputera i skonfiguruj rozszerzenie Scratch przeznaczone dla tej płytki,
- przypisz działania do zdarzeń, takich jak naciśnięcie przycisku, obrót lub wstrząśnięcie,
- dodaj obsługę wybranych sygnałów i zachowań urządzenia.
Micro:bit staje się fizycznym kontrolerem, a ruch ręką lub naciskanie przycisków wywołuje określone akcje w grze.
Licznik gatunków w terenie
Micro:bit Educational Foundation proponuje projekt „Licznik gatunków”, który można zrealizować w parku, ogrodzie lub na terenie szkoły.
Cel: policzenie przedstawicieli dwóch gatunków roślin lub zwierząt.
Program licznika można przygotować w następujący sposób:
- utwórz dwie zmienne przechowujące wyniki dla wybranych gatunków,
- przypisz przycisk A do pierwszego gatunku, a przycisk B do drugiego,
- wyświetl wyniki po dotknięciu logo lub jednoczesnym naciśnięciu przycisków A i B.
Projekt łączy programowanie, nauki przyrodnicze i podstawy statystyki, w tym liczenie oraz porównywanie wartości.
Ścieżka rozwoju – od bloków do systemów wbudowanych
Micro:bit został zaprojektowany jako narzędzie stopniowo wprowadzające użytkownika w świat elektroniki i programowania.
Etap 1 – edytory blokowe
Na początku warto korzystać z edytorów graficznych, takich jak MakeCode i Scratch. Pozwalają one skupić się na logice i najważniejszych koncepcjach programistycznych bez konieczności zapamiętywania składni języka.
Etap 2 – języki tekstowe
Kolejnym krokiem może być przejście do Pythona lub MicroPythona, które wyróżniają się czytelną składnią i są szeroko stosowane w edukacji. Inną możliwością jest JavaScript, stanowiący naturalne rozwinięcie programowania blokowego w MakeCode.
Użytkownik poznaje strukturę programu, funkcje, moduły i obsługę bibliotek, a jednocześnie nadal pracuje z fizycznym urządzeniem reagującym na kod.
Etap 3 – C/C++ i większe systemy
Bardziej zaawansowani użytkownicy mogą przejść do programowania w C/C++ i poznać:
- kompilatory skrośne przeznaczone dla architektury ARM,
- biblioteki służące do obsługi podzespołów micro:bita,
- integrację płytki z robotami, modułami rozszerzeń i systemami IoT.
Takie zastosowania zbliżają micro:bit do klasycznych systemów wbudowanych wykorzystywanych w profesjonalnych projektach elektronicznych.
Micro:bit w praktyce – zalety dla początkujących
Najważniejsze zalety BBC micro:bit to:
- Niski próg wejścia – programowanie blokowe, wbudowany symulator i brak konieczności instalowania złożonych środowisk programistycznych;
- Bogaty zestaw czujników i interfejsów – akcelerometr, magnetometr, radio, wyświetlacz LED, mikrofon, głośnik oraz wejścia i wyjścia na jednej płytce;
- Prosta konstrukcja – duże pola złącza krawędziowego pozwalają używać przewodów z krokodylkami bez lutowania;
- Rozbudowany ekosystem edukacyjny – obejmuje gotowe scenariusze zajęć oraz instrukcje projektów, takich jak krokomierz, lampka i gry;
- Możliwość stopniowego rozwoju – pozwala przejść od prostych animacji LED do sieci czujników, systemów IoT i projektów wykorzystujących uczenie maszynowe.


