Herkese merhaba, bu yazımızda Arduino ve 0.96″ I2C Oled ekran kullanarak Retro Ping Pong Oyunu uygulaması yapacağız.
0.96″ I2C OLED Ekran
Arduino ve diğer mikrokontrolcüler ile kullanım kolaylığı ve (128×64 pixel) küçük olması sebebiyle oldukça tercih sebebidir. IoT projeleri, hobi projeleri, akım-gerilim, sıcaklık göstergesi gibi uygulamalarda sıkça karşımıza çıkan bir ekran modülüdür. Modül üzerinde SSD1306 sürücü entegresiyle gelmektedir bu sayese SPI ve I2C ara yüzleri kolaylıkla kullanılabilmektedir.
Özellikleri:
- Driver Chip : SSD1306
- Arayüz Tipi :IIC/I2C
- Çalışma Voltajı: 3.3-5V
- Çözünürlük : 128×64
- Display Size : 0.96inch
- Renk : Sarı, Mavi
- Görünür Açı : >160°
- Çalışma Sıcaklığı: -40 ℃ ila 70 ℃
- Boyut:27.5×28.5mm
Ping Pong Oyun Uygulaması
Ping Pong oyun uygulamamızda raketi yukarı ve aşağı olarak yönlendirebilmek için 2 adet buton kullanmayı tercih ettik. Eğer siz isterseniz kodlarda değişiklikler yaparak bu yönlendirmeyi potansiyometre ile sağlayabilirsiniz. Ayrıca bu uygulamamızda, programa karşı tek kişi olarak oyunu oynadık, yine gerekli değişiklikler yaparak bu oyunu arkadaşlarınızla 2 kişi olarak oynayabilirsiniz. 🙂
Malzemeler
Devre Şeması
OLED Ekran Bağlantıları
- VCC – 5V
- GND – GND
- SDA – A4
- SCK – A5
Buton Bağlantıları
- 1 bacakları – GND
- Yukarı Yönlendirme için – Dijital 2
- Aşağı Yönlendirme için – Dijital 3
Ping Pong Oyunu Kodlar
Gerekli kütüphaneleri kurmak için aşağıdaki adımları takip edebilirsiniz. 🙂
Ardunio IDE > Araçlar > Kütüphaneleri Yönet > (Kurmak istediğiniz Kütüphane)
🚀 Arduino ve OLED ekran ile tetris oyunu ve OLED ekrana yazı yazdırma uygulamalarımızı da incelemenizi tavsiye ederiz. 🙂
bu hatayı alıyor ne yapmalıyım
Arduino:1.8.19 (Windows 8.1), Kart:”Arduino Uno”
sketch_jul07b:50:20: error: stray ‘\342’ in program
sketch_jul07b:50:21: error: stray ‘\200’ in program
sketch_jul07b:50:22: error: stray ‘\223’ in program
sketch_jul07b:122:51: error: stray ‘\342’ in program
sketch_jul07b:122:52: error: stray ‘\200’ in program
sketch_jul07b:122:53: error: stray ‘\223’ in program
sketch_jul07b:135:57: error: stray ‘\342’ in program
sketch_jul07b:135:58: error: stray ‘\200’ in program
sketch_jul07b:135:59: error: stray ‘\223’ in program
sketch_jul07b:21:1: error: ‘Adafruit_SSD1306’ does not name a type; did you mean ‘Adafruit_SSD1305’?
C:\Users\MULTİVİZYON\Documents\Arduino\sketch_jul07b\sketch_jul07b.ino: In function ‘void setup()’:
sketch_jul07b:37:5: error: ‘display’ was not declared in this scope
C:\Users\MULTİVİZYON\Documents\Arduino\sketch_jul07b\sketch_jul07b.ino:37:5: note: suggested alternative: ‘delay’
sketch_jul07b:37:19: error: ‘SSD1306_SWITCHCAPVCC’ was not declared in this scope
C:\Users\MULTİVİZYON\Documents\Arduino\sketch_jul07b\sketch_jul07b.ino:37:19: note: suggested alternative: ‘SSD1305_SETCOMPINS’
sketch_jul07b:50:24: error: expected ‘)’ before ‘start’
sketch_jul07b:50:36: error: expected ‘;’ before ‘)’ token
C:\Users\MULTİVİZYON\Documents\Arduino\sketch_jul07b\sketch_jul07b.ino: In function ‘void loop()’:
sketch_jul07b:99:9: error: ‘display’ was not declared in this scope
C:\Users\MULTİVİZYON\Documents\Arduino\sketch_jul07b\sketch_jul07b.ino:99:9: note: suggested alternative: ‘delay’
sketch_jul07b:113:9: error: ‘display’ was not declared in this scope
C:\Users\MULTİVİZYON\Documents\Arduino\sketch_jul07b\sketch_jul07b.ino:113:9: note: suggested alternative: ‘delay’
sketch_jul07b:122:55: error: expected ‘;’ before ‘PADDLE_HEIGHT’
sketch_jul07b:135:61: error: expected ‘;’ before ‘PADDLE_HEIGHT’
sketch_jul07b:143:9: error: ‘display’ was not declared in this scope
C:\Users\MULTİVİZYON\Documents\Arduino\sketch_jul07b\sketch_jul07b.ino:143:9: note: suggested alternative: ‘delay’
C:\Users\MULTİVİZYON\Documents\Arduino\sketch_jul07b\sketch_jul07b.ino: In function ‘void drawCourt()’:
sketch_jul07b:148:5: error: ‘display’ was not declared in this scope
C:\Users\MULTİVİZYON\Documents\Arduino\sketch_jul07b\sketch_jul07b.ino:148:5: note: suggested alternative: ‘delay’
exit status 1
stray ‘\342’ in program
This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.
Dostum bu projenin videosu var. Daha ayrıntılı inceleye bilirsin.