Isi kandungan:

Permainan Dot Jump (tanpa Menggunakan Arduino): 6 Langkah
Permainan Dot Jump (tanpa Menggunakan Arduino): 6 Langkah

Video: Permainan Dot Jump (tanpa Menggunakan Arduino): 6 Langkah

Video: Permainan Dot Jump (tanpa Menggunakan Arduino): 6 Langkah
Video: Tonton Sampai Habis !!! Belajar Arduino Di Jamin Bisa 2024, November
Anonim
Permainan Dot Jump (tanpa Menggunakan Arduino)
Permainan Dot Jump (tanpa Menggunakan Arduino)

Gambaran keseluruhan

Hai! Saya Shivansh, seorang pelajar di IIIT-Hyderabad. Saya di sini dengan arahan pertama saya yang merupakan permainan yang diilhamkan dari permainan Dinosaur Jump Google Chrome. Permainan ini mudah: Melintasi rintangan masuk untuk mendapatkan mata. Sekiranya anda bertembung, anda kalah dan skor ditetapkan semula.

Ciri utama projek ini ialah tidak ada penggunaan Arduino atau mikrokontroler lain. Ia berasal dari komponen elektrik asas dan melibatkan pelaksanaan Mesin Keadaan Terhingga (FSM) dengan bantuan gambarajah logik, dll.

Berminat? Mari kita mulakan.

Prasyarat:

  • Pengetahuan asas mengenai komponen elektrik seperti Perintang, Kapasitor, Litar Bersepadu (IC).
  • Pengetahuan asas mengenai Logic Gates (DAN, ATAU, TIDAK, dll.)
  • Pengetahuan mengenai kerja Flip-Flop, Counter, Multiplexer, dll.

CATATAN: Prasyarat yang disenaraikan di atas adalah untuk memahami keseluruhan kerja projek. Seseorang yang tidak mempunyai pengetahuan yang mendalam tentang perkara yang sama juga dapat membina projek tersebut mengikuti langkah-langkah yang dapat dipelajari.

Langkah 1: Membangunkan Model Kerja

Membangunkan Model Kerja
Membangunkan Model Kerja
Membangunkan Model Kerja
Membangunkan Model Kerja

Tugas pertama adalah membuat model kerja untuk projek tersebut. Barulah kita dapat menentukan bahan yang diperlukan untuk projek tersebut. Keseluruhan projek boleh dibahagikan kepada tiga bahagian.

Bahagian-1: Penjanaan halangan

Pertama, kita perlu menghasilkan rintangan rawak agar Dot melintas. Halangan juga akan berupa nadi titik yang bergerak dari satu hujung Array LED ke ujung yang lain.

Untuk menghasilkan halangan, kami menggunakan dua Litar Pemasa (diagram litar yang dilampirkan), satu dengan Frekuensi Tinggi (Pemasa HF) dan satu lagi dengan Frekuensi Rendah (Pemasa LF). Bahagian 'randomness' dikendalikan oleh HF Timer yang outputnya dilihat pada setiap tepi pemasa LF yang meningkat (yang diambil sebagai input CLK). Arahan Penjanaan Halangan adalah keadaan Pemasa HF pada setiap pinggir Pemasa LF yang meningkat (1 -> Jana Halangan | 0 -> Jangan Jana Halangan). Pemasa HF adalah RESET pada setiap ‘JUMP’ untuk memastikan penghasilan rintangan secara rawak. Keluaran HF Timer diberikan sebagai input D ke D Flip Flop (untuk menyimpan arahan untuk kitaran seterusnya) dengan input CLK sebagai LF Timer Output.

Setelah arahan binari untuk penghasilan rintangan keluar, kita perlu menghasilkan ‘denyut nadi’ pada Array LED. Kami melakukannya dengan bantuan Kaunter 4-bit yang outputnya diberikan kepada demultiplexer 4x16 (DeMUX). Keluaran DeMUX akan menjadikan 16 LED masing-masing bersinar.

Bahagian-2: JUMP

Untuk Tindakan JUMP, kami akan menggunakan Input Tombol Tekan sebagai arahannya. Setelah arahan diberikan, LED objek sebaris berhenti bercahaya dan LED lain di atasnya menyala, menandakan lonjakan.

Bahagian-3: Hasil

Hasilnya akan seperti: Sekiranya objek itu crash, RESET permainan; jika tidak, tambah skor.

Perlanggaran dapat dinyatakan sebagai ANDing dari keduanya, isyarat halangan dan isyarat objek untuk kedudukan tanah halangan. Sekiranya perlanggaran tidak berlaku, Titik Kaunter meningkat yang dipaparkan pada sepasang paparan 7 segmen.

Langkah 2: Mengumpulkan Komponen

Komponen yang diperlukan adalah seperti berikut:

  • PCB x 1, Papan Roti x 3
  • LED: Hijau (31), Merah (1), BiColor: Merah + Hijau (1)
  • Butang Tekan x 2
  • Paparan 7 segmen x 2
  • IC 555 x 3 [untuk Litar Pemasa]
  • IC 7474 x 1 (D FlipFlop)
  • IC 7490 x 2 (Penghitung Dekad) [untuk memaparkan skor]
  • IC 7447 x 2 (penyahkod BCD hingga 7 segmen) [untuk memaparkan skor]
  • IC 4029 x 1 (Kaunter 4-bit) [untuk paparan halangan]
  • IC 74154 x 1 (DeMUX) [untuk paparan halangan]
  • IC 7400 x 3 (BUKAN pintu gerbang)
  • IC 7404 x 1 (pintu NAND)
  • IC 7408 x 1 (pintu DAN)
  • Soket IC
  • Sumber Voltan (5V)

