BBC Microbit Grundlagen: Unterschied zwischen den Versionen

Aus eLAB Wiki
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „Der micro:bit ist ein Mikrocontroller Projekt für Schulen, entwickelt unter der Federführung der BBC. Nachdem 1 Million davon kostenlos an britische Schüler…“)
 
Zeile 77: Zeile 77:
 
* MicroPython, ein Python Interpreter
 
* MicroPython, ein Python Interpreter
 
* mbed C++
 
* mbed C++
 
 
Veröffentlicht am 24. Oktober 2016 von Peter
 
Der BBC micro:bit – Teil 1: erste Eindrücke
 
 
Der micro:bit ist ein Mikrocontroller Projekt für Schulen, entwickelt unter der Federführung der BBC. Nachdem 1 Million davon kostenlos an britische Schüler verteilt wurden, gibt es den Mikrocontroller seit einigen Wochen auch für normale Endanwender zu kaufen. Zeit für eine Einführung, was in dem kleinen Kerl steckt.
 
Bezugsquellen
 
 
In Deutschland ist der micro:bit derzeit noch nicht zu bekommen, aber britiche Online Shops liefern auch nach Deutschland. Dank des niedrigen £ und (noch) zollfrei sind die Sachen innerhalb einer Woche in Deutschland. Zu den Shops zählen:
 
 
    Pimoroni 13 £ für den micro:bit zzgl. 4 £ Versandkosten
 
    Kitronik 15 £ für den micro:bit
 
 
Dem micro:bit Board, das es in mehreren Farben gibt, liegt noch ein kurzes Micro-USB Kabel und ein Batteriefach mit 2 AAA Zellen bei. Somit kann man sofort loslegen.
 
Hardware
 
 
Auf dem Micro:Bit werkelt zwei ARM Cortex M0 CPUs, der Haupt Prozessor ist von Nordic Semiconductor, der nRF51822. Als USB Controller kommt ein NXP ARM Cortex M0 der Kinetis KL26 Serie zum Einsatz.
 
Im Gegensatz zu anderen Boards wie dem Arduino stecken auf dem Basisboard bereits eine Reihe an Sensoren und Aktoren.
 
