Wiring Pi LED mit Schalter steuern

Diese Anleitung baut auf folgenden Beitrag auf: LED blinken lassen

Da ich mein Skript nicht löschen möchte, mache ein ein neues. Ich nenne es mal „schalter.py“.

Dieses mal brauchst Du noch einen weiteren Pin des Raspberry. Diese beiden Pins musst du folgend vorbereiten:

Mit dem Befehl „wiringpi.puuUpDnControl(18, 1)“ wird das Eingangssignal getestet und sollte daher am Anfang des Scripts stehen.

Der nächste Schritt sollte das Aufbauen der Schaltung sein. Unten siehst Du einen Plan und meinen Aufbau auf dem Breadboard.

Weiter geht es wieder mit Code. Zunächst musst Du die Schalterstellung abfragen. Wenn Strom auf dem GPIO 12, also in WiringPi 18, liegt, gibt der Befehl eine „1“ zurück. Ansonsten eine „0“.

Jetzt hast Du in der Variable „pin18“ einen Wert mit „1“ oder „0“ stehen, je nachdem, ob der Schalter auf oder zu ist.

Nun zur Abfrage. Ich baue den oben genannten Befehl gleich in die Schleife ein, ohne zuvor eine Variable zu erstellen. Macht das Skript kürzer. Liest sich vielleicht in anderen Sprachen nicht so schön, aber in Python finde ich, das dies in Ordnung ist.

Wenn Du dieses Skript ausführst, liest es einmal den Schalterstand aus, und führt dementsprechend eine der beiden Aktionen aus.

Um das dauerhaft zu machen, benötigst Du wieder eine „while“ Schleife und um das Blinken warzunehmen noch den „sleep“ Befehl.

Danach schaut das Ganze so aus:

Bei mir muss das LED mit „1“ ausgeschaltet werden. Ich habe mich heute auch gewundert und schon auf die Suche nach der Lösung gemacht, allerdings noch nichts gefunden. Es kann sein, dass bei Dir der Befehl zum ausschalten des LEDs mit „0“ argumentiert werden muss.

Ansonsten gibt es zum lesen eines Pins nicht mehr zu sagen. Du siehst, sehr simpel und einfach.

Hier noch die Bilder meines Breadboards:

schaltplan_led_schalter led_schalterled_schalter_2Die roten Jumper führen zur 5V Spannung am Raspberry Pi.

Das blauen Kabel an der LED führt zum Raspberry Pi GPIO 17 (WiringPi).

Das andere blaue Kabel führt vom Schalter auf das Breadboard und von dort über das grüne Kabel zum Raspberry Pi GPIO 18 (WiringPi).

Der Schaltplan zeigt eine andere Pinbelegung, als sie von mir über die Skripte angesteuert wird. Diese Belegung kann ebenfalls verwendet werden, allerdings müssen die GPIOs dann anders importiert werden. Hierzu kannst Du alles auf projects.drogon.net nachlesen.

2 Kommentare

  1. Andreas Oktober 26, 2015 5:44 pm  Antworten

    Die LED in deinem ‚Blinkbeispiel‘ muss bei ‚1‘ ausgehen. Pin 2 und wenn er geschalten ist auch Pin 11 haben beide das gleiche Potential. Das bedeutet für die LED nix zum Leuchten! Also kein Schaltungsfehler! Höchsten ein kleiner Gedankenfehler. Ging mir auch schon so…
    Somit super Tutorial!!

  2. Franz müller März 22, 2017 11:27 pm  Antworten

    Und immer einen vorwiderstand benutzen…

Schreibe einen Kommentar