arduino for döngüsü etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
arduino for döngüsü etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

10 Şubat 2026 Salı

Arduino For Döngüsü: En Basit Anlatım! | Sıfırdan Uygulamalı Arduino Kursu | Ders 5

 Arduino öğrenirken en çok ihtiyaç duyacağımız yapılardan biri for döngüsüdür.

Özellikle birden fazla LED’i sırayla yakıp söndürmek, sensörleri art arda okumak veya tekrar eden işlemleri otomatikleştirmek için for döngüsü hayat kurtarır.

Bu yazıda:

✅ For döngüsü mantığını
✅ 8 LED’i tek satır kodla nasıl kontrol edeceğimizi
✅ Kara Şimşek (Knight Rider) LED efekti yapmayı
✅ Tek for döngüsünde çift değişken kullanmayı

en basit haliyle öğreneceğiz.

📺 Ders videosunu buradan izleyebilirsiniz:
YouTube: https://www.youtube.com/watch?v=Gx3XfByu4AM




🔹 For Döngüsü Nedir?

For döngüsü, bir işlemi belirli sayıda tekrar etmek için kullanılır.

Temel yapısı:

for(başlangıç; koşul; artış) { çalışacak kodlar }

Arduino’da çok sık kullanılır çünkü:

  • Aynı işlemi tekrar tekrar yazmayı önler

  • Kodları kısaltır

  • Daha profesyonel görünür

  • Hata ihtimalini azaltır


🟢 Örnek Proje: 8 LED’i Sırayla Yakma (Kara Şimşek Efekti)

Diyelim ki:

  • 0 → 7 arası pinlere 8 LED bağladık

  • LED’ler sırayla yanıp sönecek

Yeni başlayanların yaptığı hata:

pinMode(0, OUTPUT); pinMode(1, OUTPUT); pinMode(2, OUTPUT); ... pinMode(7, OUTPUT);

❌ Çok uzun ve gereksiz.

Bunu tek satıra indirebiliriz.


✅ For ile pinMode Tanımlama

for(int x = 0; x < 8; x++) { pinMode(x, OUTPUT); }

Mantık:

AdımAçıklama
x = 00. pin çıkış yapılır
x = 11. pin çıkış yapılır
......
x = 77. pin çıkış yapılır
x = 8koşul sağlanmaz → döngü biter

👉 Böylece 8 satır kod → 1 satır kod oldu.



📢 Beni takip etmeyi unutmayın
Yeni dersler, projeler ve elektronik içerikler için:


Abone olarak ve takip ederek seriye destek olabilirsiniz 🙌

-----------------------------------------------------------------------------------------------------------------------------

🟢 LED’leri Sırayla Yakma

for(int i = 0; i < 8; i++) { digitalWrite(i, HIGH); delay(500); digitalWrite(i, LOW); }

Ne oluyor?

1️⃣ LED yanıyor
2️⃣ 500 ms bekliyor
3️⃣ LED sönüyor
4️⃣ Sonraki pine geçiyor

Sonuç:
✨ LED’ler sırayla yanıp sönüyor


⚠️ Önemli Hata: Neden 0’dan Başlamalıyız?

Bazı öğrenciler:

for(int i = 1; i < 8; i++)

yazıyor.

Bu durumda:

❌ 0 numaralı pin hiç ayarlanmaz
❌ LED sürekli açık kalabilir

Çünkü Arduino pinleri 0’dan başlar!

Doğrusu:

for(int i = 0; i < 8; i++)

🚀 İleri Seviye: Tek For ile Çift Yönlü LED Efekti

Şimdi eğlenceli kısım 😄
Hem sağdan sola hem soldan sağa aynı anda yakabilir miyiz?

Evet!
Tek for döngüsünde iki değişken kullanabiliriz.


✅ Çift değişkenli for

for(int i = 0, k = 7; i < 8; i++, k--) { digitalWrite(i, HIGH); digitalWrite(k, HIGH); delay(500); digitalWrite(i, LOW); digitalWrite(k, LOW); }

🔥 Nasıl çalışıyor?

ik
07
16
25
34

👉 İki taraftan ortaya doğru yanıyor

Bu efekt:

💡 Kara Şimşek
💡 Robot göz efekti
💡 Animasyonlu LED bar

projelerinde çok kullanılır.


🧠 Öğrenme Tavsiyesi

For döngüsü ezberle öğrenilmez, bol bol pratik gerekir.

Şunları dene:

✔ Sağdan sola
✔ Soldan sağa
✔ İçten dışa
✔ Dıştan içe
✔ Rastgele yanma
✔ PWM ile fade efekti

Kod yazdıkça mantık oturur.


🎯 Küçük Bir Soru (Düşünme Egzersizi)

Projede bazen:

👉 0 numaralı LED sürekli yanık kalabiliyor.

Sence neden olabilir?

İpucu:

  • pinMode hatası

  • döngü sınırı

  • HIGH/LOW sırası

Bunu düşünmek seni gerçekten geliştirir.


✅ Sonuç

Bu derste öğrendiklerimiz:

✅ For döngüsü mantığı
✅ pinMode’u tek satırla ayarlama
✅ LED animasyonu
✅ Çift değişkenli for kullanımı
✅ Daha temiz ve profesyonel Arduino kodu yazma

Artık uzun uzun tekrar eden kodlar yazmana gerek yok.
For döngüsü = kısa + temiz + güçlü kod.

10 Aralık 2019 Salı

Arduino İle Karaşimşek Uygulaması

Bu uygulamada 6 adet ledi butonlar aracılığıyla yakıp söndüren programın kodları yazılıp devre şeması çizilmiştir.

Devrede kullanılan malzemeler şunlardır:

  • Arduino UNO x1
  • Breadboard
  • 6 adet istediğiniz renk LED
  • 6 adet 220 ohm Direnç 
  • İstediğiniz Renk Ve Boyutta Atlama Kablosu
Devre şeması aşağıdaki gibidir:
karasimsek
-Karaşimşek Devresi-

Uygulamada iki adet buton ve 6 adet led diyot kullanılmıştır.  Buton 1 e basıldığında ledler soldan  sağa , buton 2 ye basıldığında ise ledler sağdan sola doğru yanacaktır. Kodlarda değişiklik yaparak programı istediğiniz şekilde değiştirebilirsiniz. 

Program kodları aşağıdaki gibidir: 




int Ledler[] = {3,4,5,6,7,8};
int buton1=12;              //12 nolu pin buton1 olarak tanımlandı
int buton2=13;              //13 nolu pin buton2 olarak tanımlandı

void setup()
{
pinMode(buton1, INPUT);    // buton1 giriş olarak ayarlandı  
pinMode(buton2, INPUT);    // buton2 giriş olarak ayarlandı  

for(int i=0; i<5 ;i++)    
  { 
    pinMode(Ledler[i], OUTPUT);   // LED pinleri cikis olarak ayarlandi 
  }
  
}



void loop()
{
   if(digitalRead(buton1) == true)   //buton1 e basılıp basılmadığını kontrol et 
   {    
     for(int i=0; i<6; i++)
         { /* Tum LEDleri sirayla soldan sağa 100 milisaniye aralıklarla yakip sonduruyoruz */
         digitalWrite(Ledler[i],HIGH);      
         delay(100);                           
         digitalWrite(Ledler[i],LOW);
         delay(100);                  
         }
   }
   

   if(digitalRead(buton2) == true)   //buton 2 ye basılıp basılmadığını kontrol et 
   {    
     for(int i=5; i>=0; i--)
         { /* Tum LEDleri sirayla sağdan sola  100 milisaniye yakip sonduruyoruz */
         digitalWrite(Ledler[i],HIGH);      
         delay(100);                           
         digitalWrite(Ledler[i],LOW);
         delay(100);                  
         }
   }
}