back to top

Esp32 ile GamePad Nasıl Yapılır? | Kendi Yaptığın Kontrolcü ile Rakipleri Ez Geç!

Selam Makerlar!

Teknolojinin hızla gelişmesiyle birlikte, Android işletim sistemi tabletlerden telefonlara, akıllı televizyonlardan oyun konsollarına kadar geniş bir ürün yelpazesinde yaygın bir hale geldi. Android cihazlar, özellikle mobil oyun dünyasının büyümesiyle birlikte, oyun oynama deneyimini her an her yerde erişilebilir kılmaya başladı.

Peki, bu deneyimi bir adım ileriye taşımaya ne dersiniz? Kendi gamepad’inizi yaparak oyun dünyasında fark yaratabilirsiniz! Bu projede, güçlü ve esnek yapısıyla tanınan ESP32 geliştirme kartı ile Android cihazlarınızda kullanabileceğiniz, gamepad yapacağız. Bu gamepad sayesinde oyunları daha rahat oynayabilir, Android cihazlarınızda size özel bir deneyim oluşturabilirsiniz. Hazırsanız, bu heyecan verici projeye ilk adımı atalım!

Gerekli Malzemeler

Neden Esp32?

ESP32, modern projelerde sıkça tercih edilen güçlü bir geliştirme kartıdır ve bu projede de birçok avantaj sunar:

  1. Çift Modlu İletişim: ESP32, hem WiFi hem de Bluetooth özellikleri ile donatılmıştır. Bu özellikler, cihazlar arasında kablosuz iletişim kurmayı mümkün kılar. Ancak, bu projede kablolu bir bağlantı kullansak da, ESP32’nin çok yönlülüğü gelecekteki projeler için büyük bir avantaj sağlar.
  2. Güçlü İşlemci: 240 MHz’e kadar çalışan çift çekirdekli bir işlemciye sahip olan ESP32, karmaşık işlemleri hızlı bir şekilde gerçekleştirebilir. Bu, oyun oynarken hızlı tepki süreleri ve akıcı bir deneyim için önemlidir.
  3. Geniş Geliştirme Desteği: ESP32, Arduino IDE ve diğer popüler geliştirme ortamları ile uyumludur. Bu, kod yazmayı ve geliştirmeyi daha erişilebilir hale getirir. Ayrıca, ESP32 için geniş bir topluluk desteği ve kaynak bulunur, bu da projeye başlarken faydalıdır.
  4. Düşük Güç Tüketimi: Enerji verimliliği, uzun süreli projeler için kritiktir. ESP32, düşük güç modları sayesinde projelerinizde uzun pil ömrü sağlar.
  5. Genişletilebilirlik: ESP32, birçok sensör ve modül ile entegre olma yeteneği sunar. Bu, projeye yeni özellikler eklemeyi kolaylaştırır. İleride daha fazla buton, sensör veya başka bileşenler eklemek istediğinizde bu özellik, projeyi genişletme fırsatı sunar.

Bu nedenlerle, ESP32, bu projede tercih edilmesi gereken mükemmel bir geliştirme kartıdır. Sağladığı güçlü performans ve çok yönlülük sayesinde, oyun deneyiminizi zenginleştirmek için ihtiyaç duyduğunuz tüm özellikleri sunar. Kendi gamepad’inizi tasarlarken, ESP32’nin sunduğu esneklik ve genişletilebilirlik sayesinde projelerinizi daha da geliştirme fırsatına sahip olacaksınız. Bu kartla birlikte, elektronik becerilerinizi artırabilir ve yaratıcı projelere imza atabilirsiniz.

Devre Şeması

Esp32 Kodları

#include <BleGamepad.h>

const int buttonPin = 4;
const int button2Pin = 5;
const int button3Pin = 15;
const int button4Pin = 13;
const int joyXPin = 32;

// BLE gamepad nesnesi oluşturuyoruz
BleGamepad bleGamepad;

void setup() {
  Serial.begin(115200);

  pinMode(buttonPin, INPUT_PULLUP);
  pinMode(button2Pin, INPUT_PULLUP);
  pinMode(button3Pin, INPUT_PULLUP);
  pinMode(button4Pin, INPUT_PULLUP);

  // BLE Gamepad başlat
  bleGamepad.begin();
}

void loop() {
  if (digitalRead(buttonPin) == LOW) {
    bleGamepad.press(1);  // Buton 1'e basıldı
  } else {
    bleGamepad.release(1);  // Buton 1 bırakıldı
  }

  if (digitalRead(button2Pin) == LOW) {
    bleGamepad.press(2);
  } else {
    bleGamepad.release(2);
  }

  if (digitalRead(button3Pin) == LOW) {
    bleGamepad.press(3);
  } else {
    bleGamepad.release(3);
  }

  if (digitalRead(button4Pin) == LOW) {
    bleGamepad.press(4);
  } else {
    bleGamepad.release(4);
  }

  int joyX = analogRead(joyXPin);

  int mappedJoyX = map(joyX, 0, 4095, -32767, 32767);

  bleGamepad.setX(mappedJoyX);

  // BLE Gamepad güncelle
  bleGamepad.sendReport();

  delay(10);
}

Tebrikler! Kendi ESP32 tabanlı kablolu gamepad‘inizi başarıyla tamamladınız. Bu proje sayesinde hem temel elektronik becerilerinizi geliştirdiniz hem de oyun oynama deneyiminizi bir üst seviyeye çıkardınız. Artık Android cihazlarınızda, kendi yaptığınız bir kontrolcü ile oyun oynayabilir ve yaptığınız üründen aldığınız keyfi ikiye katlayabilirsiniz.

Projeyi tamamladıktan sonra, kontrolcünüzün tuşlarını özelleştirebilir, daha fazla buton ekleyebilir ya da joystick ayarlarını değiştirebilirsiniz. Gamepad’inizi geliştirmeye açık bir yapıda tutarak farklı projelere de entegre edebilirsiniz. Örneğin, oyun oynamanın dışında bu kontrolcü ile robotik projeler geliştirmek ya da medya kontrolcüsü olarak kullanmak mümkün.

Unutmayın, bu sadece bir başlangıç. Elektronik ve maker dünyasında keşfedilecek daha birçok proje ve fikir var! Diğer projelerimizde de yer alan adım adım rehberler, yeni başlayanlardan ileri seviye makerlara kadar herkese hitap ediyor. Gelecek yazılarımızda daha fazla ilham verici projeyi keşfetmek ve yeni fikirler öğrenmek için blogumuzu takip etmeyi unutmayın!

Şimdi, oyun oynamanın tadını çıkarın ve yaratıcılığınızı keşfetmeye devam edin!

Son Çıkan Yazılar

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz