Durch Anklicken kommst du direkt zum Thema:
Öffne mit dem folgenden Link "MakeCode" in einem neuen Browser-Tab und richte es als Splitscreen neben dieser Seite ein. Lege dann ein
Ampeln sind komplexer als man denkt. Eine vollständige Kreuzung mit Ampeln zu programmieren, die aufeinander reagieren und alles Wichtige beachten, kann etliche Stunden dauern. Du wirst hier zumindest die grundlegenden Funktionen von Ampeln umsetzen und dich dabei von einer sehr einfachen zu immer komplexeren Ampeln vorarbeiten.
Eine Lautstärke-Ampel zeigt an, ob die Lautstärke in einem Klassenraum zu hoch ist. Vielleicht kennst du sie aus der Grundschule. Immer wenn die Ampel auf Gelb oder sogar Rot springt, sehen die Schüler von selbst, ob sie insgesamt zu laut sind und wieder leiser werden sollten.
Setze in MakeCode eine Lautstaerke-Ampel um und teste sie dann auf dem Calliope. Versuche dabei passende Schwellenwerte für die Lautstärke zu finden.
Wenn du damit fertig bist, sehe dir die
Die folgenden Blöcke sind für den Anfang nötig. Denke dabei über die Logik nach: Muss der Wert jeweils größer oder kleiner sein?
Vermutlich flackert deine Ampel und springt manchmal so schnell wieder zurück, dass man verpassen könnte, dass es gerade zu laut ist. Die Farbe sollte also ein paar Sekunden bleiben. Bloß Grün sollte weiterhin schnell umspringen können ohne Pause. Setze dies um.
Lege zunächst ein
Setze in MakeCode eine Fußgänger-Ampel um und teste sie dann auf dem Calliope. Da sie meistens nicht nur Rot oder Grün sind, sondern auch eine stehende oder eine gehende Person zeigen, kannst du zusätzlich den LED-Bildschirm des Calliope nutzen. (Seine Farbe kann man leider nicht ändern.)
Wenn du damit fertig bist, sehe dir nacheinander die
Wofür dient häufig ein zweiter Knopf an der Ampel, der sich unterhalb des Kastens des eigentlichen Knopfes befindet? Setze auch die Funktion des zweiten Knopfes mit dem Calliope um.
Solch eine Ampel hat ja eigentlich mehrere Lampen und nicht eine einzige, die in verschiedenen Farben leuchtet. Gucke dir im nächsten Abschnitt an, wie man externe LEDs an den Calliope anschließt und setze die Ampel damit um.
Die Touch-Pins P0 bis P3 können auch als Signal-Ausgabe genutzt werden, anstatt nur selbst Signale wahrzunehmen. Dafür können sie die beiden digitalen Werte 0 ("Aus", keine Spannung) oder 1 ("An", liefert Spannung) annehmen. Wenn man dort z.B. eine LED mit Krokodilklemmen anschließt, kann sie aus- und angeschaltet werden.
Achte darauf, dass die Krokodilklemmen nicht beide Stäbe der LED berühren, sondern immer etwas Abstand haben!
ACHTUNG! Die LEDs müssen immer mit der richtigen Polung angeschlossen werden. Der kürzere Stab der LED muss an den Minus-Pol. Der längere Stab kommt an den Touch-Pin. Zusätzlich muss ein Widerstand eingefügt werden, damit nicht zu viel Strom durch die LED fließt und sie durchbrennt. Siehe Polung und Schaltbild:
Lege ein
Setze in MakeCode eine Verkehrs-Ampel um und teste sie dann auf dem Calliope. Es genügt zunächst, wenn du sie für eine Fahrzeug-Spur umsetzt.
Wenn du damit fertig bist, sehe dir nacheinander die
Es gibt eine Phase, in der zwei Lampen gleichzeitig leuchten. Hast du daran gedacht? Denke noch einmal darüber nach, wie sich die Ampel-Farben ändern, und passe evtl. deinen Code an.
Was passiert, wenn ein Fußgänger kommt? Setze dies für die Ampel um.
Du kannst mit externen LEDs die Verkehrs-Ampel abbilden und mit der RGB-LED des Calliope die Fußgänger-Ampel. Versuche beide gleichzeitig laufen zu lassen und aufeinander zu reagieren. Vielleicht lieber zunächst ohne Knopfdruck, sondern nur mit passenden Reihenfolgen. Später evtl. zusätzlich mit Knopfdruck eines Fußgängers.
Füge über den LED-Bildschirm noch einen Rechtsabbieger-Pfeil ein.
Suche aus den folgenden Projekten eines aus, klicke es für weitere Infos an und bearbeite es wie folgt:
(Die Sterne zeigen an, wie schwierig das Projekt umzusetzen ist.)
Mit den Tasten A und B kann man die maximale Augenzahl (Standard ist "6") erhöhen oder verringern. So soll auch ein Würfel mit z.B. zehn Seiten (ein W10) möglich sein. Durch Schütteln wird dann gewürfelt.
Tipp: Es benötigt mindestens eine Variable namens "Maximum" oder so ähnlich.
Baue eine Alarmanlage für eine Schublade (oder einen Karton oder Schrank). Wenn die Schublade geöffnet wird, soll ein Alarm ertönen. Das geht auf verschiedenen Wegen. Überlege dir, mit welchen Sensoren des Calliope es umgesetzt werden könnte.
Spielstände oder Rundenanzahlen sind meistens einfache Zahlen. Der Calliope soll natürlich bei "0" beginnen und dann mit der Taste A erhöht werden. Korrekturen sind mit der Taste B möglich.
Mögliche Ergänzung 1: Stelle für beide Spieler/Teams einen Spielstand-Zähler ein und lasse sie auf dem LED-Bildschirm anzeigen. Du kannst dabei kreativ sein.
Mögliche Ergänzung 2: Beim Tennis wird anders gezählt. Setze es um.
Die "heiße Kartoffel" muss zwischen mehreren Personen immer wieder umher gereicht werden. Solange, bis sie explodiert (z.B. piept und anzeigt). Setze es zunächst mit einer vorgegebenen Zeit um und ändere es (wenn alles funktioniert) zu einer Zufallsdauer in einem bestimmten Sekundenbereich.
Mit dem Beschleunigungs-Sensor kann das Kippen und Neigen des Calliope wahrgenommen werden. Er soll dann wie beim Eierlauf möglichst schnell eine vorgegebene Strecke entlang getragen werden, ohne zu sehr zu kippen.
Setze es erst mit z.B. Piepen bei Kippen um. Erweitere es dann mit einer passenden Bildschirm-Anzeige. Diese könnte dann z.B. auch vorher schon anzeigen, dass es gleich zu stark gekippt wird.
Mit den Touch-Pins kann man die vier Bildschirm-Ecken des Calliope wiederspiegeln. Taucht in einer Ecke der "Maulwurf" auf, so muss möglichst schnell die passende Ecke geklickt werden.
Wenn das Spiel grundsätzlich funktioniert, kann auch eine Maximalzeit zum Klicken oder ein Zähler eingebaut werden.
Die zuvor programmierte Ampel hat immer noch Luft nach oben. Falls du sie erweitern möchtest, kannst das hier tun. Bedenke dabei, dass Ampeln immer komplizierter werden können.
Mit den Tasten A und B soll die Startzeit (Variable!) eingestellt werden. Durch gleichzeitiges Drücken beider Tasten soll dann der Countdown gestartet werden und bei 0 ein passendes Geräusch ertönen.
Ergänzung: Achtung, kontrolliere, ob es sich wirklich um Sekunden handelt. Falls nicht, überlege, wie du dies umsetzen kannst. (Tipp: Der LED-Bildschirm könnte das Problem sein.)
Programmiere den Calliope zu einer Stoppuhr mit Pause-Funktion und Reset auf 0.
Der Sprungzähler soll automatisch die Sprünge wahrnehmen. Das geht zum Beispiel mit dem Beschleunigungs-Sensor des Calliope. Für die Anzahl Sprünge benötigst du eine Variable, die hochgezählt wird und resettet werden kann.
Eine Uhrzeit kennt der Calliope leider nicht. Mit der Laufzeit kann er aber ab Start des Weckers zählen und bei Erreichen der eingestellten Schlafzeit piepen.
Ergänzung 1: Lass den Calliope einen Sonnenaufgang mit dem Wecktun simulieren.
Ergänzung 2: Eine Snooze-Taste lässt sich ebenfalls umsetzen.
Das Spiel ist eigentlich für zwei Spieler ausgelegt. Von einer anfänglichen Anzahl an Teilen (z.B. Streichhölzer, Schritte zueinander, ...) soll mit den Touch-Buttons 1 bis 3 weggenommen werden können. Wer das letzte Teil wegnimmt, hat gewonnen. Wer nichts mehr wegnehmen kann, hat verloren.
Ergänzung: Du kannst das Spiel auch gegen den Calliope spielen. Setze es als Einzelspieler-Spiel um.
Mit verschiedenen Sensoren kann der Calliope auf einen anderen Calliope reagieren. Programmiert zwei Ampeln, die aufeinander reagieren. Überlegt euch dafür, auf welche Weise ein Calliope dem anderen ein Signal geben kann.
Anhand der Fallzeit eines Gegenstandes kann die Fallhöhe ermittelt werden. Das wirst du sicherlich in der achten Klasse gelernt haben. Setze dies mit dem Calliope um. Schütze ihn dafür gut vor dem Aufprall (z.B. durch Einwickeln)!