Calliope mini - Spaß durch Programmieren

Calliope mini zum Leben erwecken

Ziel: Es werden kleine Programme geschrieben und auf dem Calliope mini gestartet.

Starte die Calliope mini Entwicklungsumgebung und wähle als System: Calliope

Das erste Programm

Schiebe das auf dem Bild zu sehende Programm zusammen.

Calliope mini-Einstieg 1

Schließe danach deinen Calliope mini über den USB-Anschluss am Rechner an. Nach einer kurzen Findungsphase taucht er als neues Laufwerk im Windwos-Explorer auf. Der Laufwerksbuchstabe ist hier E:, er kann aber auch ein anderer sein.

explorer

Übertrage nun dein erstes Programm auf den Calliope mini! Klicke dazu rechts unten auf den Pfeil.

Calliope mini-Einstieg 2

Folge jetzt genau den Anweisungen.

Calliope mini-Einstieg 3

Die kleine gelbe LED auf der Vorderseite blinkt während der Übertragung und dann erscheint auf der Anzeige einmal die Begrüßung.

Damit der Text immer wieder erscheint, muss das Programm mit einer unendlichen Schleife erweitert werden. Nach dem Ändern der Programmes muss es wieder wie oben beschrieben zum Calliope mini gesendet werden.

Calliope mini-Einstieg 4

Die erste Entscheidung

Der Text soll nur einmal erscheinen, wenn die linke Taste A gedrückt wurde.

Dazu ist eine Entscheidung zu treffen. Eine Entscheidung ist eine Frage, die nur zwei Antworten zulässt: Ja oder Nein. Kommt der Calliope mini in der unendlichen Schleife bei der Entscheidung an und kann die Frage mit Ja beantworten, wird das gemacht was hinter mache steht. Ansonsten macht er in diesem Fall nichts.

Calliope mini-Einstieg 5

Der erste Programmablaufplan

Ein Programmablaufplan zeigt ganz allgemein, was ein Programm macht. In diesem Beispiel beginnt nach dem Start sofort eine unendliche Schleife. Wenn die Taste A gedrückt wird, geht die LED in Rot an, wenn die Taste B gedrückt wird, geht sie wieder aus.

Aufgabe: Schreibe ein Programm für den Calliope mini, das genau das macht.

Calliope mini-Einstieg

Das Programm wächst

Aufgabe: Erweitere dein erstes Programm! Gehe erst dann zum nächsten Punkt, wenn der aktuelle Punkt funktioniert.

  1. Taste A gedrückt: Nach dem Aufleuchten der LED in Rot soll auf dem Bildschirm "Hallo" angezeigt werden. Nachdem der Text angezeigt wurde, leuchtet die LED noch 2 Sekunden und geht dann aus.
  2. Taste B gedrückt: Nach dem Aufleuchten der LED in Grün soll auf dem Bildschirm dein eigener Vorname angezeigt werden. Nachdem der Text angezeigt wurde, leuchtet die LED noch 2 Sekunden und geht dann aus.

 

Lagesensor

Der Calliope mini hat einen Lagesensor, der abgefragt werden kann. Je nach Lage können dann Aktionen ausgelöst werden.

Aufgabe: Teste alle Lagen aus, in dem in jeder Lage die RGB-LED in einer anderen Farbe aufleuchtet. Das Beispiel zeigt zwei mögliche Lagen. Lass den freien Fall weg!

Calliope mini-Einstieg 6

Aufgabe: Schreibe ein neues Programm: Nach dem Schütteln der Calliope mini wird für zwei Sekunden ein Totenkopf auf dem Display gezeigt

Aufgabe: Ändere das letzte Programm so, dass nach dem Schütteln die RGB-LED drei mal für jeweils 0,5 s angeht und dann für 0,5 s ausgeht.

Zählschleife

Wenn ein Programm mehrmals die gleichen Befehle hintereinander machen soll, ist es einfacher, das in eine Zählschleife zu packen.
In unserem Fall wird drei mal hintereinander die LED ein- und ausgeschaltet, dazwischen wird gewartet. Diese vier Befehle werden über eine Zählschleife drei mal ausgeführt.
Das hat zwei Vorteile gegenüber dem Schreiben aller Befehle:

  1. Das Programm wird deutlich kürzer und damit übersichtlicher.
  2. Der Schleifenzähler kann einfach verändert werden. Damit ist ganz leicht, aus dem 3-fach Blinken z.B. ein 5-fach Blinken zu machen.
