İçindekiler:
- Adım 1: Tüm Parçaların Toplanması.
- 2. Adım: OLED Ekranı Bağlama
- Adım 3: Buzzer'ı Bağlama
- Adım 4: Tüm Donanım Bağlantıları Tamamlandı.
- Adım 5: Kitaplığı Dahil Etme ve Görüntü Protokollerini Başlatma
- Adım 6: Tema Şarkısı Melodisi.
- Adım 7: Başlangıç Sırasında Şarkının Çalınması.
- Adım 8: Görüntüleri Bitmaplere Dönüştürme.
- 9. Adım: Çözünürlüğü Ekranınıza Göre Ayarlama
- Adım 10: Bitmap Dizisini Oluşturma.
- Adım 11: Görüntüleri Sıra Olarak Görüntüleme
- Adım 12: Tüm Kod:
- Adım 13: Sonuçlar:
Video: Arduino ile PUBG Tema Şarkısı+Animasyon!: 13 Adım (Resimli)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Merhaba ve bu eğlenceli eğitime hoş geldiniz! Umarım hepiniz iyisinizdir ve sağlıklı kalıyorsunuzdur. Bu küçük ama harika proje, PUBG tema şarkısını çalmak ve hatta arduino kullanarak bazı oyun animasyonları oluşturmakla ilgili.
Kullanılan bileşenler çok kolay temin edilebilir ve bir parça breadboard üzerinde montajı çok kolaydır. Tüm bina ve kodlama sürecini bu talimatta paylaşacağım, sonuna kadar sadık kalacağım!
Proje hakkında fikir sahibi olmanız için videoyu izlemenizi şiddetle tavsiye ederim:) Beğendiyseniz videoyu beğenip paylaşın. Yapımı beğendiyseniz kanalıma abone olmayı düşünün. Teşekkürler!
O halde, daha fazla gecikmeden başlayalım!
Adım 1: Tüm Parçaların Toplanması.
Yapı esas olarak bu projenin ana çekirdeği olan bir Arduino Nano'dan oluşuyor. Popüler Arduino Uno, Arduino Pro Mini, Arduino Mega vb. Gibi diğer Arduino çeşitlerini kullanabilirsiniz. Animasyonları ve görüntüleri görüntülemek için 128 x 64 piksel çözünürlüğe sahip 0.96 inç OLED ekran kullanmaya karar verdim. Bu ekran, veri ve saat için sadece iki kablo gerektiren I2C protokolüne sahip arduino ile arayüzler olabilir, böylece bağlantı sayısını azaltır ve projeyi daha kompakt hale getirir. PUBG tema melodisini çalmak için, pozitif pimini arduino'nun dijital pim 6'sına bağladığım ve topraklamanın Arduino'nun toprağına gittiği 5V'luk bir buzzer kullandım.
Bunlar proje için gerekli olan parçaların listesi:
- Arduino Nano (veya seçtiğiniz herhangi bir arduino kartı)
- 0.96 İnç OLED ekran modülü
- 5V sesli uyarıcı
- Atlama telleri
- ekmek tahtası
- Arduino programlama kablosu
2. Adım: OLED Ekranı Bağlama
OLED ekranın arduinodan bağlanabilmesi için toplam 4 bağlantı gereklidir:
Arduino'nun Vcc 5V'si
Arduino'nun Gnd Gnd'si
Arduino'nun SDA A4'ü
Arduino'nun SCK A5'i
Arduino'nun A4 ve A5 pinleri, I2C iletişimi için pinlerin yanı sıra analog girişlerin çoklu amacına hizmet eder. Burada, ekran modülü ile arayüz oluşturmak için I2C protokolü pinlerini kullandık.
Bu projede kullanılan Adafruit kütüphanesinin linki:
Adım 3: Buzzer'ı Bağlama
5V buzzer pozitif ve negatif besleme terminaline sahiptir.
Arduino'nun pozitif pin D6'sı(dijital pin 6)(Arduino'nun herhangi bir dijital pinini kullanabilirsiniz)
Arduino'nun negatif pin Gnd'si
Buzzer'ın melodiyi çalacağı dijital pin D6 üzerinde istenilen tonu oluşturacağız.
Adım 4: Tüm Donanım Bağlantıları Tamamlandı.
OLED ekran ve buzzer için gerekli tüm bağlantılar tamamlandı. Şimdi projenin programlama yönünü anlamak için devam edelim..
Adım 5: Kitaplığı Dahil Etme ve Görüntü Protokollerini Başlatma
Tüm program 3 bileşene ayrılmıştır:
- Başlatma ve görüntü gösterimi ve melodi dizilerinden oluşan ana program
- Nota listesi ve ilgili frekanstan oluşan "pitchs.h" dosyası
- Görüntülenecek resimlerin bitmaplerinden oluşan "pictures.h" dosyası.
Bir görüntünün OLED ekranı için bir bitmap dizisine nasıl dönüştürüleceği sonraki adımlarda tartışılacaktır.
Ayrıca, kullanmanız için bu talimatla birlikte tüm kodu ekleyeceğim:)
Adım 6: Tema Şarkısı Melodisi.
PUBG tema şarkısını oluşturan temel notaları internette aradım ve ardından bunları melodi dizisine ekledim.
Melodi dizisini çalmak ve yeniden çalmak için önemli miktarda zaman harcayarak, her notanın ne kadar süreyle çalınması gerektiğiyle ilgilenen süre dizisini oluşturdum. Melodi dizisi ve süre dizisinin kombinasyonu, şarkıyı çalmak için tüm bilgileri içerir.
Adım 7: Başlangıç Sırasında Şarkının Çalınması.
Melodi dizisini oluşturmak için kullandığım toplam 63 nota var. Bir for döngüsü kullanarak ve her nota arasında önceden belirlenmiş bir duraklama ile notalar ve süre dizisinde yineleme yaparak, tüm dizi bir kez çalınır, çünkü bu kod parçası yatar. boşluk kurulumunda(). İlginç bir şekilde, bu projenin hiçbir kodu, görüntüleri yalnızca bir kez oynatmayı ve görüntülemeyi düşündüğüm için arduino kodunun void döngüsünü() kullanmıyor. Tabii ki, yinelenen bir dizi istiyorsanız, bunun void loop() işlevine yerleştirilmesi gerekir.
Adım 8: Görüntüleri Bitmaplere Dönüştürme.
Şimdi, projenin ilginç kısmı, piksel yoğunluğuna göre bir görüntüyü OLED ekran için bir bitmap dizisine dönüştürme işlemidir. Bunun için özel bitmapler oluşturmamıza izin veren mükemmel çevrimiçi aracı buldum.
Bu çevrimiçi başvurunun bağlantısı:
Bu uygulamanın harika yaratıcıları sayesinde işimi çok kolaylaştırıyor.
Bağlantıya gittikten sonra, önce bitmap'ini oluşturmak istediğiniz görüntüyü yüklemelisiniz. Burada dikkat edilmesi gereken bir nokta, içinde çok fazla renk kontrastı olmayan görüntüleri seçmeye çalışmanız, daha iyi sonuçlar elde etmek için herhangi bir degrade olmadan birkaç düz renkle görüntülere yapışmayı denemeniz gerektiğidir.
9. Adım: Çözünürlüğü Ekranınıza Göre Ayarlama
Bir sonraki adımda, görüntüyü ekran çözünürlüğüne göre yeniden boyutlandırmamız gerekiyor. OLED ekranımız için resimde görüldüğü gibi ayarladığım 28 piksel genişlik ve 64 piksel yüksekliktir. Görüntünün oldukça net olduğundan emin olmak için parlaklık eşiğini ayarlayın (burada düz renkli görüntüleri kullanmanın avantajı devreye girer, renk gradyanları ne kadar fazla olursa, monokrom ekranda görüntü kalitesi parlaklık eşiğini bozduğundan düşer.).
Sonraki adım, orantıları koruyarak ve seçeneklerin zaten mevcut olduğu simetriyi ayarlayarak görüntüyü ekrana sığdırmaktır. İstediğiniz görüntü çıktısını elde etmek için bu seçenekleri keşfedebilirsiniz. Başvuru için ayrıca harika önizleme seçeneğine de sahip olursunuz!
Adım 10: Bitmap Dizisini Oluşturma.
Görüntü parametrelerini ayarladıktan sonra, bir sonraki adımda çıktı formatı olarak Arduino kodunu seçin ve istenen bitmap dizisini elde etmek için oluştur'a tıklayın!
Orası! resminizi başarıyla istediğiniz bitmap dizisine dönüştürdünüz. Toplamda 7 görsel için bu işlemi yaptım ve kaydettim.
Adım 11: Görüntüleri Sıra Olarak Görüntüleme
Görüntüleri görüntülemek için, temelde ekranı temizlemek, bitmap dizisini OLED'e çizmek ve ekranı başlatmak için bir dizi komut olan draw() işlevini çağırmak için Arduino millis() işlevini kullandım. Ana mantık, her 3.5 saniyede bir görüntünün değişmesi ve bir sonraki görüntünün gösterilmesidir. 3.5 saniye benzersiz bir sayı değil, tüm melodi süresini 7 görüntüye bölersem, her ekran için yaklaşık 3,5 saniyem olduğunu anladım. Buna daha fazla resim ekleyebilir ve isterseniz her bir resmin gösterim süresini azaltabilirsiniz.
Kod parçacıkları, millis() işlevine dayalı olarak işlevlerin nasıl çağrıldığını açıklar.
Görüntülerin tüm bitmap dizileri "pictures.h" dosyasında saklanır.
Adım 12: Tüm Kod:
Burada hepinizin oynaması ve denemesi için tüm kodu paylaşıyorum!
Her şey yolunda göründüğünde, tahtaya yükleme zamanı geldi:)
Adım 13: Sonuçlar:
Gördüğünüz gibi görüntüler harika çıktı! Ve melodi de öyle! Umarım tüm gösterinin yer aldığı videoyu izlemişsinizdir.
Umarım bu Arduino'nun PUBG versiyonu, tüm oyun ve elektronik meraklıları için heyecan verici bir projedir.
Lütfen görüşlerinizi yorumlarda paylaşmaktan ve önerilerinizi paylaşmaktan çekinmeyin. Ayrıca, üzerinde çalıştığım OLED serisinin bir parçası olduğu için bu tür içerikler için kanalıma abone olmayı düşünün. Bu eğlenceli projeyi inşa edersen bana haber ver:)
Bir sonrakine kadar.
Önerilen:
Animasyon Con Keynote: 20 Adım
Animasyon Con Keynote: Selecciona cualquiera de las plantillas que te presenta Keynote
Raspberry Pi Stop-Motion Animasyon Donanımı: 16 Adım (Resimlerle)
Raspberry Pi Stop-Motion Animation Rig: Stop-motion animasyon, nesnelerin fiziksel olarak manipüle edildiği ve hareketli bir görüntü yanılsaması yaratmak için kare kare fotoğraflandığı bir tekniktir. Mini stop-motion animasyon sergimiz bir Raspberry Pi ile yapılmıştır. , ki bu "minik ve aff
Ultrasonik Sensör Otomatik LED Karşılama Animasyon Işıkları ve LCD Bilgi Ekranı: 6 Adım
Ultrasonik Sensör Otomatik LED Karşılama Animasyon Işıkları ve LCD Bilgi Ekranı: Eve yorgun ve oturup dinlenmeye çalışırken döndüğünüzde, her gün etrafınızda aynı şeyi tekrar tekrar görmek çok sıkıcı olmalı. Neden ruh halinizi değiştiren eğlenceli ve ilginç bir şey eklemiyorsunuz? Süper kolay bir Arduino oluşturun
Animasyon Sehpası: 9 Adım (Resimli)
Animasyon Sehpası: LED matrislerle etkileşimli sehpaların nasıl yapılacağına dair çok iyi talimatlar var ve bazılarından ilham ve ipuçları aldım. Bu basit, ucuz ve hepsinden önemlisi yaratıcılığı teşvik etmeyi amaçlıyor: sadece iki düğmeyle
STM32 Nucleo KULLANARAK 16x2 I2c LCD'de Animasyon: 4 Adım
STM32 Nucleo KULLANARAK 16x2 I2c LCD'de Animasyon: Merhaba arkadaşlar, 16x2 i2c LCD'de özel bir animasyonun nasıl yapıldığını gösteren bir eğitimdir. Proje için gereken çok az şey var, bu yüzden koda erişiminiz varsa bitirebilirsiniz. 1 saat içinde. Bu öğreticiyi takip ettikten sonra, abl olacaksın