Bemerkung

Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten.

Warum beitreten?

  • Expertenunterstützung: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.

  • Lernen & Teilen: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern.

  • Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.

  • Spezialrabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.

  • Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.

👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [ hier ] und treten Sie heute bei!

HueDial

Dieses Beispiel steuert die Farbe einer RGB-LED basierend auf der Position eines Drehknopfs. Verschiedene Positionen des Knopfs entsprechen verschiedenen HUE-Werten, die dann in RGB-Farbwerte übersetzt werden, was zu einer Farbänderung der RGB-LED führt.

Benötigte Komponenten

Für dieses Projekt benötigen wir die folgenden Komponenten.

Es ist definitiv praktisch, ein ganzes Kit zu kaufen, hier ist der Link:

Name

ARTIKEL IN DIESEM KIT

LINK

Elite Explorer Kit

300+

Elite Explorer Kit

Sie können sie auch einzeln über die untenstehenden Links kaufen.

KOMPONENTENBESCHREIBUNG

KAUF-LINK

Arduino Uno R4 WiFi

-

Steckbrett

KAUFEN

Jumperkabel

KAUFEN

Widerstand

KAUFEN

RGB-LED

KAUFEN

Potentiometer

KAUFEN

Verdrahtung

../_images/03_hue_dial_bb.png

Schaltplan

../_images/03_hue_schematic.png

Code

Bemerkung

  • Sie können die Datei 03_huedial.ino direkt unter dem Pfad elite-explorer-kit-main\fun_project\03_huedial öffnen.

  • Oder kopieren Sie diesen Code in die Arduino IDE.

Wie funktioniert das?

Hier ist eine detaillierte Erklärung des Codes:

  1. Globale Variablendefinitionen:

    redPin, greenPin und bluePin: Diese definieren die PWM-Pins, die jeweils mit den roten, grünen und blauen LEDs verbunden sind. KNOB_PIN: Definiert den analogen Eingangspin, der mit dem Drehknopf verbunden ist.

  2. setup():

    Stellen Sie die Pins für die RGB-LED als Ausgang ein. Standardmäßig sind analoge Pins als Eingänge gesetzt, daher ist es nicht notwendig, den Eingangsmodus für den Pin des Knopfes einzustellen.

  3. loop():

    Lesen Sie den Wert des Drehknopfs. Dieser Wert reicht von 0 bis 1023. Normalisieren Sie den Wert des Knopfs auf einen Bereich von 0-1. Konvertieren Sie den normalisierten Wert in einen HUE-Wert im Bereich von 0-360. Konvertieren Sie den HUE-Wert in RGB-Werte. Aktualisieren Sie die Farbe der LED mit diesen RGB-Werten.

  4. setColor():

    Setzen Sie die passenden PWM-Werte für jeden LED-Pin mit der Funktion analogWrite(), um die Farbe der RGB-LED einzustellen.

  5. HUEtoRGB():

    Diese Funktion konvertiert HUE-Werte in RGB-Werte mit der HSL-zu-RGB-Konvertierungsmethode, konzentriert sich jedoch nur auf die HUE-Komponente und hält Sättigung und Helligkeit bei 100%. Der Algorithmus ist in 6 Stufen unterteilt, wobei jede 60 Grad abdeckt. Es berechnet RGB-Werte für jede HUE-Stufe und skaliert dann diese Werte auf einen Bereich von 0-255, was der erwarteten Spanne für die Funktion analogWrite() entspricht.