arduino eğitimi etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
arduino eğitimi 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.

27 Kasım 2019 Çarşamba

Arduino Değişken Tipleri

Değişkenler arduino hafızasında saklamak istediğimiz verileri tutmak için kullanılırlar. Örnek olarak arduinoyu bir dolap olarak düşünelim. Dolap içerisinde farklı şeyler saklayacağız. Bu dolabın rafları bizim ram belleğimiz olsun. Örneğin kum saklamak istersek bu kumu dolabın rafına öylece boşaltamayız. Öncelikle onu tutabilecek bir kaba ihtiyaç duyarız bu kabımız bizim değişkenimizdir. Veri tipleri ise değişkenin içerisinde tutulabilecek malzeme tipimizdir. Örneğin kumu bez torba ile saklayabiliriz ancak aynı bez torbada su saklayamayız. Çünkü bez torba suyu tutmayacaktır. Bunun için plastik ya da cam şişeye ihtiyacımız var. Tabi her değişken tanımlarken o değişkene de bir isim vermeliyiz, yani dolaba koyduğumuz her kabın üzerine bir etiket yapıştırarak içinde ne olduğunu belirtmek gibi.

Arduino da program yazarken en çok veri tipleri şunlardır: 



int:     Tamsayı
long:  Uzun tamsayı
char:  ASCII karakter
float:  Ondalıklı sayı
Aşağıdaki tabloda Arduino daki kullanılan bütün değişken tipleri ve bunların hangi değerleri tuttuğu gösterilmiştir.

arduino değişken tipleri
-Arduino Değişken Tipleri-


Aşağıdaki tabloda ise değişken tipleri ve bu değişkenlerin tuttuğu değerler örnek olarak gösterilmiştir:



arduino dersleri











Kaynaklar:


https://koddefteri.net/arduino/temel-arduino-dersleri/arduino-degiskenler-ve-veri-tipleri.html

http://www.mikrocore.com/genel/arduino-degiskenler

Temel Arduino Fonksiyonları

Arduino IDE de program yazarken temel bazı fonksiyonların yapılarının iyi bilinmesi gerekir. Fonksiyonlar, bir program içerisinde aynı işlem defalarca yapılıyorsa, her seferinde aynı kodları yazmak yerine o işlem için bir fonksiyon yazılıp o fonksiyonu gereken yerde çağırmaya yarar.


arduino programlama dersleri



Setup() Fonksiyonu:


Değişkenleri başlatmak, pin modlarını başlatmak, kütüphaneleri kullanmak vb. için kullanılır. Setup() fonksiyonu, her bir güç açıldıktan veya Arduino kartının sıfırlanmasından sonra sadece bir kez çalışır.


Loop() Fonksiyonu


Loop() fonksiyonu, setup fonksiyonu çalıştırıldıktan sonra çalıştırılır ve bir sonsuz döngü işlevi görür. Loop fonksiyonun bu sonsuz döngü özelliği, sürekli tekrar edecek olan işlemlerimizin gerçekleşmesini sağlar.


pinMode() Fonksiyonu


Belirtilen pini, bir giriş veya çıkış olarak davranacak şekilde yapılandırır.


digitalWrite() Fonksiyonu


Belirtilen dijital pine HIGH (5V) veya LOW(0V) değerlerini gönderir.


Örnek kullanımı şu şekildedir: 

digitalWrite(13, LOW);    
digitalWrite(5, HIGH);

digitalRead() Fonksiyonu


Digital pinden değer okumak için öncelikle bu pinin modunu  INPUT olarak tanımlamak gerekir. Digital pinden değer okuma işlemi için digitalRead fonksiyonunu kullanılır. 


Örnek kullanım şu şekildedir:

digitalRead(3); // 3 Nolu Pindeki değeri okuyup işlem yaptıracağız.

analogWrite() Fonksiyonu


analogWrite fonksiyonu ile 0-5 volt arasını 256 eşit parçaya bölerek  digital pine farklı değerlerde güç gönderebiliriz. AnalogWrite Fonksiyonu için PWM pinlerini kullanmamız gerekiyor. Arduino uno PWM pinleri : 3, 5, 6, 9, 10, 11



Örnek kullanım şu şekildedir:
analogWrite(6, 255); // 6 Nolu pine 5 volt  gönderir. 
analogWrite(9, 0); // 9 Nolu pine 0 volt gönderir.

analogRead() Fonksiyonu


Analog pinlerden değer okumak için kullanılan fonksiyondur. Analogdan okuna değer 0-1023 arasındadır. Analog pinden değer okuyup okunan değere göre işlem yaptırabiliriz.


Örnek kullanımı şu şekildedir: 


int deger = analogRead(A0);



Kaynaklar:


https://www.bilisimhocasi.com/klavyede-bazi-tuslar-calismiyorsa-neler-yapabiliriz

https://koddefteri.net/arduino/temel-arduino-dersleri/arduino-fonksiyonlar.html