Schirmklammern Icotek


Google-Suche auf MEINE-SCHALTUNG.de :





Dauerkalender


LED-Wechselblinker mit Raspberry Pi


Zwei LEDs sollen abwechselnd zum Blinken gebracht werden. Mit einem Taster soll es zunächst möglich sein, die LEDs zu überprüfen. Mit einem Ein/Aus-Schalter soll es möglich sein, das Blinken ein- und auszuschalten. Die Aufgabe soll mit Raspberry Pi gelöst werden.

Schaltplan

Schaltplan


Für die Aufgabe werden vier GPIOs benötigt. Zwei von ihnen werden als Ausgänge für die beiden LEDs verwendet. Hierzu kommen die Pins 11 und 13 zum Einsatz. Mit dem Widerstand R1 wird der Dioden Strom begrenzt.
An die Pins 29 und 31 werden jeweils ein Taster (S1) und ein Schalter (S2) angeschlossen. Beide Anschlüsse werden via Programm als INPUTs mit Pull-Up Widerstand definiert. Beim Betätigen der Schalter werden die Pins an Masse gezogen.

Testschaltung

Testschaltung


Das Programm:

Nachdem die Pins definiert wurden, wird im Hauptprogramm mit "while True" die Endlosschleife gestartet. Das Programm wartet dann dauernd, bis ein Schalter betätigt wird. Sobald Taster S1 gedrückt wird, werden beide LEDs gleichzeitig eingeschaltet (Lampentest). Mit Schalter S2 startet man den Wechselblinker.


# ----------------------------------------------------------
# LED-Wechselblinker mit Raspberry Pi
# Raspberry Pi 3B, Python 3
# ----------------------------------------------------------


import RPi.GPIO as GPIO
import time

# Pin-Nummern der Stiftleiste ..........................
GPIO.setmode(GPIO.BOARD)
# Fehlermeldungen abschalten ...........................
GPIO.setwarnings(False)
GPIO.setup(11, GPIO.OUT)
GPIO.setup(13, GPIO.OUT)
GPIO.setup(29, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(31, GPIO.IN, pull_up_down=GPIO.PUD_UP)

# Hauptprogramm
while True:
GPIO.output(11, GPIO.LOW)
GPIO.output(13, GPIO.LOW)
if GPIO.input(29) == GPIO.LOW:
GPIO.output(11, GPIO.HIGH)
GPIO.output(13, GPIO.HIGH)
if GPIO.input(31) == GPIO.LOW:
GPIO.output(11, GPIO.HIGH)
GPIO.output(13, GPIO.LOW)
time.sleep(0.2)
GPIO.output(11, GPIO.LOW)
GPIO.output(13, GPIO.HIGH)
time.sleep(0.2)
# ------------------------------------------------------



Kurzvideo


Weitere Themen:


Google-Suche auf MEINE-SCHALTUNG.de :


Home Impressum Datenschutz