GPIO-Projekt 6 – RGB-LED
In diesem Projekt erfahren Sie, wie Sie mit einer RGB-LED verschiedene Farben erzeugen, indem Sie die drei Primärfarben (Rot, Grün, Blau) separat über GPIO-Pins steuern. Sie können Farben kombinieren, indem Sie die Intensität jeder Farbe variieren.

Anschlussplan
RGB-LED-Anschluss (gemeinsame Kathode):
- Verbinden Sie das gemeinsame Bein (Kathode):
- Verbinden Sie dengemeinsamen Zweig der RGB-LED (längster Zweig) mit GND (Pin 6) stark>.
- Schließen Sie das rote LED-Bein an:
- Verbinden Sie das rote Bein über einen 220Ω-Widerstand mit GPIO 17 ( Pin 11)..
- Schließen Sie das grüne LED-Bein an:
- Verbinden Sie dasgrüne Bein über einen 220Ω-Widerstand mit GPIO 27 ( Pin 13).
- Schließen Sie das blaue LED-Bein an:
- Verbinden Sie das blaue Bein über einen 220Ω-Widerstand mit GPIO 22 ( Pin 15)..
Pinout Reference
GPIO | Pin # | Function | Connection |
| GPIO 17 | Pin 11 | Red LED | Connect via resistor |
| GPIO 27 | Pin 13 | Green LED | Connect via resistor |
| GPIO 22 | Pin 15 | Blue LED | Connect via resistor |
| GND | Pin 6 | Earth (Ground) | Common cathode |

Python-code in Thonny
Schritt 1: Schreiben Sie Ihren Code
Öffnen Sie die Thonny Python IDE und geben Sie den folgenden Code ein:
from gpiozero import PWMLED
from time import sleep
# RGB LED-pinnen koppelen aan GPIO
red = PWMLED(17) # Rode LED op GPIO 17
green = PWMLED(27) # Groene LED op GPIO 27
blue = PWMLED(22) # Blauwe LED op GPIO 22
def set_color(r, g, b):
"""Stel de kleur van de RGB LED in."""
red.value = r # Rood intensiteit (0.0 - 1.0)
green.value = g # Groen intensiteit (0.0 - 1.0)
blue.value = b # Blauw intensiteit (0.0 - 1.0)
try:
while True:
print("Rood")
set_color(1, 0, 0) # Rood
sleep(1)
print("Groen")
set_color(0, 1, 0) # Groen
sleep(1)
print("Blauw")
set_color(0, 0, 1) # Blauw
sleep(1)
print("Geel")
set_color(1, 1, 0) # Geel (rood + groen)
sleep(1)
print("Cyaan")
set_color(0, 1, 1) # Cyaan (groen + blauw)
sleep(1)
print("Magenta")
set_color(1, 0, 1) # Magenta (rood + blauw)
sleep(1)
print("Wit")
set_color(1, 1, 1) # Wit (rood + groen + blauw)
sleep(1)
print("Uit")
set_color(0, 0, 0) # LED uit
sleep(1)
except KeyboardInterrupt:
print("\nProgramma gestopt.")
set_color(0, 0, 0) # Zet LED uit bij stoppenSchritt 2: Speichern Sie die Datei
Klicken Sie auf Datei > Speichern Sie die Datei unter und benennen Sie sie.rgb_led.py.
Schritt 3: Führen Sie das Skript aus
Klicken Sie oben in der Thonny-Benutzeroberfläche auf die grüne Ausführen-Schaltfläche (▶).
Wie funktioniert es?
- PWMLED: Ermöglicht Ihnen, die Intensität jeder Farbe mit Werten zwischen 0,0 (aus) und 1,0 (voll an) anzupassen ).
- set_color() : Eine Funktion zum gleichzeitigen Anpassen der Intensität der roten, grünen und blauen LED.
- Farbkombinationen: Durch die Kombination unterschiedlicher Intensitäten von Rot, Grün und Blau können Sie unterschiedliche Farben erzeugen.
Ergebnis
- Die RGB-LED wechselt automatisch durch die folgenden Farben: Rot, Grün, Blau, Gelb, Cyan, Magenta, Weiß und Aus.
- Jede Farbe bleibt 1 Sekunde lang aktiv, bevor zur nächsten gewechselt wird.
Experiment
- Farbe anpassen: Passen Sie die Werte von set_color() um neue Farben zu erstellen. Versuchen Sie zum Beispiel:
set_color(0.5, 0.3, 0.7) # Experimentele kleur 2. Interaktive Steuerung: Verwenden Sie einen Druckknopf oder ein Potentiometer, um die Intensität der Farben manuell zu steuern.
3.Blinken hinzufügen: Lassen Sie die RGB-LED in bestimmten Farben blinken, indemsleep() zum Anpassen.

