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

11 Aralık 2019 Çarşamba

Potansiyometre İle Led Parlaklığı Ayarlama

Bu uygulamada potansiyometre ile ledin parlaklığının ayarlanması sağlanmıştır.  Bu uygulamada , Arduino da analog giriş çıkış pini kullanılmıştır.

Bu uygulamada amaç, potansiyometreden gelen analog sinyali ölçerek sinyalin büyüklüğü oranında ledin parlaklığını ayarlamaktır.

Devrede kullanılan malzemeler şunlardır:
  • 1 adet  Arduino UNO
  • Breadboard
  • 1 adet LED
  • 1 adet 220 ohm Direnç 
  • 1 adet 10K Potansiyometre
  • İstediğiniz Renk Ve Boyutta Atlama Kablosu
Devre şeması aşağıdaki gibidir: 

pot ile led kontrol



Program kodları aşağıdaki gibidir: 

int ledPin=5;              // dijital 5 pinine ledPin ismi verildi
int potPin=A0;            // AO pinine potPin ismi verildi
int potDegeri;            // potDegeri değişkeni tanımlandı

void setup(){

}

void loop(){
  potDegeri=analogRead(potPin);
  potDegeri=map(potDegeri, 0, 1023, 0, 255);
  analogWrite(ledPin, potDegeri);
  delay(10);
}



Program kodlarındaki bazı önemli satırların çalışma mantığı aşağıda gösterilmiştir:

potDegeri=analogRead(potPin);    analogRead() fonksiyonu ile potansiyometrePin adlı pinden değer okunuyor ve potansiyometreDegeri adlı değişkene kaydediliyor.Okunan bu değer 0-1023 arasında bir değerdir.


potDegeri=map(potDegeri, 0, 1023, 0, 255);  potDegeri 0-1023 arasında bir sayıdır.  Led’e sinyal göndereceğimiz PWM pini 0-255 arasında bir değer alabiliyor. Bu nedenle 0-1023 arasındaki sayısıları,  0-255 arası adımlara bölüyoruz. Bu işi yapan özel fonksiyonun adı map() fonksiyonudur.

analogWrite(ledPin, potDegeri); analogWrite() komutu pinlere analog sinyal göndermek için kullanılır. potDegeri değişkenindeki değeri ledPin adlı pine gönderiyoruz. Led potansiyometreden gelen değer kadar parlak yanıyor.


Kaynaklar:


Arduino ile Buzzer Uygulaması

Bu uygulamada buzzer 'ın  ARDUİNO ile nasıl kontrol edildiği anlatılmıştır.

Buzzer; projelerimizde uyarı sesleri çıkarabilmek amacı ile kullanılan mini hoparlördür. 2 çeşit buzzer vardır. Bunlar, aktif ve pasif buzzerlardır. Aktif buzzer istenilen notaya göre ses çıkarabilir ve programla çeşitli müziklerin yapılması mümkün olan buzzerlardır. Pasif buzzer ise, sadece tek bir tonda ses çıkabilen ve sadece uyarı amacı ile kullanılan buzzerlardır.

Devrede kullanılan malzemeler şunlardır:
  • Arduino UNO x1
  • Breadboard
  • 1 adet Buzzer 
  • İstediğiniz Renk Ve Boyutta Atlama Kablosu

Devre şeması aşağıdaki gibidir: 

arduino ile buzzer uygulaması

Devrede buzzer elemanı Arduino nun 9 nolu pinine bağlanmıştır ve buzzer 'ın belirli saniye aralıklarıyla ses vermesi sağlanmıştır. 

Program kodları aşağıdaki gibidir: 

int buzzer=9; //   buzzer   9 numaralı dijital pine bağlandı

void setup()

{

     pinMode(buzzer, OUTPUT); // 9 numaralı pin çıkış olarak tanımlandı

}

void loop()

{

     digitalWrite(buzzer, HIGH);
     delay(2000);   
     digitalWrite(buzzer, LOW);
     delay(2000);



Program kodlarına bakılacak olunursa , buzzer ın 2 saniye ses çıkarıp 2 saniye sonra sesi kestiği görülmüştür.  










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