Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Schlangen-LED-Matrixspiel

Komponenten und Verbrauchsmaterialien

Arduino Proto Shield
× 1
Arduino UNO
× 1
Analoger Joystick (generisch)
Dies ist ein normaler schwarzer Joystick
× 1
Überbrückungsdrähte männlich/weiblich
× 1
SparkFun LED-Array - 8x7
Dies ist nur eine normale 8 * 8 LED-Matrix (keine RGB)
× 1

Apps und Onlinedienste

Arduino-IDE

Über dieses Projekt

Ich habe eine coole Spielkonsole aus einem Meccanoid- und Erector-Set als Rahmen gemacht und ich habe Sergey Royz verwendet Code (CHECK IT OUT) und ich habe zusätzliches Zeug hinzugefügt und die Geschwindigkeit erhöht, damit es reibungslos funktioniert. Ich werde nicht erklären, wie man den Rahmen herstellt, aber ich empfehle Ihnen, Ihren eigenen Rahmen zu machen. Aber du brauchst einen Rahmen. Viel Spaß damit, mach was du willst. ICH HOFFE, DASS IHNEN DIESES PROJEKT GEfällt! Kommentieren Sie, wenn Sie eine Frage haben, und ich werde sie hoffentlich so schnell wie möglich beantworten können. Wenn Sie Empfehlungen für mein nächstes Projekt haben, kommentieren Sie es bitte und teilen Sie es mir mit. Auch mein Fritzing hat nicht funktioniert, also sage ich es Ihnen einfach:

Schaltpläne:

Befestigen Sie die Abschirmung am Arduino Uno, damit Sie mehr GND- und 5V-Steckdosen haben, ohne ein Steckbrett zu verwenden.

Matrix:

  • VCC zu 5V Arduino
  • GND zu GND Arduino
  • DIN zu digitalem Pin 10 auf Arduino
  • CS zu digitalem Pin 9 auf Arduino
  • CLK an digitalen Pin 8 auf Arduino

Joystick:

  • Gnd-zu-Gnd-Pin auf Arduino
  • +5V bis 5V auf Arduino
  • VRX zu A0 auf Arduino
  • VRY zu A1 auf Arduino
  • SW zu digitalem Pin 2

Code

  • Schlange
SchlangeC/C++
Alles, was Sie tun müssen, ist den Code zu kopieren und einzufügen
/** * Snake * Implementierung des klassischen Snake-Spiels * bei dem sich die Schlange ständig bewegt und der Spieler * Kreuzungen mit sich selbst und Grenzen vermeiden muss. * Wenn die Schlange Nahrung frisst, wächst sie und beschleunigt ein wenig. * * 23. Juni 2016 * von Sergey Royz und Jäger Buzzell */#include /* Joystick PINs */#define VRX A0#define VRY A1#define SW 2/* Display PINs */#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; blink_count =3; int Hälfte =GRÖSSE / 2; Länge =GRÖSSE / 3; for (int i =0; i =SIZE) { delay(1000); showGameOverMessage(); true zurückgeben; } if (head[1] <0 || head[1]>=SIZE) { delay(1000); showGameOverMessage(); true zurückgeben; } for (int i =0; i =0; i--) { Schlange[i + 1][0] =Schlange[i][0]; Schlange[i + 1][1] =Schlange[i][1]; } Schlange[0][0] +=v[0]; Schlange[0][1] +=v[1]; Rückgabe falsch;}void setup () { pinMode (SW, INPUT_PULLUP); PinMode (VRX, EINGANG); pinMode (VRY, EINGANG); attachInterrupt(digitalPinToInterrupt(SW), Neustart, RISING); lc.shutdown(0, false); lc.setIntensity(0, 8); init_game(); render();}void loop() { if (!is_game_over) { clearScreen(); machen(); if (current_time - prev_advance> ADVANCE_DELAY) { is_game_over =Advance(); prev_advance =aktuelle_Zeit; } } else { while (blink_count> 0) { clearScreen(); Verzögerung (300); machen(); Verzögerung (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 =map(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; } if (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,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,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,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,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,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,0}}; void showGameOverMessage() { for (int d =0; d  

Herstellungsprozess

  1. Arduino-Gamecontroller
  2. Arduino-Pong-Spiel auf einer 24x16-Matrix mit MAX7219
  3. Arduino Nano Tetris-Spiel auf hausgemachter 16x8-Matrix
  4. Arduino mit Bluetooth zur Steuerung einer LED!
  5. LED-Matrix + Bewegungssensor-Türanzeige [Arduino Holiday]
  6. Arduino-Vierbeiner
  7. Pixel-Chaser-Spiel
  8. Einzelne LED-Matrix-Arduino Flip Clock
  9. Arduino RGB-Farbmischer
  10. Steuerung einer LED-Matrix mit Arduino Uno