Lektion 2 - Buttons

Genau zwei Dinge in diesem Programm sind neu. Die erste neue Angelegenheit findest du in Zeile 6. Normalerweise haben wir mit Hilfe der gpio.setup()-Funktion ja die einzelnen Pins für die LEDs bereit gemacht, damit wir Strom aus ihnen heraus schicken können. Das mit den Knöpfen ist erwartungsgemäß etwas komplizierter.

In diesem Fall muss der Pin nämlich mehr leisten, als einfach nur Strom zu liefern. Der Pin muss in dieser Situation nämlich prüfen, ob der Knopf gedrückt ist oder eben nicht. Und genau das kann der Pin leisten, wenn wir in so wie in Zeile 6 einstellen. Je nachdem, ob der Knopf gedrückt wird oder nicht, wird dem Pin ein Zahlenwert zugewiesen. Ist der Kopf gedrückt, hat der Pin den Zahlenwert 1 zugewiesen. Ist er nicht gedrückt, den Zahlenwert 0. Merk dir das für gleich.

Die zweite Überraschung in diesem Programmcode kannst du in Zeile 9 betrachten. Wo wir vorher immer Vergleiche angestellt haben und die while-Schleife nur ausgeführt wurde, wenn dieser Vergleich wahr ist, sagen wir der while-Schleife nun einfach von Anfang an, dass sie wahr sein soll. Sie läuft also den lieben langen Tag weiter, bis wir das Programm beenden. So einfach ist das. Der Clou kommt jetzt. In der while-Schleife weisen wir einer Variable namens buttonpressed den Wert des GPIO-Pin zu. Wie du dir ja vorher merken solltest ist dieser Wert immer unterschiedlich. Je nachdem ob der Knopf gedrückt ist oder nicht. So kann im nächsten Schritt die richtige if-Anweisung ausgewählt werden.

Fragen? Feedback?