Bemerkung
Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Community auf Facebook! Tauche tiefer in die Welt von Raspberry Pi, Arduino und ESP32 ein und teile dein Wissen mit Gleichgesinnten.
Warum beitreten?
Experten-Support: Erhalte Hilfe von unserer Community und unserem Team bei technischen Herausforderungen und nach dem Kauf auftretenden Problemen.
Lernen & Teilen: Tausche Tipps und Anleitungen aus, um deine Fähigkeiten zu verbessern.
Exklusive Vorschauen: Erhalte frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.
Spezielle Rabatte: Profitiere von exklusiven Rabatten auf unsere neuesten Produkte.
Festliche Aktionen und Gewinnspiele: Nimm an Gewinnspielen und saisonalen Aktionen teil.
👉 Bereit, mit uns zu experimentieren und zu erschaffen? Klicke auf [hier] und tritt noch heute bei!
3.1 Den Buzzer zum Piepen bringen!
In dieser Lektion lernen wir, wie man einen Buzzer mit dem Raspberry Pi Pico 2 W zum Piepen bringt. Ein Buzzer ist ein digitales Ausgabegerät, ähnlich wie eine LED, und sehr einfach zu steuern. Für dieses Projekt verwenden wir einen aktiven Buzzer, der einen Ton erzeugt, sobald er ein Signal erhält.
Was ist ein aktiver Buzzer?
Ein aktiver Buzzer verfügt über einen internen Oszillator, der seine Nutzung erleichtert. Es genügt, ein Signal an den Buzzer zu senden, um ihn piepen zu lassen – eine komplexe Frequenzsteuerung ist nicht erforderlich. Dies unterscheidet ihn von einem passiven Buzzer, der ein externes Signal zur Tonerzeugung benötigt.
Erforderliche Komponenten
Für dieses Projekt benötigen wir folgende Komponenten:
Ein Komplett-Kit ist besonders praktisch, hier ist der Link:
Name |
ENTHALTENE TEILE |
KAUFLINK |
|---|---|---|
Pico 2 W Starter Kit |
450+ |
Alternativ kannst du die Komponenten auch einzeln kaufen:
SN |
KOMPONENTENBESCHREIBUNG |
MENGE |
KAUFLINK |
|---|---|---|---|
1 |
1 |
||
2 |
Micro-USB-Kabel |
1 |
|
3 |
1 |
||
4 |
Mehrere |
||
5 |
1 (S8050) |
||
6 |
1 (1 kΩ) |
||
7 |
Aktiver Buzzer |
1 |
Schaltplan

In dieser Schaltung wird der Buzzer über einen Transistor (S8050 NPN) mit Strom versorgt. Der Transistor verstärkt den Strom, wodurch der Buzzer lauter wird, als wenn er direkt mit dem Pico verbunden wäre.
So funktioniert es: * GP15 gibt ein HIGH-Signal aus, um den Transistor zu steuern. * Wenn der Transistor aktiviert wird, fließt Strom durch den Buzzer, wodurch er piept.
Ein 1-kΩ-Widerstand begrenzt den Stromfluss und schützt den Transistor.
Verdrahtung
Stelle sicher, dass du einen aktiven Buzzer verwendest. Dieser hat eine versiegelte Rückseite, während ein passiver Buzzer eine offene Leiterplatte besitzt.
Code schreiben
Bemerkung
Die Datei
3.1_beep.inobefindet sich unterpico-2w-kit-main/arduino/3.1_beep.Alternativ kannst du den Code in die Arduino IDE kopieren.
Vergiss nicht, das Board (Raspberry Pi Pico) und den richtigen Port auszuwählen, bevor du auf Upload klickst.
const int buzzerPin = 15; // GPIO-Pin, der mit der Basis des Transistors verbunden ist
void setup() {
pinMode(buzzerPin, OUTPUT);
}
void loop() {
digitalWrite(buzzerPin, HIGH); // Buzzer einschalten
delay(1000); // 1 Sekunde warten
digitalWrite(buzzerPin, LOW); // Buzzer ausschalten
delay(1000); // 1 Sekunde warten
}
Nach dem Hochladen des Codes: Der Buzzer sollte 1 Sekunde lang piepen, dann 1 Sekunde lang stumm sein und dieses Muster kontinuierlich wiederholen. Falls kein Ton zu hören ist, überprüfe die Verdrahtung und stelle sicher, dass du einen aktiven Buzzer verwendest.
Den Code verstehen
Definition des Buzzer-Pins:
Weist
buzzerPindem GPIO 15 zu, der den Transistor und damit den Buzzer steuert.const int buzzerPin = 15; // GPIO-Pin für den Transistor
Einrichtung des Pin-Modus:
Konfiguriert
buzzerPinals Ausgang.void setup() { pinMode(buzzerPin, OUTPUT); }
Steuerung des Buzzers: Die Funktion
loop()wiederholt diesen Prozess unendlich oft und lässt den Buzzer jede Sekunde piepen.digitalWrite(buzzerPin, HIGH): SchaltetbuzzerPinaufHIGH, wodurch der Transistor eingeschaltet wird, der Strom durch den Buzzer fließen lässt und ihn piepen lässt.delay(1000): Pausiert das Programm für 1000 Millisekunden (1 Sekunde).digitalWrite(buzzerPin, LOW): SchaltetbuzzerPinaufLOW, wodurch der Transistor ausgeschaltet wird und der Buzzer verstummt.
void loop() { digitalWrite(buzzerPin, HIGH); // Buzzer einschalten delay(1000); // 1 Sekunde warten digitalWrite(buzzerPin, LOW); // Buzzer ausschalten delay(1000); // 1 Sekunde warten }
Weitere Experimente
Veränderung der Piep-Dauer:
Ändere die Werte in
delay(), um die Länge des Pieptons und der Pausen zu variieren.Experimentiere mit kürzeren oder längeren Zeiten.
Erstellung von Mustern:
Erzeuge komplexe Tonmuster, indem du die Wartezeiten in der
loop()-Funktion anpasst.Beispielsweise kann ein SOS-Signal im Morsecode programmiert werden.
Verwendung eines passiven Buzzers:
Versuche, einen passiven Buzzer mit der
tone()-Funktion zu verwenden, um unterschiedliche Frequenzen zu erzeugen.Beachte, dass die Verdrahtung und der Code für einen passiven Buzzer anders sind.
Fazit
In dieser Lektion hast du gelernt, wie du einen aktiven Buzzer mit dem Raspberry Pi Pico und einem Transistor zum Piepen bringst. Durch die Steuerung des Transistors über einen GPIO-Pin kannst du den Buzzer sicher ein- und ausschalten, ohne die GPIO-Pins des Pico zu überlasten. Dieses grundlegende Konzept kann erweitert werden, um komplexere Töne zu erzeugen oder den Buzzer in Alarmanlagen, Benachrichtigungen und interaktiven Projekten zu nutzen.

