⚡ Arduino Projeleri Başlangıç ⏱ Tahmini: 30 dk

Buton ile LED Kontrolü: Bas-Çek ve Tıklama Mantığı

Push buton kullanarak dijital giriş okuma, basıldığında yanan, bırakıldığında sönen buton kontrollü devre.

📅 16 Ekim 2026 • 👁 1 kez görüntülendi • ✅ Ücretsiz Ders

Buton ile LED Kontrolü: Bas-Çek ve Tıklama Mantığı

Klavyedeki tuşlar, oyun konsollarındaki kollar nasıl çalışır? Bu derste ilk fiziksel giriş (Input) elemanımız olan bas-çek (Push Button) butonunu Arduino'ya bağlayacağız.

---

🎯 Projenin Amacı ve Kazanımları

  • Dijital giriş okuma (`digitalRead()`) fonksiyonunu öğrenmek.
  • Yüzen pin (Floating Pin) sorununu ve dahili Pull-Up direncini (`INPUT_PULLUP`) anlamak.
  • Butona basıldığında anında tepki veren kodlar yazmak.
  • ---

    🧰 Gerekli Malzemeler

    1. 1x Arduino Uno

    2. 1x 4 Bacaklı Push Buton

    3. 1x LED + 1x 220Ω Direnç

    4. Breadboard ve Jumper Telleri

    ---

    🔌 Devre Şeması ve Pin Bağlantı Tabloları

    | Eleman | Arduino Pini | Açıklama |

    | :--- | :--- | :--- |

    | **Buton 1. Bacak** | Dijital Pin 2 | Giriş sinyali okuma pini |

    | **Buton 2. Bacak** | GND | Toprak hattı (Dahili Pull-up kullanılacak) |

    | **LED Anot (+)** | Dijital Pin 8 | 220Ω direnç üzerinden |

    | **LED Katot (-)** | GND | Toprak |

    ---

    💻 Tam ve Çalışan Kodlar (C++, MicroPython, Scratch blok açıklamaları)

    const int butonPin = 2;
    const int ledPin = 8;
    
    void setup() {
      pinMode(ledPin, OUTPUT);
      // INPUT_PULLUP: Arduino'nun içindeki gizli direnci açar
      // Butona basılmadığında pin HIGH, basıldığında LOW olur!
      pinMode(butonPin, INPUT_PULLUP);
    }
    
    void loop() {
      int butonDurumu = digitalRead(butonPin);
    
      // Butona basıldıysa (INPUT_PULLUP olduğu için LOW basıldı demektir)
      if (butonDurumu == LOW) {
        digitalWrite(ledPin, HIGH); // LED'i Yak
      } else {
        digitalWrite(ledPin, LOW);  // LED'i Söndür
      }
    }

    ---

    🛠️ Adım Adım Yapılış Aşamaları

    1. Butonu breadboard'un orta kanalına ayakları iki tarafa yayılacak şekilde oturtun.

    2. Bir bacağını Arduino Pin 2'ye, çapraz bacağını GND'ye bağlayın.

    3. LED devresini Pin 8'e kurun.

    4. Kodu yükleyin. Butona parmağınızla bastığınız anda LED yanacak, bıraktığınızda sönecektir.

    ---

    💡 Nasıl Çalışır? (Bilimsel Çalışma Prensibi)

    `INPUT_PULLUP` modu sayesinde Arduino içerideki 20kΩ dirençle pini 5V seviyesinde tutar. Butona basıldığında hat GND'ye bağlanır ve pin voltajı 0V'a (LOW) düşer. Mikrodenetleyici bu voltaj düşüşünü milisaniyeler içinde fark eder.

    ---

    🚀 Kendini Geliştirme Görevi (Challenge)

    Kodu öyle değiştirin ki buton bir elektrik anahtarı gibi çalışsın: Bir kez basıp bırakınca LED yansın, tekrar basıp bırakınca LED sönsün (Toggle Anahtar)!

    Sorun mu yaşadınız veya aklınıza takılan bir nokta mı var?

    Discord topluluğumuza katılarak diğer geliştiriciler ve eğitmenlerle yardımlaşabilirsiniz.

    Discord'da Soru Sor →