Alat yang diperlukan:

  • Besi pematerian
  • Pemotong wayar

Langkah 3: Penjanaan Halangan: Bahagian-A

Penjanaan Halangan: Bahagian-A
Penjanaan Halangan: Bahagian-A
Penjanaan Halangan: Bahagian-A
Penjanaan Halangan: Bahagian-A

Pertama, kita perlu mengatur litar pemasa untuk menghasilkan Isyarat Penjanaan Halangan (TINGGI / RENDAH).

Litar akan disiapkan sesuai dengan teori yang dibincangkan sebelumnya. Gambarajah litar yang sama dilampirkan di atas. Litar ini dilaksanakan pada papan roti (walaupun dapat juga dilaksanakan pada PCB) seperti berikut:

  • Letakkan dua 555 IC dan D Flip Flop (IC 7474) melintasi pembahagi papan roti dengan beberapa ruang kosong (4-5 lajur) di antara.
  • Sambungkan baris atas papan roti dengan terminal positif Sumber Voltan dan baris bawah dengan terminal negatif.
  • Lakukan sambungan selanjutnya mengikut gambarajah litar. Selepas sambungan yang diperlukan, litar akan kelihatan serupa dengan gambar yang dilampirkan di atas.

CATATAN: Nilai rintangan R1 & R2 dan kapasitansi C dikira menggunakan persamaan berikut:

T = 0.694 x (R1 + 2 * R2) * C

di mana T diperlukan Tempoh Masa.

D = 0.694 x [(R1 + R2) / T] * 100

di mana D adalah Kitaran Tugas iaitu nisbah Waktu ON ke Jumlah Masa.

Dalam projek ini, untuk Pemasa Frekuensi Tinggi, T = 0.5 saat dan untuk Pemasa Frekuensi Rendah, T = 2 saat.

Langkah 4: Penjanaan Halangan: Bahagian-B

Penjanaan Halangan: Bahagian-B
Penjanaan Halangan: Bahagian-B
Penjanaan Halangan: Bahagian-B
Penjanaan Halangan: Bahagian-B
Penjanaan Halangan: Bahagian-B
Penjanaan Halangan: Bahagian-B

Sekarang kita tahu kapan untuk menghasilkan halangan, kita sekarang perlu memaparkannya. Kami akan menggunakan pembilang 4-bit, Demultiplexer, pemasa dan pelbagai 16 LED. Mengapa 16? Ini kerana kami akan memetakan output 4-bit kaunter ke 16 LED menggunakan demultiplexer. Ini bermaksud bahawa pembilang akan menghitung 0 hingga 15 dan demultiplexer akan menghidupkan LED dengan indeks itu.

Peranan pemasa adalah mengatur kecepatan pengiraan, iaitu kecepatan pergerakan halangan. Halangan akan beralih satu kedudukan dalam Satu Masa Tempoh pemasa. Anda boleh bermain-main dengan nilai R1, R2, dan C yang berbeza menggunakan persamaan pada langkah sebelumnya untuk mendapatkan kelajuan yang berbeza.

Untuk matriks LED, solder 16 LED secara linear dengan titik persamaan. Terminal positif setiap LED akan disambungkan ke DeMUX (setelah membalikkan menggunakan pintu NOT, kerana DeMUX memberikan output yang RENDAH).

Gambarajah litar dilampirkan di atas.

Langkah 5: JUMP dan HASIL

JUMP dan HASIL
JUMP dan HASIL
JUMP dan HASIL
JUMP dan HASIL
JUMP dan HASIL
JUMP dan HASIL

Perkara seterusnya adalah aksi lompat. Untuk memaparkan lompatan, letakkan LED dengan warna yang berbeza di atas matriks, arahkan dan pasangkan terminal + ve ke butang. Pasang hujung butang tekan yang lain ke sumber voltan.

Juga, tekan butang tekan lain, diletakkan berdekatan dengan yang sebelumnya dan pasangkan salah satu terminal ke + 5V. Terminal lain menuju ke NAND Gate (IC 7404) dengan input NAND Gate yang lain sebagai input ke LED tepat di bawah JUMP LED (iaitu objek LED). Keluaran NAND Gate menuju ke RESET (PIN 2 dan 3 dari kedua-dua BCD Counters) dari pembilang skor. Dengan ini, apa yang kita lakukan ialah kita menetapkan semula skor jika kedua-dua isyarat LED OBJECT (dalam kedudukan asas) dan isyarat OBSTACLE diberikan pada masa yang sama, iaitu objek dan rintangan bertembung.

Buat beberapa pengaturan untuk memastikan kedua-dua butang tekan ditekan bersama. Anda boleh menggunakan duit syiling dan menempelkan kedua butang padanya.

Untuk menyiapkan pembilang skor, ikuti rajah litar yang dilampirkan di atas (sumber Pic: www.iamtechnical.com).

CATATAN: Sambungkan pin 2 dan 3 ke output Gerbang NAND untuk menetapkan semula skor sekiranya berlaku perlanggaran dengan halangan

Langkah 6: Selamat Bermain

Selamat Bermain!
Selamat Bermain!
Selamat Bermain!
Selamat Bermain!
Selamat Bermain!
Selamat Bermain!

Itu sahaja. Anda selesai dengan projek anda. Anda boleh menambahkan sedikit kemasan sehingga kelihatan baik. Rehat baik-baik saja.

NIKMATI.. !!

Disyorkan: