Sadece LED yakıp söndürmek bir süre sonra sıkıcı olabilir. Projelerimize "ses" katma zamanı! Arduino'nun tone() fonksiyonunu kullanarak buzzer'a istediğimiz frekansta (incelikte) şarkı söyletebiliriz.
1. Hatırlatma: Aktif mi, Pasif mi?
Arduino ile müzik (melodi) yapmak istiyorsanız Pasif Buzzer daha yeteneklidir. Ama elinizde Aktif Buzzer varsa da üzülmeyin, onu da "Bip-Bip" alarmı olarak kullanacağız.
2. Arduino Bağlantısı
Buzzer'ın artısını (+) herhangi bir dijital pine (Örn: 8), eksisini (-) GND'ye bağlarız.
3. Yazılım: tone() Komutu
Arduino'da ses çıkarmak için özel bir komut vardır:
- 🎵 Frekans: Sesin inceliğidir. (262=Do, 440=La vb.)
- ⏱️ Süre: Sesin ne kadar süreceği (milisaniye).
Örnek Proje: Polis Sireni 🚓
Bu kod, buzzer'ın sesini inceden kalına ve kalından inceye doğru kaydırarak siren etkisi yaratır.
const int buzzerPin = 8; // Buzzer 8. Pine bağlı void setup() { pinMode(buzzerPin, OUTPUT); } void loop() { // Ses Frekansını Yükselt (İncelen Ses) for (int i = 200; i <= 800; i++) { tone(buzzerPin, i); // i frekansında ses ver delay(2); // Çok kısa bekle (tarama hızı) } // Ses Frekansını Düşür (Kalınlaşan Ses) for (int i = 800; i >= 200; i--) { tone(buzzerPin, i); delay(2); } }
4. Notalar ve Frekanslar
Kendi melodinizi yazmak isterseniz aşağıdaki frekans tablosunu kullanabilirsiniz.
| Nota | Frekans (Hz) | Kod Karşılığı |
|---|---|---|
| Do (C) | 262 | tone(8, 262); |
| Re (D) | 294 | tone(8, 294); |
| Mi (E) | 330 | tone(8, 330); |
| Fa (F) | 349 | tone(8, 349); |
| Sol (G) | 392 | tone(8, 392); |
| La (A) | 440 | tone(8, 440); |
| Si (B) | 494 | tone(8, 494); |
| İnce Do | 523 | tone(8, 523); |
💡 Susturmak İçin: noTone()
Eğer buzzer susmuyorsa veya bir sonraki notaya geçmeden önce sessizlik istiyorsanız noTone(pinNumarası); komutunu kullanın.