Isi kandungan:
- Langkah 1: Mengumpulkan Semua Bahagian
- Langkah 2: Menyambungkan Paparan OLED
- Langkah 3: Menyambungkan Buzzer
- Langkah 4: Semua Sambungan Perkakasan Selesai
- Langkah 5: Termasuk Perpustakaan dan Memulakan Protokol Paparan
- Langkah 6: Melodi Lagu Tema
- Langkah 7: Memainkan Lagu Semasa Permulaan
- Langkah 8: Menukar Imej ke Bitmaps
- Langkah 9: Menyelaraskan Resolusi Menurut Paparan Anda
- Langkah 10: Menjana Array Bitmap
- Langkah 11: Memaparkan Imej Sebagai Urutan
- Langkah 12: Keseluruhan Kod:
- Langkah 13: Hasilnya:
Video: Lagu Tema PUBG + Animasi Dengan Arduino !: 13 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:08
Halo di sana dan selamat datang untuk pengajaran yang menyeronokkan ini! Saya harap anda semua sihat dan kekal sihat. Projek kecil tetapi menakjubkan ini adalah tentang memainkan lagu tema PUBG dan bahkan membuat beberapa animasi permainan menggunakan arduino.
Komponen yang digunakan sangat mudah didapati dan sangat senang dipasang pada sekeping papan roti. Saya akan berkongsi keseluruhan proses pembinaan dan pengekodan dalam instruksinya ini, bertahan hingga akhir!
Saya sangat mengesyorkan anda menonton video untuk mendapatkan idea mengenai projek:) Sekiranya anda suka maka suka dan kongsi videonya. Pertimbangkan untuk melanggan saluran saya jika anda menikmati pembuatan saya. Terima kasih!
Oleh itu, tanpa berlengah lagi, mari kita mulakan!
Langkah 1: Mengumpulkan Semua Bahagian
Bangunannya terutama terdiri dari Arduino Nano yang merupakan teras utama untuk projek ini. Anda boleh menggunakan varian Arduino lain seperti Arduino Uno yang terkenal, Arduino Pro Mini, Arduino Mega dll. Untuk memaparkan animasi dan gambar, saya memutuskan untuk pergi dengan paparan OLED 0.96 inci dengan resolusi 128 x 64 piksel. Paparan ini boleh menjadi antara muka dengan arduino dengan protokol I2C yang hanya memerlukan dua wayar untuk data dan jam, sehingga mengurangkan jumlah sambungan dan menjadikan projek lebih padat. Untuk memainkan melodi tema PUBG, saya menggunakan buzzer 5V di mana saya menghubungkan pin positif dengan pin digital 6 arduino dan tanah menuju ke arduino.
Ini adalah senarai bahagian yang diperlukan untuk projek ini:
- Arduino Nano (atau papan arduino lain pilihan anda)
- Modul paparan OLED 0.96 inci
- Buzzer 5V
- Wayar pelompat
- Papan roti
- Kabel pengaturcaraan Arduino
Langkah 2: Menyambungkan Paparan OLED
Sebanyak 4 sambungan diperlukan untuk paparan OLED disambungkan dari arduino:
Vcc 5V dari Arduino
Gnd Gnd dari Arduino
SDA A4 dari Arduino
SCK A5 dari Arduino
Pin A4 dan A5 dari arduino melayani pelbagai tujuan input analog dan juga pin untuk komunikasi I2C. Di sini kami telah menggunakan pin untuk protokol I2C untuk berinteraksi dengan modul paparan.
Pautan ke perpustakaan Adafruit yang digunakan dalam projek ini:
Langkah 3: Menyambungkan Buzzer
Buzzer 5V mempunyai terminal bekalan positif dan negatif.
Pin positif D6 dari Arduino (pin digital 6) (anda boleh menggunakan mana-mana pin digital arduino)
Pin negatif Gnd dari Arduino
Kami akan membuat nada yang diinginkan pada pin digital D6 yang mana buzzer akan memainkan melodi.
Langkah 4: Semua Sambungan Perkakasan Selesai
Semua sambungan paparan OLED dan buzzer yang diperlukan sudah lengkap. Sekarang mari kita fahami aspek pengaturcaraan projek..
Langkah 5: Termasuk Perpustakaan dan Memulakan Protokol Paparan
Keseluruhan program telah diasingkan menjadi 3 komponen:
- Program utama terdiri dari inisialisasi dan urutan paparan gambar dan melodi
- Fail "pitches.h" yang terdiri daripada senarai nota muzik dan frekuensi yang berkaitan
- fail "pictures.h" yang terdiri daripada bitmap gambar yang akan dipaparkan.
Proses bagaimana menukar gambar menjadi susunan bitmap untuk paparan OLED dibincangkan dalam langkah-langkah yang akan datang.
Saya juga akan melampirkan keseluruhan kod bersama dengan arahan ini untuk anda gunakan:)
Langkah 6: Melodi Lagu Tema
Saya mencari di internet untuk mendapatkan nota asas yang merangkumi lagu tema PUBG dan kemudian menambahkannya ke array melodi.
Dengan menghabiskan banyak masa bermain dan memainkan semula urutan melodi, saya kemudian membuat susunan jangka masa yang berkaitan dengan berapa lama setiap nota perlu dimainkan. Gabungan array melodi dan susunan durasi merangkumi maklumat lengkap untuk memainkan lagu.
Langkah 7: Memainkan Lagu Semasa Permulaan
Terdapat sejumlah 63 nota yang saya gunakan untuk membuat urutan melodi. Menggunakan gelung dan iterasi melalui nota dan susunan tempoh dengan jeda yang telah ditentukan di antara setiap nota, keseluruhan urutan dimainkan sekali, kerana kod ini terletak dalam persediaan kosong (). Menariknya, tidak ada kod untuk projek ini yang menggunakan gelung void () kod arduino kerana saya berniat untuk memainkan dan memaparkan gambar sekali sahaja. Sudah tentu jika anda mahukan urutan berulang maka itu mesti dimasukkan ke dalam fungsi loop kosong ().
Langkah 8: Menukar Imej ke Bitmaps
Sekarang, bahagian yang menarik dari projek ini adalah proses untuk menukar gambar menjadi susunan bitmap untuk paparan OLED mengikut kepadatan pikselnya. Untuk ini, saya menjumpai alat dalam talian prefek yang membolehkan kami menghasilkan bitmap tersuai.
Pautan untuk aplikasi dalam talian ini adalah:
Terima kasih kepada pencipta aplikasi ini, ini menjadikan kerja saya lebih mudah.
Setelah pergi ke pautan, anda mesti memuat naik gambar yang ingin anda buat bitmap. Satu perkara yang perlu diperhatikan di sini ialah anda harus mencuba memilih gambar yang tidak mempunyai banyak kontras warna, cuba menempelkan gambar dengan beberapa warna padat, tanpa sebarang kecerunan untuk mendapatkan hasil yang lebih baik
Langkah 9: Menyelaraskan Resolusi Menurut Paparan Anda
Pada langkah berikutnya, kita harus mengubah ukuran gambar sesuai dengan resolusi paparan. Untuk paparan OLED kami, lebarnya 28 piksel dan tinggi 64 piksel, yang telah saya sesuaikan seperti yang ditunjukkan dalam gambar. Sesuaikan ambang kecerahan untuk memastikan gambar sangat jelas (di sinilah kelebihan menggunakan gambar dengan warna pepejal dimainkan, semakin banyak kecerunan warna, kualiti gambar dalam paparan monokrom akan merosot ketika mengacaukan ambang kecerahan).
Langkah seterusnya adalah memasangkan gambar di layar dengan menjaga agar bahagiannya tetap utuh dan menyesuaikan dengan simetri yang mana pilihannya sudah ada. Anda boleh meneroka pilihan ini untuk mendapatkan output gambar yang diinginkan. Sebagai rujukan, anda juga mendapat pilihan pratonton yang menakjubkan!
Langkah 10: Menjana Array Bitmap
Setelah menyesuaikan parameter gambar, pada langkah seterusnya pilih saja kod Arduino sebagai format output dan klik menghasilkan untuk mendapatkan susunan bitmap yang diinginkan!
Di sana! anda berjaya menukar gambar anda ke susunan bitmap yang dikehendaki. Saya telah melakukan proses ini untuk sejumlah 7 gambar dan menyimpannya.
Langkah 11: Memaparkan Imej Sebagai Urutan
Untuk memaparkan gambar, saya telah menggunakan fungsi Arduino millis () untuk memanggil fungsi draw () yang pada dasarnya adalah satu set perintah untuk membersihkan paparan, plot array bitmap ke OLED dan inisialisasi paparan. Logik utamanya ialah selepas setiap 3.5 saat, gambar diubah dan gambar seterusnya dipaparkan. Nah, 3.5 saat bukan nombor yang unik, saya baru tahu bahawa jika saya membahagikan keseluruhan tempoh melodi dengan 7 gambar, saya mendapat kira-kira 3.5 saat untuk setiap paparan. Anda boleh menambahkan lebih banyak gambar untuk ini dan mengurangkan masa paparan untuk setiap gambar jika anda mahu.
Coretan kod menerangkan bagaimana fungsi dipanggil berdasarkan fungsi milis ().
Keseluruhan susunan bitmap gambar disimpan dalam fail "pictures.h"
Langkah 12: Keseluruhan Kod:
Di sini saya kongsikan keseluruhan kod untuk anda semua bermain-main dan bereksperimen!
Setelah semuanya kelihatan baik, sudah tiba masanya untuk memuat naiknya ke papan iklan:)
Langkah 13: Hasilnya:
Seperti yang anda lihat gambar ternyata hebat! Begitu juga melodi! Saya harap anda telah menonton video di mana keseluruhan demonstrasi hadir.
Saya harap PUBG versi Arduino ini adalah projek yang menarik untuk semua peminat permainan dan elektronik di luar sana.
Jangan ragu untuk berkongsi maklum balas anda dalam komen dan berkongsi cadangan. Juga, pertimbangkan untuk melanggan saluran saya untuk lebih banyak kandungan seperti ini kerana ini adalah sebahagian daripada siri OLED yang sedang saya kerjakan. Beritahu saya jika anda membina projek yang menyeronokkan ini:)
Sehingga lain kali.
Disyorkan:
Lampu Led Animasi Arduino Dusty Wall Dengan Kesan Cahaya: 11 Langkah (dengan Gambar)
Lampu LED Animasi Dusty Wall Arduino Dengan Kesan Cahaya: Saya baru sahaja melahirkan bayi dan setelah membuat bilik tidurnya, saya memerlukan lampu di dinding. Oleh kerana saya sangat menyukai LED, saya memutuskan untuk membuat sesuatu. Saya suka juga pesawat secara amnya, jadi mengapa tidak meletakkan pesawat dari kartun di dinding, di sini ketika ia bermula dan bagaimana saya melakukannya. Harap
Pad Tombol LED Arduino yang Memacu Animasi Memproses: 36 Langkah (dengan Gambar)
Pad Tombol LED Arduino yang Memacu Animasi Memproses: Pad butang Apa ini dibuat menggunakan PCB dan komponen lain yang dihasilkan oleh Sparkfun. Ia didorong oleh Arduino Mega. Setiap butang bagus dan licin dan memuaskan untuk ditekan, dan ia mempunyai LED RGB di dalamnya! Saya telah menggunakannya untuk mengawal animasi saya
Kotak Coklat Animasi (dengan Arduino Uno): 3 Langkah (dengan Gambar)
Kotak Coklat Animasi (dengan Arduino Uno): Pernah saya melihat sekotak coklat yang indah di sebuah kedai. Dan saya terfikir untuk membuat hadiah hebat dari kotak ini - kotak animasi dengan coklat. Apa yang kita perlukan: Kotak plastik plastik kosong 9V bateri Penyesuai kabel bateri uSD 1GB Arduino U
Jam Animasi LED SMART Bersambung Web Dengan Panel Kawalan berasaskan Web, Pelayan Masa Diselaraskan: 11 Langkah (dengan Gambar)
Jam Animasi LED SMART Bersambung Web Dengan Panel Kawalan Berasaskan Web, Time Server Synchronized: Kisah jam ini sudah lama - lebih dari 30 tahun. Ayah saya mempelopori idea ini ketika saya baru berusia 10 tahun, jauh sebelum revolusi LED - kembali ketika LED di mana 1/1000 kecerahan cahaya mereka yang membutakan semasa. Betul
Arduino Uno: Animasi Bitmap pada Perisai Paparan Skrin Sentuh TFI ILI9341 Dengan Visuino: 12 Langkah (dengan Gambar)
Arduino Uno: Animasi Bitmap pada Perisai Paparan Skrin Sentuh TFT ILI9341 Dengan Visuino: Perisai Paparan Skrin Sentuh TFT berasaskan ILI9341 adalah Perisai Paparan kos rendah yang sangat popular untuk Arduino. Visuino telah cukup lama menyokong mereka, tetapi saya tidak pernah berpeluang menulis Tutorial tentang cara menggunakannya. Baru-baru ini namun sebilangan orang bertanya