Hardware Übersicht
 
 
    ARM Cortex M0 CPU, 16MHz, 16kB RAM, 256kB Flash, Nordic nRF51822
 
    3-Achsen Beschleunigungssensor NXP MMA8653
 
    elektonischer Kompass NXP MAG3110
 
    2 Taster
 
    5×5 LED Matrix (rot, dimmbar)
 
    Lichtsensor (über die LEDs der LED Matrix
 
    Temperatursensor
 
    Bluetooth BLE 4.0
 
    USB Controller (seriell, Massenspeicher) ARM Cortex M0+ CPU, 128kB Flash, NXP MKL26Z128VFM4 (M26H7V)
 
    SPI über den Erweiterungs Port
 
    I2C über den Erweiterungs Port
 
    6..17 IO Pins (je nach Anwendung) über den Erweiterungs Port, 6x Analog, 17x Digital, 3x Touch (ähnlich dem Makey Makey)
 
 
IMG_5892.JPG
 
 
IMG_5891.JPG
 
 
Der Erweiterungs Stecker ist leider nicht sehr bastelfreundlich ausgelegt. Über 4mm Bananenstecker bzw. Krokoklemmen sind nur 3 IO Pins erreichbar dazu 3V und GND. Das reicht für einfache Experimente. Wer mehr möchte sollte bei der Bestellung gleich das Edge Connector Breakout Board mit bestellen oder eines der vielen Experimentiert Kits . Ich habe mich für das Prototyping Kit entschieden.
 
Pin Belegung
 
 
Die Pin Belegung des Erweiterungs Port:
 
xdossmmf.jpg
 
 
Quelle: microbit.co.uk
 
 
Wie man sieht, sind nicht alle 17 IO Pins verfügbar. Einige sind schon durch die LED Matrix und Taster belegt. So bleiben letztendlich je nach Anwendung nur 6 bis 17 Ports zur freien Verwendung. Dazu kommen noch die beiden Pins des I2C Bus dazu. Das sollte für viele Anwendungen ausreichend sein. Ansonsten gibt es diverse Port Expander ICs für I2C und SPI.
 
Einträge anzeigen
 
Suchen:
 
Pin Funktion Sonderfunktion Besonderheiten
 
P0 analog, digital, touch für Krokoklemmen, 4mm Bananenstecker
 
P1 analog, digital, touch für Krokoklemmen, 4mm Bananenstecker
 
P2 analog, digital, touch für Krokoklemmen, 4mm Bananenstecker
 
P3 analog in LED Col. 1
 
P4 analog in LED Col. 2
 
P5 digital Button A
 
P6 digital LED Col. 9
 
P7 digital LED Col. 8
 
P8 digital
 
P9 digital LED Col. 7
 
P10 analog in LED Col. 3
 
P11 digital Button B
 
P12 digital
 
P13 digital, SCK SPI Takt
 
P14 digital, MISO SPI Data In
 
P15 digital, MOSI SPI Data Out
 
P16 digital
 
P19 SCL I2C Takt
 
P20 SDA I2C Daten
 
1 bis 19 von 19 Einträgen
 
ZurückWeiter
 
 
Weiter Informationen zur micro:bit Hardware findet man:
 
 
    Lancaster University Github
 
 
Software
 
 
Programmiert werden kann der micro:bit mit einer Reihe von Online IDEs, die einfach im Browser gestartet werden. Dazu muss nichts installiert werden. Einfach im Browser den gewünschten Editor auswählen und loslegen. Das Programm wird online übersetzt und das compilierte Binary kann dann heruntergeladen werden. Per Drag & Drop werden die Binarys dann mittels File Manager auf den micro:bit Laufwerk geladen, dass beim Anstecken des micro:bit über ein Micro USB Kabel sichtbar wird. Der mcro:bit kann auch über Bluetooth vom Smartphone/Tablet aus progammiert werden. Dazu wird die micro:bit App für Android bzw. Apple iOS benötigt. Nach kurzer Zeit startet der Prozessor dann mit dem neuen Programm.
 
 
Alle Editoren basieren auf der Laufzeitumgebung micro:bit DAL (Device Abstraction Layer) der Universität Lancaster. Die Laufzeitumgebung wiederum basiert auf der ARM mbed IoT Device Plattform und der Nordic nRF51 Plattform.
 
Online Editoren
 
 
Es gibt eine ganze Reihe von Online Editoren, die Browser basiert arbeiten. Vorteil: man benötigt keine Cross Compiler Umgebung, muss nicht installieren.
 
Zu den derzeit verfügbaren Online Editoren gehören:
 
 
    Code Kingdoms JavaScript, ein weiterer JavaScript Interpreter
 
    Microsoft PXT, ein JavaScript Editor
 
    Microsoft Block Editor, eine rein grafische Drag&Drop Programmierumgebung
 
    Microsoft Touch Develop
 
    MicroPython, ein Python Interpreter
 
    mbed C++
 
 
  Editor Programmier Sprache grafisch/textbasiert Bluetooth/Radio Support Servo/PWM Support online/offline IDE Simulator
 
  Code Kingdoms JavaScript j/j j/j n/j (Port 0,12) j/n j
 
  Microsoft PXT JavaScript j/j j/j j/j (Port 0,1,2,3,4,10) j/j j
 
  Microsoft Block Editor läßt sich nach Microsoft Touch Develop portieren j/n j/j j/j j/n j
 
  Microsoft Touch Develop Visual Basic n/j j/j j/j j/n j
 
  mbed C++ C/C++ n/j j/j j/j (Port 0,1,2,3,4,10) j/j n
 
  MicroPython Python n/j n/j j/j (Port 0,1,2,3,4,10) j/j n
 

Version vom 23. Oktober 2018, 19:57 Uhr

Der micro:bit ist ein Mikrocontroller Projekt für Schulen, entwickelt unter der Federführung der BBC. Nachdem 1 Million davon kostenlos an britische Schüler verteilt wurden, gibt es den Mikrocontroller seit einigen Wochen auch für normale Endanwender zu kaufen. Zeit für eine Einführung, was in dem kleinen Kerl steckt. Bezugsquellen

Hardware

Auf dem Micro:Bit werkelt zwei ARM Cortex M0 CPUs, der Haupt Prozessor ist von Nordic Semiconductor, der nRF51822. Als USB Controller kommt ein NXP ARM Cortex M0 der Kinetis KL26 Serie zum Einsatz. Im Gegensatz zu anderen Boards wie dem Arduino stecken auf dem Basisboard bereits eine Reihe an Sensoren und Aktoren. Hardware Übersicht

  • ARM Cortex M0 CPU, 16MHz, 16kB RAM, 256kB Flash, Nordic nRF51822
  • 3-Achsen Beschleunigungssensor NXP MMA8653
  • elektronischer Kompass NXP MAG3110
  • 2 Taster
  • 5×5 LED Matrix (rot, dimmbar)
  • Lichtsensor (über die LEDs der LED Matrix
  • Temperatursensor
  • Bluetooth BLE 4.0
  • USB Controller (seriell, Massenspeicher) ARM Cortex M0+ CPU, 128kB Flash, NXP MKL26Z128VFM4 (M26H7V)
  • SPI über den Erweiterungs Port
  • I2C über den Erweiterungs Port
  • 6..17 IO Pins (je nach Anwendung) über den Erweiterungs-Port, 6x Analog, 17x Digital, 3x Touch Inputs(ähnlich dem Makey Makey)

Datei:IMG 5892.JPG

Datei:IMG 5891.JPG

Der Erweiterungs Stecker ist leider nicht sehr bastelfreundlich ausgelegt. Über 4mm Bananenstecker bzw. Krokoklemmen sind nur 3 IO Pins erreichbar dazu 3V und GND. Das reicht für einfache Experimente. Wer mehr möchte sollte bei der Bestellung gleich das Edge Connector Breakout Board mit bestellen oder eines der vielen Experimentiert Kits . Ich habe mich für das Prototyping Kit entschieden. Pin Belegung

Die Pin Belegung des Erweiterungs-Port: Xdossmmf.jpg

Quelle: microbit.co.uk

Wie man sieht, sind nicht alle 17 IO Pins verfügbar. Einige sind schon durch die LED Matrix und Taster belegt. So bleiben letztendlich je nach Anwendung nur 6 bis 17 Ports zur freien Verwendung. Dazu kommen noch die beiden Pins des I2C Bus dazu. Das sollte für viele Anwendungen ausreichend sein. Ansonsten gibt es diverse Port Expander ICs für I2C und SPI.

Pin	Funktion	Sonderfunktion	Besonderheiten
P0	analog, digital, touch		für Krokoklemmen, 4mm Bananenstecker
P1	analog, digital, touch		für Krokoklemmen, 4mm Bananenstecker
P2	analog, digital, touch		für Krokoklemmen, 4mm Bananenstecker
P3	analog in	LED Col. 1	
P4	analog in	LED Col. 2	
P5	digital	Button A	
P6	digital	LED Col. 9	
P7	digital	LED Col. 8	
P8	digital		
P9	digital	LED Col. 7	
P10	analog in	LED Col. 3	
P11	digital	Button B	
P12	digital		
P13	digital, SCK	SPI Takt	
P14	digital, MISO	SPI Data In	
P15	digital, MOSI	SPI Data Out	
P16	digital		
P19	SCL	I2C Takt	
P20	SDA	I2C Daten

Weitere Informationen zur micro:bit Hardware findet man:

   [Lancaster University Github]

Software

Programmiert werden kann der micro:bit mit einer Reihe von Online IDEs, die einfach im Browser gestartet werden. Dazu muss nichts installiert werden. Einfach im Browser den gewünschten Editor auswählen und loslegen. Das Programm wird online übersetzt und das compilierte Binary kann dann heruntergeladen werden. Per Drag & Drop werden die Binarys dann mittels File Manager auf den micro:bit Laufwerk geladen, dass beim Anstecken des micro:bit über ein Micro USB Kabel sichtbar wird. Der mcro:bit kann auch über Bluetooth vom Smartphone/Tablet aus progammiert werden. Dazu wird die micro:bit App für Android bzw. Apple iOS benötigt. Nach kurzer Zeit startet der Prozessor dann mit dem neuen Programm.

Alle Editoren basieren auf der Laufzeitumgebung micro:bit DAL (Device Abstraction Layer) der Universität Lancaster. Die Laufzeitumgebung wiederum basiert auf der ARM mbed IoT Device Plattform und der Nordic nRF51 Plattform. Online Editoren

Es gibt eine ganze Reihe von Online Editoren, die Browser basiert arbeiten. Vorteil: man benötigt keine Cross Compiler Umgebung, muss nicht installieren. Zu den derzeit verfügbaren Online Editoren gehören:

  • Code Kingdoms JavaScript, ein weiterer JavaScript Interpreter
  • Microsoft PXT, ein JavaScript Editor
  • Microsoft Block Editor, eine rein grafische Drag&Drop Programmierumgebung
  • Microsoft Touch Develop
  • MicroPython, ein Python Interpreter
  • mbed C++