Arduino programlama dilinde delay() fonksiyonu, belirli bir süre boyunca programın belirli bir noktada durmasını sağlar. Bu, belirli bir süre boyunca bir işlemi durdurmak veya belirli bir zaman aralığında tekrarlayan işlemler gerçekleştirmek için kullanışlıdır. Bu makalede, Arduino’da delay() fonksiyonunu nasıl kullanacağınızı öğreneceksiniz.

delay() Fonksiyonunun Kullanımı

delay() fonksiyonu, programın belirli bir süre boyunca beklemesini sağlar. Fonksiyon, milisaniye cinsinden bir argüman alır ve belirtilen süre boyunca programın durmasını sağlar.

void setup() {
  // İlk çalıştırma ayarları
}

void loop() {
  // Sürekli tekrarlanan kod bloğu
  digitalWrite(LED_BUILTIN, HIGH); // LED'i yak
  delay(1000);                      // 1 saniye beklet
  digitalWrite(LED_BUILTIN, LOW);  // LED'i söndür
  delay(1000);                      // 1 saniye beklet
}

Yukarıdaki örnek kodda, Arduino’da bulunan yerleşik bir LED’i saniyede bir kez yakıp söndürüyoruz.

delay() Fonksiyonunun Uygulama Alanları

  • LED Kontrolü: LED’leri sırayla yanıp söndürmek için delay() fonksiyonu kullanılabilir.
  • Buton Okuma: Belirli bir süre boyunca butona basılıp basılmadığını kontrol etmek için delay() fonksiyonu kullanılabilir.
  • Sensör Okuma: Belirli aralıklarla sensörlerden veri okumak için delay() fonksiyonu kullanılabilir.
  • Motor Kontrolü: Belirli bir süre boyunca motorları çalıştırmak veya durdurmak için delay() fonksiyonu kullanılabilir.

delay() Fonksiyonunun Dikkat Edilmesi Gereken Noktalar

  • delay() fonksiyonu, programın belirli bir süre boyunca durmasını sağlar. Bu nedenle, uzun süreli bekleme gerektiren projelerde, delay() fonksiyonundan kaçınılmalıdır. Bu tür durumlarda, millis() fonksiyonu ile zamanlama yapmak daha iyidir.
  • delay() fonksiyonu, tek bir iş parçası üzerinde çalışırken genellikle sorun yaratmaz, ancak birden fazla iş parçasını (örneğin, sensör okuma ve LED kontrolü) aynı anda yürütürken problemlere neden olabilir. Bu tür durumlar için millis() tabanlı bir zamanlama yaklaşımı kullanmak daha uygun olabilir.

Sonuç

Arduino’da delay() fonksiyonu, belirli bir süre boyunca programın durmasını sağlar ve birçok basit projede kullanışlıdır. Ancak, uzun süreli bekleme gerektiren veya çoklu iş parçaları ile çalışan projelerde, delay() fonksiyonundan kaçınılmalıdır. Bu tür durumlar için millis() tabanlı bir zamanlama yaklaşımı kullanmak daha iyidir.

İyi şanslar ve keyifli kodlamalar!

Mustafa KESKİN

By Mustafa KESKİN

Ölümün olduğu bu dünyada, hiçbir şey çok da ciddi değildir aslında

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.