ESP32 - Potentiometer-Dimm-LED

Dieses Tutorial erklärt dir, wie man den ESP32 mit dem Potentiometer verwendet, um die Helligkeit der LED zu ändern.

Wenn Sie die LED auslösen möchten, sobald die Spannung des Potentiometers einen Schwellenwert erreicht, sehen Sie sich das ESP32 - Potentiometer löst LED aus Tutorial an.

Erforderliche Hardware

1×ESP32 ESP-WROOM-32 Entwicklungsmodul
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×Potentiometer
1×Alternativ: 10k Ohm Trimmer Potentiometer
1×(Alternativ) Potentiometer Kit
1×(Alternativ) Potentiometer Module with Knob
1×LED Kit
1×LED (red)
1×LED Module
1×220Ω Resistor
1×Breadboard
1×Verbindungskabel
1×(Optional) DC-Stromanschluss
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für ESP32
1×(Empfohlen) Breakout Expansion Board for ESP32
1×(Empfohlen) Stromverteiler für ESP32

Oder Sie können die folgenden Kits kaufen:

1×DIYables ESP32 Starter-Kit (ESP32 enthalten)
1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Kaufhinweis: Um den Verdrahtungsprozess zu vereinfachen, empfehlen wir die Verwendung des LED Module, das mit einem eingebauten Widerstand geliefert wird.

Über LED und Potentiometer

Wir haben spezifische Tutorials zu LEDs und Potentiometern. Jedes Tutorial enthält detaillierte Informationen und Schritt-für-Schritt-Anleitungen zur Hardware-Pinbelegung, zum Funktionsprinzip, zur Verdrahtung des ESP32, zum ESP32-Code... Erfahren Sie mehr darüber in den folgenden Links:

Verdrahtungsdiagramm

ESP32 Drehpotentiometer LED-Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Wenn Sie nicht wissen, wie Sie ESP32 und andere Komponenten mit Strom versorgen, finden Sie Anleitungen im folgenden Tutorial: Wie man ESP32 mit Strom versorgt.

Wie man programmiert

  • Liest den Eingang am analogen Pin (Wert zwischen 0 und 4095)
int analogValue = analogRead(36); // GPIO36 (A/D-Wandler 0)
  • Skaliert es auf Helligkeit (Wert zwischen 0 und 255)
int brightness = map(analogValue, 0, 4095, 0, 255);
  • Stellt die Helligkeits-LED ein
analogWrite(LED_PIN, brightness);

ESP32-Quellcode

/* * Dieser ESP32 Code wurde von newbiely.de entwickelt * Dieser ESP32 Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/esp32/esp32-potentiometer-fade-led */ #define POTENTIOMETER_PIN 36 // ESP32 pin GPIO36 (ADC0) connected to Potentiometer pin #define LED_PIN 21 // ESP32 pin GPIO21 connected to LED's pin // the setup routine runs once when you press reset: void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); // set the ADC attenuation to 11 dB (up to ~3.3V input) analogSetAttenuation(ADC_11db); // declare LED pin to be an output: pinMode(LED_PIN, OUTPUT); } // the loop routine runs over and over again forever: void loop() { // reads the input on analog pin A0 (value between 0 and 4095) int analogValue = analogRead(POTENTIOMETER_PIN); // scales it to brightness (value between 0 and 255) int brightness = map(analogValue, 0, 4095, 0, 255); // sets the brightness LED that connects to pin 3 analogWrite(LED_PIN, brightness); // print out the value Serial.print("Analog value = "); Serial.print(analogValue); Serial.print(" => brightness = "); Serial.println(brightness); delay(100); }

Schnelle Schritte

  • Falls dies das erste Mal ist, dass Sie ESP32 verwenden, sehen Sie sich wie man die Umgebung für ESP32 in der Arduino IDE einrichtet an.
  • Kopieren Sie den obigen Code und fügen Sie ihn in die Arduino IDE ein.
  • Kompilieren und laden Sie den Code auf das ESP32-Board hoch, indem Sie in der Arduino IDE auf die Schaltfläche Hochladen klicken.
  • Öffnen Sie den Seriellen Monitor in der Arduino IDE.
Wie öffnet man den seriellen Monitor in der Arduino-IDE?
  • Drehen Sie das Potentiometer
  • Sehen Sie, wie die LED ausblendet
  • Sehen Sie das Ergebnis im Serial Monitor. Es sieht so aus wie unten:
COM6
Send
Analog value = 6 => brightness = 1 Analog value = 34 => brightness = 8 Analog value = 89 => brightness = 22 Analog value = 149 => brightness = 37 Analog value = 214 => brightness = 53 Analog value = 297 => brightness = 74 Analog value = 365 => brightness = 90 Analog value = 431 => brightness = 107 Analog value = 510 => brightness = 127 Analog value = 589 => brightness = 146 Analog value = 695 => brightness = 173 Analog value = 790 => brightness = 196 Analog value = 970 => brightness = 241 Analog value = 996 => brightness = 248 Analog value = 1018 => brightness = 253 Analog value = 4095 => brightness = 255
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

※ Notiz:

Dieses Tutorial verwendet die Funktion analogRead(), um Werte von einem ADC (Analog-Digital-Wandler) zu lesen, der an ein Potentiometer angeschlossen ist. Der ESP32-ADC eignet sich gut für Projekte, die keine hohe Genauigkeit benötigen. Allerdings sollten Sie für Projekte, die präzise Messungen benötigen, Folgendes beachten:

  • Der ESP32-ADC ist nicht perfekt genau und muss möglicherweise für korrekte Ergebnisse kalibriert werden. Jedes ESP32-Board kann sich etwas unterscheiden, daher müssen Sie den ADC für jedes einzelne Board kalibrieren.
  • Die Kalibrierung kann schwierig sein, insbesondere für Anfänger, und liefert möglicherweise nicht immer die gewünschten exakten Ergebnisse.

Für Projekte, die eine hohe Präzision benötigen, ziehen Sie in Betracht, einen externen ADC (z. B. ADS1115) mit dem ESP32 zu verwenden oder einen Arduino zu verwenden, der über einen zuverlässigeren ADC verfügt. Wenn Sie den ESP32-ADC dennoch kalibrieren möchten, lesen Sie ESP32 ADC Calibration Driver

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!