TigerJython4Kids
HomeTurtlegrafikRobotikDatenbanken
loslegen

1. LOSLEGEN

 

 

DU LERNST HIER...

 

wie du mit Python ein Programm entwickeln und auf dem Calliope ausführen kannst.

 

 

PROGRAMMENTWICKLUNG

  Ein Programm, das auf dem Calliope laufen soll,  kannst du mit TigerJython auf irgendeinem Computer entwickeln. Nachdem du das Programm im Editor geschrieben hast, lädst du es über ein USB-Kabel auf den Calliope hinunter und es wird dort mit MicroPython (einer reduzierten Python-Version) ausgeführt. Dazu muss auf dem Calliope eine Firmware installiert sein.

 

 

USB-VERBINDUNG

 

Schliesse den Calliope über ein USB-Kabel am Computer an. Du siehst ein zusätzliches externes USB-Gerät (unter Windows mit einem Laufwerk-Buchstaben).

Für Windows früherer Versionen als Windows 10 musst du für die serielle Kommunikation einen Treiber installieren. Die Installationsdatei kannst du hier herunterladen: mbed.zip. Packe die Datei aus und führe sie per Mausklick aus. Dazu brauchst du allerdings Administrator-Rechte.

 

 

 

 

FIRMWARE INSTALLIEREN

  Vor der ersten Verwendung musst du die Firmware auf den Calliope hinunterladen. Mit TigerJython ist dies sehr einfach: Wähle unter Einstellungen/Bibliotheken die Option micro:bit/Calliope. Diese Einstellung bleibt gespeichert und ist auch für das Hinunterladen der Programme erforderlich. Wähle im Menü unter Tools die Option Flash Target .

 


Die gelbe LED neben der USB-Buchse beginnt zu blinken. Sobald der Download fertig ist, erscheint im Ausgabefenster die Meldung: "Successfully transferred file to Calliope".

Dein Calliope ist jetzt bereit zum Programmieren.

 

 

 

MUSTERBEISPIEL

 

Zum Einstieg schreibst du nur einen kurzen Text auf dem Display aus. Tippe im Editor das unten stehende Programm ein oder klicke auf In Zwischenablage kopieren und füge es mit Ctrl+V im Editorfensterein.

from calliope_mini import *

display.scroll("HELLO PYTHON!")
► In Zwischenablage kopieren

 

 
  Kontrolliere, ob der Calliope am Computer angeschlossen ist und klicke auf die Schaltfläche Hinunterladen/Ausführen.

Neben dem TigerJython-Fenster erscheint ein zweites Terminal-Fenster. Hier werden Mitteilungen und Fehlermeldungen angezeigt.

Wenn HALLO PYTHON als Scrolltext angezeigt wird, funktioniert dein Calliope einwandfrei.

Der Programmcode ist leicht zu verstehen: In der ersten Programmzeile wird das Modul calliope_mini importiert und die Objekte und Funktionen aus dieser Bibliothek bereit gestellt, beispielsweise das Objekt display, mit dem du auf die LEDs zugreifst. Mit dem Befehl display.scroll("HELLO PYTHON!") kannst du kurze Mitteilungen als Lauftext anzeigen. Beachte, dass der Text in einfachen oder doppelten Anführungszeichnen stehen muss!


 

SIMULATIONSMODUS

 
Um ein Programm im Simulationsmodus auszuführen, klickst du den grünen Startbutton.

Im Simulationsmodus werden LEDs, Buttons, Pins und alle Befehle von cpglow unterstützt. Es erscheint ein Fenster, das du mit gedrückter Maustaste verschieben kannst. Beim Start des nächsten Programms wird das vorhergehende Fenster automatisch geschlossen.

 

 

 

MERKE DIR...

 

Du schreibst ein Programm für den Calliope im TigerJython-Editor. Um das Programm auf dem Calliope auszuführen, klickst du auf die Schaltfläche Hinunterladen/Ausführen. Die Programmausführung im Simulationsmodus wird mit Klick auf den grünen Pfeil gestartet.

  Simulation Download auf Calliope
 

Auf dem Calliope ist jeweils das zuletzt hinuntergeladene Programm gespeichert. Die Programmausführung startet automatisch beim nächsten Anschluss einer Stromversorgung. Sollte einmal das gespeicherte Programm wegen eines Programmierfehlers den Calliope blockieren, so musst du den Calliope neu flashen.

 

 

ZUM SELBST LÖSEN

 

 

1.
Schreibe verschiedene Meldungen als Scrolltext aus (auch kleine Buchstaben sind erlaubt).

2.

Schreibe ein Mitteilung aus, die sich endlos wiederholt. Verwende dazu in scroll() den zusätzlichen Parameter loop = True.

Das Programm läuft endlos. Du  kannst es allerdings im Terminalfenster mit Ctrl+C abbrechen (und mit Ctrl+D wieder starten).

 

 

ZUSATZBEMERKUNGEN

 

Nachdem das Programm zu Ende gelaufen ist, wird der Kommandozeilen-Prompt des Python-Interpreters >>> ausgeschrieben und du kannst hier auch Python-Befehle interaktiv eintippen und ausführen. Mit der Tastenkombination Ctrl+D kannst du ein hinuntergeladenes Programm erneut starten.

Falls du einmal ein länger laufendes Programm abbrechen willst, so kannst du im Terminal Ctrl+C eintippen, es wird aber auch abgebrochen, wenn du ein neues Programm hinunterlädst.

Dein Programm bleibt so lange auf dem Calliope gespeichert, bis du es mit einem neuen Programm überscheibst (oder der Calliope geflasht wird). Du kannst also den Calliope beim Computer ausstecken und an eine andere Spannungsquelle anschliessen, beispielsweise an ein USB-Ladegerät oder eine PowerBank.

 


Am zusätzlichen Batteriestecker kannst du auch einen Batteriehalter mit zwei 1.5V-Batterien oder Nickel-Zink-Akkus anschliessen (Achte sorgfältig auf die richtige Polarität!)

Sofort startet das zuletzt gespeicherte Programm wieder.

 

Um ein Programm mehrmals auszuführen, kannst du auch den Reset-Button klicken, der sich neben der USB-Buchse befindet, statt die Spannungsversorgung zu unterbrechen.

 

 

1-2
Fachliche Hinweise:

Falls du Schwierigkeiten mit dem USB-Anschluss hast, versuche es mit einem anderen USB-Kabel. Einige USB-Kabel, insbesondere diejenigen, die mit PowerBanks mitgeliefert werden, können nur zum Laden und nicht für die Datenübertragung verwendet werden.

1-4
Fachliche Hinweise:

Die Firmware kann wie ein kleines Betriebssystem aufgefasst werden, das auch für die Kommunikation mit dem Entwicklungssystem verantwortlich ist (Der micro:bit erscheint auf dem PC wie ein externer Speicherdevice und kann Daten als serielles Gerät (COM-Port) austauschen). Zudem enthält die Firmware den MicroPython-Interpreter und das API für die Ansteuerung der Hardware.

Die Firmware ist in C++ geschrieben und steht als public domain zur Verfügung. Wir haben sie leicht modifiziert, damit Fehlermeldungen nicht mehr auf dem LED-Display ausgeschrieben werden, was den Entwicklungsprozess stark behindert.