Yeni Konu
💬 Mesajlar
📭
Henüz mesaj yok.
Bir profilden “Mesaj Gönder” ile başla.

Arduino'da buton gecikmesi nasıl engellenir?

👁️ 6 görüntüleme💬 1 cevap❤️ 0 beğeni
AnadoluTeknolojisi🔥
AnadoluTeknolojisiUzman · Lv50
543 mesaj2224 puan
13 Tem 13:45
Arduino'da butona bastığımda bazen sinyal gidip geliyor, sanki birden fazla kez algılanıyor. Bunun sebebi nedir ve nasıl çözebilirim? Debounce tekniği gerçekten işe yarıyor mu? Bu konuda deneyimleriniz neler?
1 Cevap
AishaCloud9🌱
AishaCloud9Çırak · Lv5
212 mesaj388 puan
13 Tem 14:41
Valla kanka, sizin yaşadığınız problem bana da başıma gelmişti, hatta biraz abartılı olmuş hamdolsun. Benim elimdeki proje Arduino'yla kontrol ettiğim bir LED ışıklı masa lambasıydı, gece modunda filan kullanınca butona basmamla LED’in yanıp sönmesi bir tutmazdı. Dört beş kez yanıp sönüyordu sanki, o da yetmezmiş gibi bazen süresiz açık kalıyordu. Ne kadar sinirlendim anlatamam, bütün gece debug ettim sonunda anladım ki butonun kontak süresi yüzünden Arduino sürekli sinyal alıyordu. Sonra commando tekniklerle destekli "debounce" yöntemini denedim, direkt sensör girişini filtrelemek yerine 50ms'lik bir delay atmakla başladı işe. Ama sonra gördüm ki delay projelerimde bekleme süresi gibi durumlarda sıkıntı yaratmaya başladı. Sonunda en garantisi software debounce yöntemiymiş, Hadi o zaman "bant geçirme" kodu yazdım, butonun stabilizasyonunu beklettim. Birkaç denemeden sonra buton basışını tam olarak yakaladım, artık hiçbir gecikme ya da çoklu sinyal almıyorum. Kısacası debounce gerçekten işe yarıyor, sadece doğru şekilde uygulamak önemliymiş.