İçindekiler:

Arduino Cep Oyun Konsolu + A-Labirent - Labirent Oyunu: 6 Adım (Resimli)
Arduino Cep Oyun Konsolu + A-Labirent - Labirent Oyunu: 6 Adım (Resimli)

Video: Arduino Cep Oyun Konsolu + A-Labirent - Labirent Oyunu: 6 Adım (Resimli)

Video: Arduino Cep Oyun Konsolu + A-Labirent - Labirent Oyunu: 6 Adım (Resimli)
Video: OYUN SONLARI! 😲 Kimsenin Görmediği 5 Oyun Sonu! NASIL YANİ! 😱 2024, Kasım
Anonim
Arduino Cep Oyun Konsolu + A-Labirent - Labirent Oyunu
Arduino Cep Oyun Konsolu + A-Labirent - Labirent Oyunu

İlk dersime hoş geldiniz

Bugün sizlerle paylaşmak istediğim proje, Arduboy ve benzeri Arduino tabanlı konsollar kadar yetenekli bir cep konsolu haline gelen Arduino labirent oyunu. Açıkta kalan ICSP başlığı sayesinde (veya sizin) gelecekteki oyunlarım ile parlatılabilir.

Birkaç ay önce Arduino'da bir labirent oyunu yapmak için bir fikrim vardı, ancak kodlanmış labirent seti olmadan. Oynadığınız her seviye için yeni bir labirent oluşturabilmelidir, böylece aynı labirenti bir daha asla görmezsiniz:)

Arduino'nun RAM belleği sınırlı olduğu için bunu kodlamak biraz zor oldu ve sonra bunun basit Bo-Taoshi algoritması ile nasıl yapılabileceğine dair birkaç örnek buldum.

Başlangıç noktası olarak kullandığım kod SANUKI UDON ve projesi ATTINY13A KULLANARAK LAbirent JENERATÖRÜ NASIL YAPILIR

Adım 1: Breadboard Prototipleme

Breadboard Prototipleme
Breadboard Prototipleme
Breadboard Prototipleme
Breadboard Prototipleme

Başlangıç noktam, labirentte hareket etmek için yalnızca 4 düğmenin bağlı olduğu küçük bir devre tahtasıydı, ancak daha sonra bunun bir oyun konsolu olması gerektiğine karar verdiğimde birkaç düğme daha ekledim. Daha büyük devre tahtasında 2 düğme daha görebilirsiniz ve daha sonra başlat/duraklat/menü düğmesi olarak kullanılmak üzere üçüncü bir düğme ekledim

2. Adım: Gerekli Parçalar

  • Arduino pro mini / Arduino Uno / Atmega328P çip
  • 28 pinli DIP soketi (opsiyonel)
  • SSD1306 OLED ekran
  • Piezo hoparlör
  • Butonlar - 7 adet
  • Madeni para pil tutucular
  • Geçiş anahtarı
  • teller
  • Prototip pcb (60x40mm)

Adım 3: Breadboard Kablolama / Şematik

Breadboard Kablolama / Şematik
Breadboard Kablolama / Şematik
Breadboard Kablolama / Şematik
Breadboard Kablolama / Şematik
Breadboard Kablolama / Şematik
Breadboard Kablolama / Şematik

Bileşenleri yukarıdaki şemada gösterildiği gibi bağlayın.

Düğmeler:

  • YUKARI düğmesi: Arduino pin 7
  • AŞAĞI düğmesi: Arduino pin 6
  • SOL düğme: Arduino pin 9
  • SAĞ düğme: Arduino pin 8
  • Bir düğme: Arduino pin 5
  • B düğmesi: Arduino pin 4
  • BAŞLAT düğmesi: Arduino pin 2

SSD1306 OLED ekran:

  • SCL: Arduino pini A5
  • SDA: Arduino pini A4
  • VCC: Arduino VCC
  • GND: Arduino GND

Zil:

  • Buzzer pozitif: Arduino pin 3
  • Zil zemini: Arduino GND

Adım 4: Kaynak Kodu

A-Maze oyun kaynak kodu burada bulunabilir:

Arduino IDE'yi açın ve kartınıza yükleyin veya çipinizi programlamak için ISP programlayıcıyı kullanın.

USBTIny ISP kullanmanızı tavsiye ederim, hiç problem yaşamadım:) ama çipinizi programlamak için sıradan Arduino'yu da kullanabilirsiniz.

Benim durumumda harici kristal kullanmadım, bu yüzden Atmega328p çipim 8MhZ olan dahili osilatörde çalışıyor.

Daha fazla bilgi için bu bağlantıyı ziyaret edin:

Adım 5: Eylemde Görün

Image
Image

Adım 6: Vaka ve Minyatürleştirme

Vaka ve Minyatürleştirme
Vaka ve Minyatürleştirme
Vaka ve Minyatürleştirme
Vaka ve Minyatürleştirme

Bu projeyi güzel görünümlü bir kılıfla kalıcı hale getirmek istiyorsanız işte tasarladığım basit 3D yazdırılabilir kılıf:

Yukarıdaki resimlerde tüm bileşenlerin 4x6 prototip PCB üzerinde nasıl düzenlendiğini görebilirsiniz.

Çoğu düğme kablosu pil tutucuların altına girer, mümkün olduğunca düz hale getirmeye çalışın, böylece pil tutucular, aradaki kablolarla panonun üzerine nispeten aynı hizada olabilir.

Atmega çip bacakları lehimlendiğinden ve ekranın altında açıkta kaldığından, ekranın altında başka kablolar da yapmanızı öneririm. Lehimlemeyi bitirdikten sonra ekranın altına bir miktar izolasyon bandı koyarak şort vs.

ICSP başlığı isteğe bağlıdır ve ifşa etmemeye karar verirseniz, montajınızı çok daha kolay hale getirecek, 6 bağlantıya daha az özen gösterecek, ancak çipi lehimlemeden önce programlayın veya 28 pinli DIP soketi kullanın, böylece kolayca yapabilirsiniz. programlama için çipi çıkarın.

Cep Boyutunda Yarışma
Cep Boyutunda Yarışma
Cep Boyutunda Yarışma
Cep Boyutunda Yarışma

Cep Boyu Yarışmada İkincilik

Önerilen: