arduino-led-yakma

Arduino “Buton Kullanımı”

Merhaba arkadaşlar arduino projelerimize devam ediyoruz bugün projelerimize devam ediyor ve buton kullanımını öğreneceğiz. Buton kullanımı günlük hayatta da çokca kullandığımız ve arduinoda birçok proje de işimize yarayan bir devre elemanıdır.Butonu iki ayrı tek gibi düşünebiliriz tel kapanınca akım geçiyor açılınca akım kesiliyor.Siz elinizi butondan çektiğiniz zaman eski haline döner.Kullanıcı düğmedan elini çektiğinde devrenin eski konumuna dönmesi için, pull up ve pull down denilen direnç bağlantıları kullanılır. Pull up ve pull down direnç ismi değil, dirençlerin bağlanma şeklidir. Genellikle 10K ohm direnç kullanılır.

Pull Down Direnç: Düğmeye basıldığında gerilim kaynağıyla Arduino’nun girişi kısa devre olur. Elinizi düğmeden çektiğinizde hat üzerinde hâlâ enerji kalır. Bu enerji düğmeye basılmadığı durumunda bile Arduino’nun düğmeye basılmış gibi davranmasına neden olur. Bu enerjinin yok edilmesi için hat genellikle 10K ohm’luk bir direnç ile toprağa bağlanır. Bu dirence pull down direnç denir.

Pull Up Direnç: Düğmeye basılmadığı durumlarda Arduino’nun giriş pini 5 volt düzeyindedir. Düğmeye basıldığında akım, Arduino’nun giriş pini yerine doğrudan toprağa ulaşmaktadır. Böylece pull-down direnç sistemini tam tersi çalışmaktadır. Arduino düğmeye basıldığında 0, düğmeye basılmadığında 1 değerini görmektedir. Pull-up direnci kullanma amacımız ise, düğmeye basıldığında toprak ve besleme hattının direkt olarak kısa devre olmasını engellemektir. Pull-down dirençte olduğu gibi pull-up dirençlerde genellikle 10K ohm olur.

 

Şimdi de sizinle birlikte buton ile çalışan basit bir led yakma devrasi kuralım.

Bu uygulamayı yapmak için ihtiyacınız olan malzemeler:

  • 1 x Arduino
  • 1 x düğme
  • 1 x 10K ohm direnç
  • 1 x LED
  • 1 x 220 ohm direnç
  • 1 x breadboard (gofret)
Arduino Fritzing

Bu devredeki düğmenin amacı LED’i kontrol etmek olacaktır. Kullanıcı düğmeye bastığında LED yanıyorsa sönecek, sönük ise de yanacaktır. Burada bilmemiz gereken bir diğer nokta ARK olaylarıdır. Düğmeye basıldığı anda oluşan atlamalardan dolayı Arduino çok kısa zamanda yüzlerce kere düğmeye basıldığını sanmaktadır. Bu istenmeyen durumdan kurtulmak için basıldığı anda Arduino’yu biraz bekleteceğiz (delay fonksiyonu ile). Böylece devremiz, düğmeye basıldığında oluşan istenmeyen dalgalanmalardan korunmuş olacaktır. Delay fonksiyonuna yazılan bekleme zamanı insanın fark edemeyeceği kadar kısa bir süredir.

Düğmeye her basıldığında yeni bir işlem yapılmasını istiyoruz. Bunu sağlamak için düğmeye basıldığında yapılması gereken işlem yapıldıktan sonra, kişinin düğmeden elini çekmesi beklenmelidir. Eğer bunu yapmazsak kişi, düğmeye bastığında LED’i sürekli yanıp sönecektir. Bu işlem o kadar hızlı olacaktır ki insan gözü bunu algılayamaz.

Düğmenin durumu digitalRead fonksiyonu ile kontrol edilecektir. Okunan düğme değeri ‘dugmeDurumu’ değişkenine yüklenecektir. Eğer düğmeye basılmışsa LED’in durumunu değiştireceğiz. LED’in düğmeye her basıldığında konumunun değişmesi için, LED durumu bir değişkene atanır ve LED’in eski durumuna göre LED farklı konuma getirilir.

 

Arduino kodları:

Arduino buton
Arduino buton

 

 

 

 

 

Hakkında: Emre Çiçekyurt

İLGİNİZİ ÇEKEBİLİR

java-ascii-karakterine-cevirme-fonksiyonu

Java – Yazıyı ASCII Karakterine Çevirme Fonksiyonu

Merhaba arkadaşlar, bu yazımızda klavyeden girdiğimiz bir yazıyı nasıl ASCII karakterlerine çevireceğimizi göreceğiz. Bu işlemi …

Kimler Neler Demiş?

avatar
  Subscribe  
Bildir