Ausprobiert: Winzling BBC Micro Bit

Seite 3: "Hello World" – Welche Sprache darf’s denn sein?

Inhaltsverzeichnis

Vier verschiedene Programmieroberflächen stehen direkt auf der Webseite des Micro-Bit-Projekts zur Wahl, eine weitere findet man auf der Webseite von ARM mBed. Zusammen ergibt das fünf Online-Editoren: Microsoft Blocks, Microsoft Touch Develop, Code Kingdoms JavaScript, MicroPython und ein vielseitiger C/C++-Editor. Eine gut verwendbare Offline-Alternative gibt es allerdings nicht.

Mal zum Vergleich ein Blick auf die Mitbewerber: Die Arduino-Software ist für Einsteiger gut zu bedienen. Bei größeren Projekten, die sich über mehrere Dateien erstrecken, wäre allerdings eine größere integrierte Entwicklungsumgebung (IDE) praktischer. Für den Raspberry Pi hingegen gibt es zu viele Möglichkeiten der Programmierung unterschiedlichster Sprachen, um hier im Detail darauf einzugehen. Der Micro Bit erweist sich da als Mittelding: Die Auswahl ist zwar beschränkt, aber immerhin gibt es Alternativen zur Wahl.

BBC Micro Bit: Programmierumgebungen zur Wahl (8 Bilder)

Auswahl der Programmieroberflächen

(Bild: Nicole Jesse)

Alle vier Editoren lassen sich auch ohne physisch vorhandenen Micro Bit verwenden: Sie bieten einen Emulator, der ein virtuelles Exemplar zur Verfügung stellt. Um ein online geschriebenes oder zusammengeklicktes Programm auf dem Micro Bit selbst laufen zu lassen, muss man sich die entsprechende Hex-Datei herunterladen. Man erzeugt sie per Klick auf den Button mit der Beschriftung "Compile" geklickt wird. Die Namen der Programme, die etwa "spektakulär", "herrlich", "speziell" oder "seltsam" lauten, werden dabei automatisch erzeugt. Man kann sie aber später ändern.

Code Kingdoms JavaScript

Hier fügt man Elemente per Drag & Drop ein, die Blöcke sind mit JavaScript-Code beschriftet. Jedoch kann man zwischen vier Varianten der Darstellung wechseln, von Blöcken mit Symbolen bis hin zu purem Quellcode. Das ist für die eigentliche Zielgruppe des BBC Micro Bit passend: Programmiereinsteiger, die langsam an echten Quellcode herangeführt werden sollen.

Microsoft Blocks

Mit dieser Oberfläche wird ausschließlich grafisch programmiert. Die speziellen Micro-Bit-Blöcke sind dabei sehr interessant: So gibt es etwa verschiedenen Blöcke, die auf Benachrichtigungen vom Smartphone lauschen und damit auf eingehende Anrufe oder das Ausschalten des Displays reagieren können. Wie lange würde es wohl dauern, mit Arduino oder Raspberry Pi eine Anwendung zu programmieren, die ähnliches kann? Natürlich kann man auch umgekehrt die Smartphone-Kamera steuern und Videos aufnehmen. Die erzeugten Blöcke lassen sich dann zu Microsoft Touch Develop konvertieren.

Microsoft Touch Develop

Der Name von Touch Develop sagt alles: Diese Oberfläche ist auf die Bedienung per Tablet oder Smartphone ausgelegt. Die verwendete Programmiersprache besteht allerdings nicht aus grafischen Blöcken, sondern aus normalem Text. Übrigens: Installiert man Touch Develop lokal, kann man damit auch einen Arduino programmieren.

MicroPython

Hier wird man von einem klassischen Texteditor mit schwarzem Hintergrund empfangen. Es gibt zwar eine Liste mit möglichen Elementen, aber für weitere Unterstützung muss man die entsprechende Hilfeseite aufsuchen und benutzen. Dort findet man dann umfangreiche Dokumentation zur MicroPython API.

Der Editor vom ARMbed entspricht einer vollständigen IDE für eingebettete Systeme. Hier lassen sich neben dem Micro Bit auch noch weitere Entwicklungsboards auswählen. Speziell für den Micro Bit ist die Dokumentation nicht besonders einstiegsfreundlich, mehr als ein offizielles Beispielprogramm ist noch nicht verfügbar.

Nicht alle Schnittstellen werden von allen vorgestellten Programmiersprachen unterstützt. Alle bis auf Microsoft Touch bieten Zugriff auf die serielle Schnittstelle. MicroPython kann kein Bluetooth, dafür steht hier I²C zur Verfügung. Solche Einschränkungen spielt für die eigentliche Zielgruppe des BBC Micro Bit erst einmal keine Rolle. Bei weiterführenden Projekten können sich allerdings Einschränkungen bemerkbar machen.