Strict Standards: Static function Automattic\Jetpack\My_Jetpack\Product::get_name() should not be abstract in /home/kodlabaf/public_html/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-my-jetpack/src/products/class-product.php on line 141

Strict Standards: Static function Automattic\Jetpack\My_Jetpack\Product::get_title() should not be abstract in /home/kodlabaf/public_html/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-my-jetpack/src/products/class-product.php on line 148

Strict Standards: Static function Automattic\Jetpack\My_Jetpack\Product::get_description() should not be abstract in /home/kodlabaf/public_html/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-my-jetpack/src/products/class-product.php on line 155

Strict Standards: Static function Automattic\Jetpack\My_Jetpack\Product::get_long_description() should not be abstract in /home/kodlabaf/public_html/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-my-jetpack/src/products/class-product.php on line 162

Strict Standards: Static function Automattic\Jetpack\My_Jetpack\Product::get_features() should not be abstract in /home/kodlabaf/public_html/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-my-jetpack/src/products/class-product.php on line 169

Strict Standards: Static function Automattic\Jetpack\My_Jetpack\Product::get_pricing_for_ui() should not be abstract in /home/kodlabaf/public_html/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-my-jetpack/src/products/class-product.php on line 176

Strict Standards: Static function Automattic\Jetpack\My_Jetpack\Product::get_manage_url() should not be abstract in /home/kodlabaf/public_html/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-my-jetpack/src/products/class-product.php on line 183

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/kodlabaf/public_html/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-my-jetpack/src/products/class-product.php:141) in /home/kodlabaf/public_html/wp-content/plugins/pe-recent-posts/pe-recent-posts.php on line 21

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/kodlabaf/public_html/wp-content/plugins/jetpack/jetpack_vendor/automattic/jetpack-my-jetpack/src/products/class-product.php:141) in /home/kodlabaf/public_html/wp-content/plugins/pe-recent-posts/pe-recent-posts.php on line 21
Arduino Kumanda Led Yakma – KodlaBafra

Arduino Kumanda Led Yakma

Arduino Kumanda Led Yakma

Arduino ile kullanabileceğimiz kablosuz haberleşme araçlarından biri de Kızılötesi (IR:InfraRed) ışınlar. Bu ışınlar oldukça kullanışlı. Elektromanyetik spektrumda gözle görünen bölgenin daha düşük enerjili alanında yer alıyor. Evlerimizdeki uzaktan kumadaların çoğu bu sistemi kullanıyor. Bizde bu uygulamamızda kumanda modülünü kullanmayı göreceğiz.

Gerekli malzemeler:

  • Arduino UNO
  • Breadboard
  • IR alıcı-verici kumanda seti
  • Erkek-dişi jumper kablo
  • Erkek-erkek jumper kablo
  • 1 adet LED
  • 1 adet 330 Ω direnç

Devremizi bu şekilde kuruyoruz. Devremizde en çok dikkat edeceğimiz kumanda sensörü alıcısını doğru bacaklarına 5v, GND ve Sinyal bağlamak. Bunun için aşağıdaki şekle göre dikkatli bağlayınız yoksa alıcı bozulabilir.

Kumanda alıcımızı pinlerini doğru takmaya dikkat edelim. Hassas bir alıcı olduğundan yanlış bağlantı yaparsanız kolay bozulur. Özellikle GND ve VCC pinlerini doğru takalım. Devremizi de aşağıdaki gibi kuralım.

Kodlara geçmeden önce kumanda için ilgili kütüphaneyi aşağıdaki bağlantıdan indirelim.

Not: Çizim programında Chq1838 kızıl ötesi alıcının resmi bulunmadığından başka bir kızıl ötesi alıcısı ile devre şeması çizildi.

İlk olarak kumanda tuş değerlerindeki kodları öğrenmek için aşağıdaki kodları yazıyoruz. Kumanda tuş kodlarını Serial Ekrandan bakıp bir kenara not ediyoruz. Sonrasındaki uygulamamızda hangi tuşla ne yapmak istiyorsak onu kullanmak için kodunu eşitlememiz gerekecek. Bir sonraki led uygulamamızda daha iyi anlaşılacak.

#include <IRremote.h>           // Kumanda kütüphanesi ekledik
int RECV_PIN = 2;               // Kumanda alıcı pini 2 ye bağladık
IRrecv irrecv(RECV_PIN);
decode_results results;

void setup() {
  irrecv.enableIRIn();
  Serial.begin(9600);
}
void loop() {
  if (irrecv.decode( & results)) {
    Serial.println(results.value); // Seri ekranda formatta kumanda tuş kodlarını yazdır.
    irrecv.resume();                              // Daha sonraki değer için bekle.
  }
}

Devremizde kumandadan 1 tuşuna bastığımızda led yanacak, 2 tuşuna bastığımızda ledimiz kapancak. ilgili kodları inceleyelim.

#include <IRremote.h>           // Kumanda kütüphanesi ekledik
int RECV_PIN = 2;               // Kumanda alıcı pini 2 ye bağladık
IRrecv irrecv(RECV_PIN);
decode_results results;
int led1 = 9;
#define btn1 16724175
#define btn2 16718055
// buton1 = 16724175
// buton2 = 16718055
void setup() {
  pinMode(led1, OUTPUT);
  Serial.begin(9600);
  irrecv.enableIRIn();
}
void loop() {
  if (irrecv.decode( & results)) {
    Serial.println(results.value); // Seri ekranda hex formatta bu adresi yazdır.
    if (results.value == btn1 ) {
      digitalWrite(led1, HIGH);
    }
    else if (results.value == btn2) {
      digitalWrite(led1, LOW);
    }
    irrecv.resume();                              // Daha sonraki değer için bekle.
  }
}

Yazar hakkında

Orhan Gazi DEMİRCİ administrator

1984 Samsun doğumluyum. Ondokuz Mayıs Üniversitesi Bilgisayar öğretmenliği 2007 Mezunuyum. Bafra İlçe Milli Eğitim Müdürlüğünde Fatih Projesi eğitmenliği görevinde bulunmaktayım. KodlaBafra yürütücülüğü 2017 yılından beri yürütmekteyim. Evli ve bir çocuk babasıyım.