ESP32 - Potentiometer löst Piezo-Buzzer aus
Dieses Tutorial zeigt dir, wie man den ESP32 und das Potentiometer verwendet, um den Piezo-Buzzer zu steuern. Im Detail:
- Der ESP32 schaltet den Piezo-Buzzer automatisch ein, wenn der analoge Wert des Potentiometers einen Schwellenwert überschreitet.
- Der ESP32 schaltet den Piezo-Buzzer automatisch aus, wenn der analoge Wert des Potentiometers unter einen Schwellenwert fällt.
Wir lernen auch, wie man den analogen Wert in eine Spannung umwandelt und dann die Spannungsschwelle verwendet, um den Piezo-Buzzer zu steuern:
- Der ESP32 schaltet den Piezo-Buzzer automatisch ein, wenn die Spannung des Potentiometers über einem Schwellenwert liegt.
- Der ESP32 schaltet den Piezo-Buzzer automatisch aus, wenn die Spannung des Potentiometers unter einem Schwellenwert liegt.
Wir werden einen Piezo-Buzzer verwenden, um Klang und Melodie des Liedes zu erzeugen.
Erforderliche Hardware
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) |
Über Piezo-Buzzer und Potentiometer
Wir haben spezifische Tutorials zu Piezo-Buzzern und Potentiometern. Jedes Tutorial enthält detaillierte Informationen und Schritt-für-Schritt-Anleitungen zur Hardware-Pinbelegung, zum Funktionsprinzip, zur Verkabelung mit dem ESP32 und zum ESP32-Code. Erfahren Sie mehr darüber in den folgenden Links:
Bitte beachten Sie, dass dieses Tutorial einen 3-5V-Buzzer verwendet, aber Sie es auch für einen 12-V-Buzzer anpassen können. Sie können sich über ESP32-Buzzer-Tutorial informieren.
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.
ESP32-Code - Einfacher Ton - Analoger Schwellenwert
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.
- Schließen Sie die Verkabelung gemäß dem obigen Bild an.
- Schließen Sie das ESP32-Board über ein Micro-USB-Kabel an Ihren PC an.
- Öffnen Sie die Arduino-IDE auf Ihrem PC.
- Wählen Sie das richtige ESP32-Board (z. B. ESP32-Entwicklungsmodul) und den COM-Port aus.
- Kopieren Sie den obigen Code und fügen Sie ihn in die Arduino-IDE ein.
- Kompilieren Sie den Code und laden Sie ihn auf das ESP32-Board hoch, indem Sie in der Arduino-IDE auf die Schaltfläche Hochladen klicken.
- Drehen Sie das Potentiometer.
- Hören Sie sich den Klang des Piezo-Lautsprechers an.
Zeile für Zeile Code-Erklärung
Der obige ESP32-Code enthält eine zeilenweise Erklärung. Bitte lesen Sie die Kommentare im Code!
ESP32 Code - Einfacher Ton - Spannungsschwelle
Der vom Potentiometer gelesene analoge Wert wird in eine Spannung umgewandelt, und anschließend wird diese Spannung mit einem Spannungsschwellenwert verglichen. Überschreitet die Spannung den Spannungsschwellenwert, wird der Piezo-Buzzer ausgelöst.
ESP32 Code - Melodie - Spannungsschwelle
Schnelle Schritte
- Kopieren Sie den obigen Code und fügen Sie ihn in die Arduino IDE ein.
- Erstellen Sie die pitches.h-Datei im Arduino IDE, indem Sie:
- Entweder klicken Sie auf die Schaltfläche direkt unter dem Symbol des seriellen Monitors und wählen Sie New Tab, oder verwenden Sie die Tasten Ctrl+Shift+N.
- Gib den Dateinamen pitches.h ein und klicke auf die OK-Schaltfläche
- Kopieren Sie den untenstehenden Code und fügen Sie ihn in die erstellte pitches.h Datei ein.
- Kompiliere und lade den Code auf das ESP32-Board hoch, indem du in der Arduino-IDE auf die Hochladen-Schaltfläche klickst.
- Drehe das Potentiometer.
- Höre dir die Melodie des Piezo-Buzzers an.
- Der ESP32-ADC ist nicht ganz genau und könnte eine Kalibrierung für korrekte Ergebnisse benötigen. Jedes ESP32-Board kann etwas unterschiedlich sein, 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 genauen Ergebnisse, die Sie wünschen.


Zeilenweise Code-Erklärung
Der obige ESP32-Code enthält eine zeilenweise Erklärung. Bitte lesen Sie die Kommentare im Code!
※ Notiz:
Diese Anleitung verwendet die analogRead()-Funktion, um Werte von einem ADC (Analog-Digital-Wandler) zu lesen, der an ein Potentiometer angeschlossen ist. Der ESP32-ADC ist gut geeignet für Projekte, die keine hohe Genauigkeit benötigen. Für Projekte, die präzise Messungen benötigen, beachten Sie bitte:
Für Projekte, die eine hohe Präzision benötigen, ziehen Sie in Erwägung, einen externen ADC (z. B. ADS1115) mit dem ESP32 zu verwenden oder einen Arduino zu verwenden, der einen zuverlässigeren ADC besitzt. 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.