Arduino Buton Kontrol

İnternette araştırdığım pek çok buton kontrol devresi uyguladığım gibi çalışmıyor. Ya pullup direnci istiyor ya da problem çıkarıyor.

Aşağıdaki devrenin böyle bir sorunu yok. Güzel çalışıyor. Pullup direnci gerekmiyor. Çalışmalarınıza kolaylıkla adapte edebilirsiniz.

ARDUINO IDE KODLARI:

// pin tanımlamaları
const int buton1 = 5;     //buton 5 nolu pine bağlı
const int led1 =  12;      //led 12 nolu pine bağlı

// değişkenler
int butonDurum1 = 0;
int ledDurum1=0;

void setup() {
  // pinler giriş mi çıkış mı?
  pinMode(led1, OUTPUT);     
  pinMode(buton1, INPUT_PULLUP); 
}

void loop(){
   // buton durumunu oku (basıldı mı? basılmadı mı ?)
  butonDurum1 = digitalRead(buton1);

   //butona basıldıysa...
  if (butonDurum1 == LOW) {
     //...bir, led açık!
    if ( ledDurum1 == 0){
      digitalWrite(led1, HIGH);
      ledDurum1=1; // ledDurum1 değişkenini değiştir
    }
   
    //...iki, led kapalı!
    else if ( ledDurum1 == 1){
      digitalWrite(led1, LOW);
      ledDurum1=0; // ledDurum1 değişkenini değiştir
    }   
  }
  delay(200); // buton basışları karışmasın diye bekle
}


Yorumlar