Arkadaşlar merhaba, bu videoda oyun veya tür fark etmeden her türlü programda arkadaşlarınızı trolleyebileceğiniz, beraber çizdiğimiz kart ile birkaç deneme yaptık. Kartın yapım aşamaları ve testlerini izleyeceğiniz bu videoda iyi seyirler 🙂

Eğer siz de aynı projeyi yapmak isterseniz bu yazıyı okumaya devam edebilirsiniz. Kolay gelsin 🙂



MALZEMELER

Bu projeyi yapmak için:

  1. Arduino Leonardo R3 – Klon / Arduino Pro Micro Klon 5V 16 Mhz
  2. IR Alıcı Verici Kumanda Seti – Arduino Uyumlu
  3. HC05 Bluetooth Modülü Kartı – Arduino Uyumlu / HM-19 Bluetooth Modülü

Not: Biz kartımızda çok daha düşük güç tüketimi ve daha gelişmiş haberleşme özelliklerinden dolayı HM-19 kullandık ancak bizim modülümüz karta lehimlenmesi gerektiği için breadboardda kullanılması çok yorucu ve zahmetli olacağı için siz böyle HM-19 bir modül kullanabilirsiniz veya kodda ve şemada değişiklik yapmadan HC-05’i de kullanabilirsiniz.

Eğer ilk Arduino projeniz bu proje ise Arduino Nasıl İndirilir konusuna bir göz atın.

Kod ve şema anlatımına gelmeden önce gerekli kütüphaneleri kurmamız lazım eğer Arduino ide’ye nasıl kütüphane kurulur bilmiyorsanız buradan öğrenebilirsiniz. Arduino’ya Nasıl Kod Yüklenir?

KÜTÜPHANE

IRremote

DEVRE ŞEMASI

troll pcb kartı yapımı

KODUN İNCELENMESİ

İlk olarak kütüphanelerimizi ve çalışmaları için gerekli kodları yazıyoruz.

/* klavye kütüphanesi */
#include <Keyboard.h>
/* kızılötesi alıcı kütüphanesi ve tanımlamalar */
#include <IRremote.h>

IRrecv irrecv(11);
decode_results results;

/* bt için yazılımsal seri port kütüphanesi ve tanımlamalar*/
#include <SoftwareSerial.h>
SoftwareSerial mySerial(8, 5);

Şimdi ise kumandadan gelen sinyallerimizin HEX kodlarını tanımlıyoruz.

/* kumanda tuşları için tanımlamalar*/
#define BUTON1 0x20DF8877
#define BUTON2 0x20DF48B7
#define BUTON3 0x20DFC837

#define BUTON6 0x20DF6897

Biz burada kendi kumandamıza göre tanımladık ancak sizin kumandanızın HEX kodları farklı olabilir o yüzden önce buradan kendi kumandanızın kodlarını öğrenmeniz gerekecek.

#include <IRremote.h>
IRrecv irrecv(11);

decode_results results;

void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); //Receiver'i baslatir
}
void loop()
{
  if (irrecv.decode(&results))
  {
    Serial.println(results.value, HEX); 
    irrecv.resume();
  }
}

Daha sonra ise kumandanızın tuşlarının HEX kodlarını seri monitörden görebilir ve tanımlamanızı onlara göre yapabilirsiniz.

Setup kısmında ise gerekli fonksiyonları başlatıyoruz

 void setup()
{
  Serial.begin(9600); //pc ile haberleşme
  mySerial.begin(9600); // bt ile haberleşme
  irrecv.enableIRIn(); //kızılötesi alıcı başlatma
  Keyboard.begin(); // klavye başlatma
}

Loop kısmına geldiğimizde ise öncelikle IR okumayı başlatıp daha sonra kumandamızdan gelen sinyale göre tuşlara basılmasını sağlamalıyız.

if (irrecv.decode(&results))
  {
    Serial.println(results.value, HEX);

    switch (results.value) {
      case BUTON1: //button 1'e basıldığında
        Keyboard.print("y");

      case BUTON2: //button 1'e basıldığında
        Keyboard.press(KEY_RETURN);
        Keyboard.releaseAll();
        break;

      case BUTON3: //button 1'e basıldığında
        Keyboard.press(KEY_LEFT_ALT);
        Keyboard.press(KEY_F4);
        Keyboard.releaseAll();
        break;

      case BUTON6: //button 1'e basıldığında
        Keyboard.write("y");


        break;

    }
    irrecv.resume();
  }

Buradaki Keyboard.press veya Keyboard.print kodları ile oynayarak istediğiniz oyuna veya programa özel hale getireblirsiniz.

Son olarak Bluetooth haberleşmemizi kontrol ediyoruz.

 if (mySerial.available()) {
    int inByte = mySerial.read();
    Serial.write(inByte);
    Keyboard.write(inByte);
  }

ARDUINO KODU

Burada ise kodumuzun tamamı var:

EAGLE DOSYALARI

ŞematikBoard

*Dikkat: Videoda da gördüğünüz hata henüz kartta giderilmediği için yukarıdaki dosyalar bu hatanın giderilmemiş halindedir.*

KULLANDIĞIM MALZEMELER

👉Videoda Kullandığım Atölye Ekipmanlarım:
1 — ⭐Multimetre https://ban.ggood.vip/WDYw
2 — ⭐USB Test Cihazı https://ban.ggood.vip/WDYC
3 — ⭐Mikroskop https://ban.ggood.vip/WDn6
4 — Yankeski: https://ban.ggood.vip/WDYv
5 — PCB Tutucu: https://ban.ggood.vip/WDYx
6 — Silikon Mat: https://ban.ggood.vip/WDYy
7 — Sıcak Hava Tabancası: https://ban.ggood.vip/WDYz
8 — Büyüteç: https://ban.ggood.vip/WDYA
9 — Cımbız Seti: https://ban.ggood.vip/WDYB
⭐Tüm Elektronik Komponentler İçin Kupon: BGRUMB15

👉 Instagram: https://www.instagram.com/lezzetlirobottarifleri/
👉 Discord sunucusu: https://discord.gg/8MVnu59tkx

*Videomuzun blog yazısını yazan Yusuf Coşgun’a teşekkürler!