| Raspberry Pi steuert RGB-Dioden via PWMIn dem folgenden Versuch werden drei RGB-Dioden von Raspberry Pi angesteuert. Um die Farbenvielfalt der RGB-Dioden zu nutzen, werden sie mithilfe von PWM-Signalen gesteuert. Aus diesem Grund werden drei Pins des J8-Headers von Raspberry Pi als PWM-Ausgänge definiert. RGB Dioden Das ProgrammMit einfacher Benutzeroberfläche werden drei Schieberegler zur Verfügung gestellt. Jeder Schieberegler ist
jeweils für einen Ausgang zuständig. Mit jedem Schieberegler wird der High-Anteil des zuständigen PWM-Signals eingestellt.
Mit GPIO.PWM werden drei Pins (Nummer 33, 35 und 37) als PWM-Ausgänge definiert. Beim Betätigen eines Schiebers wird der
entsprechende Wert geändert und dem zuständigen Ausgang zugeführt. In der ersten Ausführung des Programms erfolgen die
Veränderungen manuell.
# ---------------------------------------------------------- # Raspberry Pi, RGB-Dioden & PWM # (manuell) # Raspberry Pi 3B, Python 3 # ----------------------------------------------------------
from tkinter import*
import RPi.GPIO as GPIO
GPIO.setwarnings(False)
GPIO.setmode (GPIO.BOARD)
GPIO.setup(33, GPIO.OUT)
GPIO.setup(35, GPIO.OUT)
GPIO.setup(37, GPIO.OUT)
Master = Tk()
Breite = Master.winfo_screenwidth()
Höhe = Master.winfo_screenheight()
Master.geometry("%dx%d+0+0" % (Breite,Höhe))
Master.config (bg="grey")
class Schieberegler():
def __init__ (self,Titel, Pin, X, Y):
pwm = GPIO.PWM (Pin, 50)
def LED_ein(val):
pwm.start (int(val))
self.regler = Scale (Master,
from_=0,
to=100,
orient=HORIZONTAL,
length=800,
width=30,
bg="grey",
bd=4,
font=("Arial", 20),
fg="white",
label=Titel,
sliderlength=50,
troughcolor="grey",
command=LED_ein)
self.regler.place(x=X, y=Y)
Regler_Oben = Schieberegler("Rot in %", 33, 300,100)
Regler_Mitte = Schieberegler("Grün in %", 35, 300,250)
Regler_Unten = Schieberegler("Blau in %", 37, 300,400)
Master.mainloop()
# ----------------------------------------------------------
|
Google-Suche auf MEINE-SCHALTUNG.de : |