ESP32 Eğitimi 13/55 - Arduino Aktif Buzzer ile Bip Sesi | SunFounder'ın ESP32 IoT Öğrenme Kiti
Bu eğitimde, bir ESP32 mikrodenetleyici ve bir transistör kullanarak aktif bir buzzer'ı nasıl kontrol edeceğimizi öğreneceğiz. Proje, buzzer'ı açıp kapatmayı ve bir bip sesi oluşturmayı içerir. ESP32'nin yerleşik Wi-Fi ve Bluetooth özellikleri sayesinde, bu projeyi gelecekte daha karmaşık IoT uygulamalarına genişletebilirsiniz.

Kullanacağımız bileşenler arasında ESP32 kartı, aktif bir buzzer, bir transistör (S8050) ve bir direnç bulunur. Bu bileşenleri doğru şekilde bağlayarak, buzzer'ın sesini ESP32 üzerinden kontrol edebiliriz. Ayrıca, bu projeyi çalıştırmak için gerekli bağlantı ve kod hakkında kısa bir genel bakış sunacağız. Daha fazla açıklama için bu eğitime eşlik eden videoyu mutlaka kontrol edin (videoda 00:00'da).
Donanım Açıklaması
Bu projenin ana bileşenleri ESP32 mikrodenetleyici, aktif buzzer ve S8050 transistörüdür. ESP32, hem Wi-Fi hem de Bluetooth özelliklerine sahip güçlü bir mikrodenetleyicidir ve geniş bir IoT projesi yelpazesine olanak tanır. Aktif buzzer, bir voltaj uygulandığında ses üretirken, S8050 transistörü ESP32'den gelen düşük voltajlı bir sinyalle buzzer'ı kontrol etmek için bir anahtar görevi görür.
Transistörün üç pini vardır: kollektör, baz ve emitör. Baz pinine bir direnç üzerinden voltaj uygulandığında, akımın kollektörden emitöre akmasına izin verir ve böylece buzzer'a güç sağlar. Bu kurulum, ESP32'nin GPIO pinlerini aşırı yüklemeden buzzer'ı güvenli bir şekilde kontrol edebilmemizi sağlar.
Veri Sayfası Detayları
| Üretici | SunFounder |
|---|---|
| Parça numarası | TMBB 12 A05 |
| Çalışma voltajı | 3–8 V |
| Anma voltajı | 5 V |
| Maksimum akım | 30 mA |
| Salınım frekansı | 2700 ± 300 Hz |
- Transistörün bazına giden akımı sınırlamak için 1 kΩ direnç kullanın.
- Aktif buzzer'ın pozitif ve negatif terminallerle doğru şekilde bağlandığından emin olun.
- Kısa devreleri önlemek için pin bağlantılarını iki kez kontrol edin.
- Daha kolay bağlantılar ve ayarlamalar için bir breadboard kullanın.
- Buzzer hem 3.3V hem de 5V ile çalışabilir, ancak devre ihtiyaçlarınıza göre güç verin.
Bağlantı Talimatları

Bileşenleri bağlamak için, aktif buzzer'ı breadboard'a yerleştirerek başlayın. Buzzer'ın pozitif terminalini ESP32'deki 3.3V pinine bağlayın. Buzzer'ın negatif terminali, S8050 transistörünün kollektör pinine bağlanmalıdır. Ardından, S8050 transistörünü breadboard'a yerleştirin ve düz tarafının size baktığından emin olun. Sol pin (kollektör) buzzer'ın negatif terminaline, orta pin (baz) 1 kΩ dirence ve sağ pin (emitör) toprağa bağlanır.
Şimdi, 1 kΩ direncin diğer ucunu alın ve ESP32'deki GPIO pin 14'e bağlayın. Son olarak, transistörün emitör pinini breadboard'daki toprak rayına bağlayın. Tüm bağlantıların güvenli olduğundan emin olun ve devreye güç vermeden önce pinlerin hizalamasını iki kez kontrol edin.
Kod Örnekleri ve Açıklama
İşte buzzer'ı kontrol eden kodun kısa bir özeti. İlk olarak, buzzer'a bağlı pini tanımlıyoruz:
const int buzzerPin = 14; // buzzer pini
Bu satır, ESP32'deki pin 14'e atıfta bulunmak için buzzerPin değişkenini ayarlar ve bu pin buzzer'ı kontrol etmek için kullanılır.
Ardından, setup() fonksiyonunda buzzer pinini çıkış olarak ayarlıyoruz:
void setup()
{
pinMode(buzzerPin, OUTPUT); // Çıkış olarak ayarla
}
Bu, ESP32'nin buzzer'ı açıp kapatmak için sinyal göndermek üzere pin 14'ü kullanacağını bilmesini sağlar.
loop() fonksiyonunda, buzzer'ı birden çok kez etkinleştirmek için bir for döngüsü oluşturuyoruz:
for (int i = 0; i < 50; i++) // 50 kez döngü yap ve her seferinde kısa bir ton çal
{
digitalWrite(buzzerPin, HIGH); // Buzzer'ın ses çıkarması için HIGH yap
delay(3); // 3 milisaniye bekle
digitalWrite(buzzerPin, LOW); // Buzzer'ı kapatmak için LOW yap
delay(3); //
}
Bu döngü, buzzer'ın her biri 3 milisaniye süren 50 kez bip sesi çıkarmasını sağlar. Döngü tamamlandıktan sonra, tekrarlamadan önce 1 saniyelik bir gecikme vardır.
Gösterim / Beklentiler
Bağlantı ve kod doğru şekilde kurulduğunda, ESP32'ye güç vermek buzzer'ı etkinleştirmeli ve bir dizi bip sesi üretmelidir. Buzzer ses çıkarmazsa, bağlantıları, özellikle transistörün ve direncin yönünü kontrol edin. Kodda doğru GPIO pininin kullanıldığından ve güç kaynağının yeterli olduğundan emin olun (videoda 01:30'da).
Video Zaman Damgaları
- 00:00 Başlangıç
- 1:45 Buzzer programı tanıtımı
- 5:57 Buzzer ve S8050 Transistör bağlantısı
- 9:57 ESP32 Buzzer için Arduino Kodu
- 12:52 ESP32 kartı ve COM portu seçimi
- 14:05 3.1 Buzzer projesi gösterimi
const int buzzerPin = 14; // the buzzer pin
void setup()
{
pinMode(buzzerPin, OUTPUT); // Set as output
}
void loop()
{
for (int i = 0; i < 50; i++) // Loop 50 times and play a short tone each time
{
digitalWrite(buzzerPin, HIGH); // Set to HIGH to make the buzzer sound
delay(3); // Wait for 3 milliseconds
digitalWrite(buzzerPin, LOW); // LOW to turn off the buzzer
delay(3); //
}
delay(1000); // Wait for 1s before starting the next loop
}
Common Course Links
Common Course Files
Kaynaklar ve referanslar
-
BelgelendirmeESP32 Tutorial 13/55- SunFounder Resouce page for Buzzerdocs.sunfounder.com
Dosyalar📁
Veri Sayfası (pdf)
-
Buzzer MB12A05 C96093 datasheet
Buzzer_MB12A05_C96093_datasheet.pdf0.97 MB -
NPN Epitaxial Silicon Transistor SS8050 datasheet
SS8050-datasheet.pdf0.19 MB