Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Game Matriks LED Ular

Komponen dan persediaan

Arduino Proto Shield
× 1
Arduino UNO
× 1
Joystick analog (Generik)
Ini adalah joystick hitam biasa
× 1
Kabel Jumper Pria/Wanita
× 1
Array LED SparkFun - 8x7
Ini hanya matriks LED 8 *8 biasa (bukan RGB)
× 1

Aplikasi dan layanan online

Arduino IDE

Tentang proyek ini

Saya membuat konsol game keren dari set Meccanoid dan Erector sebagai bingkai dan saya menggunakan Sergey Royz kode (CHECK IT OUT) dan saya menambahkan hal-hal tambahan ke dalamnya dan meningkatkan kecepatan sehingga bergerak dengan lancar. Saya tidak akan menjelaskan cara membuat bingkai tetapi saya menyarankan Anda untuk membuat bingkai sendiri. Tetapi Anda membutuhkan bingkai. Bersenang-senang dengan ini melakukan apa yang Anda inginkan. SAYA HARAP ANDA MENYUKAI PROYEK INI! Beri komentar jika Anda memiliki pertanyaan dan semoga saya dapat menjawabnya sesegera mungkin dan jika Anda memiliki rekomendasi untuk proyek saya berikutnya, silakan beri komentar dan beri tahu saya. Juga fritzing saya tidak berfungsi, jadi saya hanya akan memberi tahu Anda:

Skema:

Pasang pelindung ke Arduino Uno sehingga Anda memiliki lebih banyak outlet GND dan 5v tanpa menggunakan papan tempat memotong roti.

Matriks:

  • VCC ke Arduino 5V
  • GND ke GND Arduino
  • DIN ke pin digital 10 di Arduino
  • CS ke pin digital 9 pada Arduino
  • CLK ke pin digital 8 di Arduino

Joystik:

  • Gnd ke Gnd pin di Arduino
  • +5v hingga 5V di Arduino
  • VRX ke A0 di Arduino
  • VRY ke A1 di Arduino
  • SW ke pin digital 2

Kode

  • Ular
UlarC/C++
Yang harus Anda lakukan hanyalah menyalin dan menempelkan kode
/** * Snake * Implementasi permainan Snake klasik * di mana ular bergerak terus-menerus dan pemain * harus menghindari persimpangan dengan dirinya sendiri dan perbatasan. * Saat ular memakan makanan, ia tumbuh dan sedikit lebih cepat. * * 23 Jun 2016 * oleh Sergey Royz dan hunter Buzzell */#include /* PIN Joystick */#define VRX A0#define VRY A1#define SW 2/* Tampilkan PIN */#define CLK 8# define CS 9#define DIN 10#define SIZE 8#define ADVANCE_DELAY 20int snake[SIZE*SIZE][2];int length;int food[2], v[2];bool is_game_over =false;long current_time;long prev_advance; int blink_count;const short messageSpeed ​​=5;LedControl lc =LedControl(DIN, CLK, CS, 1);void init_game() { prev_advance =current_time =0; kedip_hitung =3; int setengah =UKURAN / 2; panjang =UKURAN / 3; for (int i =0; i =UKURAN) { delay(1000); showGameOverMessage(); kembali benar; } if (kepala[1] <0 || kepala[1]>=UKURAN) { delay(1000); showGameOverMessage(); kembali benar; } for (int i =0; i =0; i--) { ular[i + 1][0] =ular[i][0]; ular[i + 1][1] =ular[i][1]; } ular[0][0] +=v[0]; ular[0][1] +=v[1]; return false;}pengaturan batal() { pinMode(SW, INPUT_PULLUP); pinMode(VRX, INPUT); pinMode(VRY, INPUT); attachInterrupt(digitalPinToInterrupt(SW), mulai ulang, NAIK); lc.shutdown(0, salah); lc.setIntensity(0, 8); init_game(); render();}void loop() { if (!is_game_over) { clearScreen(); memberikan(); if (current_time - prev_advance> ADVANCE_DELAY) { is_game_over =advance(); prev_advance =waktu_saat ini; } } else { while (blink_count> 0) { clearScreen(); penundaan (300); memberikan(); penundaan (300); blink_count--; } } readControls(); current_time++;}void restart() { init_game(); is_game_over =false;}void readControls() { int dx =map(analogRead(VRX), 0, 906, 2, -2); int dy =peta(analogRead(VRY), 0, 906, -2, 2); if (dx !=0) {dx =dx / abs(dx);} if (dy !=0) {dy =dy / abs(dy);} if (dy !=0 &&v[0] !=0 ) { v[0] =0; v[1] =dy; } jika (dx !=0 &&v[1] !=0) { v[0] =dx; v[1] =0; }}const PROGMEM bool gameOverMessage[8][90] ={ {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0 ,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,1,1,0,0 ,0,1,1,0,0,1,1,1,1,1,1,0,0,0,0,0,0,1,1,1,1,0,0,0 ,1,1,0,0,1,1,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0 ,1,1,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,1,1,0,0,1 ,1,0,0,1,1,0,0,1,1,0,0,1,1,1,0,1,1,1,0,0,1,1,0,0,0 ,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1 ,0,0,0,0,0,0,1,1,0,0,1,1,0,0,1,1,1,1,0,0,0,0,0,0,0 ,0}, {0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,0,1,1,0 ,0,1,1,1,1,1,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,0 ,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,0,0,0,0,1,1,0,0 ,1,1,0,0,1,1,1,1,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0 ,1,1,0,0,0,0,0,0,1,1,1,1,1,1,0,0,1,1,0,1,0,1,1,0,0 ,1,1,1,1,1,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1 ,1,0,0,1,1,1,1,1,0,0,0,1,1,1,1,1,0,0,0,0,1,1,0,0,0 ,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,1,1,0,1,1,1,0,0,1,1 ,0,0,1,1,0, 0,1,1,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,1,0, 0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,0,0,0,0,1,1,1,1, 0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0, 1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,0,1,1,0,0, 1,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,1,1,1,1, 0,0,0,1,1,0,0,0,0,0,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,1,1, 0,0,1,1,0,0,1,1,0,0,0,1,1,0,0,1,1,1,1,1,1,0,0,0,0, 0,0,0,1,1,1,1,0,0,0,0,0,1,1,0,0,0,0,1,1,1,1,1,1,0, 0,1,1,0,0,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0}}; void showGameOverMessage() { for (int d =0; d   

Proses manufaktur

  1. Pengontrol Game Arduino
  2. Game Arduino Pong pada Matrix 24x16 dengan MAX7219
  3. Game Arduino Nano Tetris di Matriks 16x8 Buatan Sendiri
  4. Arduino dengan Bluetooth untuk Mengontrol LED!
  5. Matriks LED + Tampilan Pintu Sensor Gerak [Arduino Holiday]
  6. Arduino Quadruped
  7. Game Pixel Chaser
  8. Matriks LED Tunggal Arduino Flip Clock
  9. Pencampur Warna RGB Arduino
  10. Mengontrol Matriks LED dengan Arduino Uno