In dieser Lektion lernen wir, wie wir LEDs zum Blinken bringen können!

Probiert es hier aus: bitbloq.bq.com

Bitbloq 2 ist eine Programmiersprache, mit der ihr aus Blöcken einfache oder komplexe Programme für Arduino-kompatible Plattformen, wie den BQ ZUM erstellen könnt! Damit könnt ihr alle Fähigkeiten der C++ Sprache umsetzen, auf der Arduino basiert, ohne die komplizierte Syntax, Komma- und Klammerregeln der Sprache auswendig lernen zu müssen.

Mit Bitbloq 2 kann jeder ab 8 Jahren die Grundlagen der Programmierung und Robotik lernen!


In der letzten Folge haben wir uns die Grundlagen von Bitbloq 2 angesehen und eine LED zum leuchten gebracht. Aber dafür bräuchten wir nicht einmal einen Microcontroller wie den ATMega, der auf dem ZUM und Arduino verwendet wird, wir könnten die LED auch einfach direkt an eine Stromquelle anschließen. Deshalb erschaffen wir heute ein Programm, das die LED zum blinken bringt: Genau das könnt ihr auch für Warnlichter oder Weihnachtsdekorationen verwenden!

Als Erstes schließen wir die LED wieder wie im letzten Video an: Ihr könnt jeden Anschluss verwenden, solange ihr die Farben der Kabel mir den Farben am Anschluss abgleicht. Ich verwende wieder Pin 5. Wählt eure Platine aus, indem ihr sie in den Arbeitsbereich zieht und fügt eine LED hinzu. Gebt der LED auch dieses Mal wieder einen Namen und schließt sie an den gleichen Anschluss an, den ihr auch an der Platine verwendet habt.

Blinkende LED Hardware

Im Software-Bereich verwenden wir wieder den Bereich Loop, die LED soll ja immer und immer wieder blinken und nicht nur ein einziges Mal.

Überlegt euch mal, welche Dinge ihr machen würdet, wenn ihr eine Lampe blinken lassen wollt. Klar, ein- und ausschalten ist der erste Schritt dazu, danach macht ihr das Gleiche einfach immer und immer und immer wieder. Aber die Sache hat einen kleinen Haken: Wenn ihr dem Prozessor genau diese Anweisungen gebt: Schalte die LED an, schalte die LED aus, wiederhole, und das jetzt auf den ZUM hochladet, bekommt ihr keine blinkende LED, sondern eine, die aussieht, als ob sie einfach auf halber Helligkeit leuchten würde. Das liegt daran, dass der Prozessor die LED viel schneller ein- und ausschalten kann als wir es mit einem Schalter schaffen, und sogar so schnell, dass wir es lange nicht mehr sehen können. Die LED blinkt wirklich, aber eben 16 Millionen Mal pro Sekunde, weil der Prozessor die einzelnen Anweisungen so schnell abarbeiten kann. Das wirkt für uns, als ob die LED einfach ständig leuchten würde. Was wir also noch brauchen, sind Pausen, die dem Prozessor sagen: Schalte die LED an, und dann lass dir erst mal Zeit, bevor du irgend etwas Anderes machst. Den Block dafür finden wir im Bereich “Steuerung”. Zieht den Block zwischen die An- und Ausschaltanweisungen und stellt ihn auf 1000 Millisekunden, also eine Sekunde ein. Wir brauchen aber noch einen zweiten “Warten” Block, und zwar am Ende des Loops – ansonsten wird die LED angeschalten, nach einer Sekunde ausgeschalten und dann sofort wieder eingeschalten, weil der Prozessor sofort hoch zur ersten Anweisung springt. Auch das wirkt wieder, als ob die LED ständig leuchten würde. Darum am Ende nochmal warten.

 

Auch dieses Programm können wir zuerst wieder überprüfen oder direkt hochladen.

Probiert einfach verschiedene Zeiten für die “Warten” Blöcke aus. Als Tipp, besonders schnelle Blinksequenzen könnt ihr sichtbar machen, wenn ihr die LED durch die Luft bewegt!

Im nächsten Video sehen wir uns an, wie ihr mehrere LEDs gleichzeitig steuern könnt und warum “gleichzeitíg” eigentlich sogar ziemlich schwierig ist. Bis dann!