Calliope mini-Einstieg 6

Starte die Calliope mini Entwicklungsumgebung

Das erste Programm

 

Erstelle ein neues Projekt. Achte darauf, dass die Code-Option richtig eingestellt ist.

Calliope mini-Einstieg 1
  • Das erste Programm zeigt einfach "Hallo" auf dem Bildschirm an.
  • Im nächsten Schritt wird eine unendliche Schleife um die Ausgaben gebaut. BEACHTE die Groß- und Kleinschreibung und die Einrückung (mit TAB).
Calliope mini-Einstieg 1 Calliope mini-Einstieg 1

Speichern

Die Programme werden als GitHub-Repository gespeichert. Damit ist es möglich,

  • den Code mit anderen zum Bearbeiten zu teilen und
  • die Änderungen bei der Programmentwicklung zurück zu verfolgen.

Informiere dich über den Link hinter dem kleinen Fragezeichen über die GitHub-Arbeitsweise.

speichern

Calliope mini-Einstieg 1

Die erste Entscheidung

Das erste Programm soll voll unter unserer Kontrolle laufen: Hallo wird nur dann angezeigt, wenn die Taste A gedrückt wird.

Calliope mini-Einstieg 1

Eine weitere Entscheidung

In diesem Beispiel beginnt nach dem Start sofort eine unendliche Schleife. Wenn die Taste A gedrückt wird, geht die LED in Grü an, wenn die Taste B gedrückt wird, geht sie wieder aus.

Calliope mini-Einstieg 1

Die Zeile für das Einschalten der LED in einer Farbe ist korrekt, aber viel zu lang. Im letzten Zeil des Befehls wird die Farbe in Dezimalzahlen zwischen 0 und 255 einzugeben. Genau wie im OpenRobertLab funktioniert der Eintrag für Weiß nicht! (Stand im Dezember 2020)

Wesentlich einfacher kann man den Farbeintrag so schreiben:

Calliope mini-Einstieg 1

Die Farbe wird als hexadezimale Zahl geschrieben. Um sie als solche kenntlich zu machen, wird sie mit "Null x" (0x) eingeleitet. Das ist eine in der Programmiersprache C übliche Schreibweise.

Je zwei Stellen der folgenden hexadezimalen Zahl stellen den Farbwert für Rot, Grün und Blau dar. Jede Farbe lässt sich von 00 bis FF einstellen. Das entspricht 256 verschiedenen Helligkeiten.

Das Programm wächst

Aufgabe: Erweitere das Programm! Gehe erst dann zum nächsten Punkt, wenn der aktuelle Punkt funktioniert.

  1. Taste A gedrückt: Nach dem Aufleuchten der LED in Grün soll auf dem Bildschirm "Hallo" angezeigt werden. Nachdem der Text angezeigt wurde, leuchtet die LED noch 2 Sekunden und geht dann aus.
  2. Taste B gedrückt: Nach dem Aufleuchten der LED in Blau soll auf dem Bildschirm dein eigener Vorname angezeigt werden. Nachdem der Text angezeigt wurde, leuchtet die LED noch 2 Sekunden und geht dann aus.

Der kleine Blinker (1. Teil)

Aufgabe: Die LED soll nach dem Drücken von Taste A 5 Mal blinken.

  1. Es wird eine Variable warten erzeugt, die im Programm die Wartezeit im sleep()-Befehl darstellt. Damit muss bei einer Änderung der Blinkgeschwindigkeit die Wartezeit nur einmal geändert werden.
  2. Es wird die LED eingeschaltet, gewartet, die LED ausgeschaltet, gewartet....
  3. Ändere das Progamm so, dass die LED wirklich 5 Mal blinkt.

Der kleine Blinker (2. Teil)

Ziel: Der Blinker wird durch eine while-Schleife gesteuert.

  1. Es wird eine Variable anzahl erzeugt, die die Blinkanzahl regelt.
  2. Die while-Schleife wird so oft durchlaufen, wie der Inhalt der Variablen anzahl größer als 0 ist.

Achtung: Das gezeigte Programm läuft nur einmal. Verändere es so, dass es nach jedem weiteren Druck auf Taste A wieder blinkert.

Aufgabe: Die LED wechselt beim Blinken zwischen den farben Rot und Blau. Wartezeiten und Blinkzahl können leicht angepasst werden.

 

zurück