Pull-Up / Pull-Down Direnç Nedir ? Neden Kullanılır ?
Türkçe karşılığı yukarı ve aşağı çekmek olarak adlandırılan bir direnç sistemidir. Elektronik mantık devrelerinde, yukarı çekme (pull-up) veya aşağı çekme (pull-down) dirençleri bir sinyal için bilinen bir durumu sağlamak için kullanılırlar. Tipik olarak sonraki bileşenlerin toprağa veya VCC'ye bağlantısını fiziksel olarak kesen anahtarlar ve transistörler gibi bileşenlerle kombinasyon halinde kullanılırlar. Örneğin Arduino üzerinden bir röleyi anahtar ile kontrol etmek istediğimizde anahtarın açık ve kapalı olma durumuna göre rölemizin tetiklenmesini sağlayabiliriz.Ancak bu işlemi pull-up veya pull-down direnci kullanmadan yaparsak, anahtar ne açık ne kapalı yani orta konumdayken 5V ile 0V arasında tutulduğunda cihazın girişi boşta kalır. Bu boşta kalma durumu sonucunda rölenin içerisindeki paletin sürekli dengesiz bir şekilde tetiklendiğini gözlemleyebiliriz. Bu karasız durumun önüne geçmek ve rölenin zarar görmemesi için pull-up veya pull-down dirençleri kullanılır.
İlk bağlantı da pull-up direnci kullanarak butona basılmadığı sürece Arduino pininin sürekli HIGH (Lojik1) konumunda tutulması sağlanır. Butona basıldığında ise Arduino pininde LOW (Lojik0) değeri okunur. İkinci bağlantıda ise pull-down direnci bağlayarak tam tersi durum yani, butona basılmadığı sürece Arduino pini üzerinde sürekli LOW (Lojik0) değeri okunması sağlanır. Butona basıldığı takdirde Arduino pini üzerinde HIGH (Lojik1) değeri okunur. Buton bağlantısında pull-up veya pull-down direnci kullanılmaması durumunda butona basıldığında kısa devre olur.
void setup()
{
pinMode(13,OUTPUT); //Led
pinMode(2,INPUT); //Buton
}
void loop()
{
boolean bas=false;
bas=digitalRead(2);
if(bas==true)
{
digitalWrite(13,HIGH);
}
else
{
digitalWrite(13,LOW);
}
}