Achtung: Dieses Programm läuft nicht in der Simulation sondern nur auf dem Calliope mini selber (Stand Juni 2019).
Das Prinzip: Der Bildschirm mit seinen 25 LEDs wird in 8 Achsen zu je zwei LEDs eingeteilt. Zu Beginn sind die beiden LEDs auf der Achse 1 aus, also Helligkeit:0. Auf Achse 2 haben die LEDs die Helligkeit 1, auf Achse 3 Helligkeit 2 usw. Dieses Bild wird zu Beginn auf dem Bildschirm angezeigt.
Das Programm liest nun die Helligkeit jeder LED, die in einer Achse steht aus und erhöht die Helligkeit um 1. Auf der Achse 2 haben die LEDs die Helligkeit 7 und müssen als nächstes ausgeschaltet werden. Auch das ist kein Problem.
Damit wandert die dunkle Achse um eine Position nach rechts und alle anderen Achsen werden um ein heller.
Nach diesem Helligkeitswechsel warte das Programm eine kurze Zeit und das Spiel beginnt von vorn.
Das Problem sind die 9 LEDs, die die gesamte Zeit nicht leuchten. Da sie die Helligkeit 0 haben, würden sie nach dem ersten Durchlauf mit 1 leuchten. Da das nicht passieren darf, müssen sie vorher erkannt und aus dem Spiel rausgelassen werden. Dazu später.
Das Ansprechen jeder einzelnen LED über ihre x- und y-Koordinate erfolgt wie beim Lauflicht mit Hilfe einer Zählschleife. Dann wird
Welche LEDs dürfen nun nicht mitspielen?
Ordnet man die LEDs nach den y-Werten, ergibt sich folgendes Bild:
y | x | y | x | |
---|---|---|---|---|
0 | 1 | 4 | 1 | |
0 | 3 | 4 | 3 | |
3 | 0 | 1 | 0 | |
3 | 4 | 1 | 4 |
Man sieht: Die LEDs dürfen NICHT verändert werden, wenn:
Das Bild zeigt den Beginn der logischen Verknüpfungen. Die Entscheidung über die mittlere LED (2,2) wird dann nochmal extra getroffen.