Tabla de contenido:
- Suministros
- Paso 1: Montaje de la pantalla LCD TFT
- Paso 2: Programación de la pantalla LCD TFT
- Paso 3: ¡Listo
Video: Floppy Bird: 3 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
Hoy haremos un juego usando una pantalla LCD TFT. Esto parecería un juego que es muy popular y mucha gente todavía juega a este juego. El juego se llama Flappy Bird, pero este juego es un poco diferente porque la interfaz de usuario es diferente y la forma en que funciona el juego. Llamé a este juego Floppy Bird porque esto podría dar lugar a problemas de derechos de autor. No obstante, es un juego muy divertido y fácil de hacer. He creado este instructivo que te permitirá hacer el juego por completo y hacerlo funcionar como yo lo hice. Si tiene alguna pregunta, por favor comente a continuación e intentaré responder estas preguntas lo más rápido posible.
Suministros
- Arduino Mega 2560 y cable
- Arduino Mega Shield
- Arduino TFT LCD Compatible con Arduino Mega 2560
- Tarjeta SD
Paso 1: Montaje de la pantalla LCD TFT
Ahora, podemos comenzar a ensamblar la pantalla LCD TFT. Conectaremos la pantalla LCD TFT al escudo, así que primero tome la pantalla LCD TFT y básicamente la alinee con los pines del escudo. Una vez que haya alineado los pines, presione la pantalla LCD TFT hacia abajo para que encaje en su lugar. Cuando todas las cabezas de los pines están en el escudo y no puede ver las cabezas de los pines, es cuando sabe que la pantalla LCD TFT está conectada correctamente. A continuación, podemos conectar el escudo al Arduino Mega 2560. Alinear los pines del escudo en el Arduino Mega y enchufarlo. Cuando todas las cabezas de los pines están en el Arduino Mega y no puede ver las cabezas de los pines, eso es cuando sepa que la pantalla LCD TFT está correctamente conectada y lista para encenderse. Conecte el Arduino para ver si ha conectado la pantalla LCD correctamente, si la pantalla LCD se enciende y la pantalla es blanca, felicidades, ha conectado correctamente la pantalla LCD TFT y ahora está lista para ser programada. Por último, tenemos una cosa que hacer, que es conectar la tarjeta SD en la pantalla LCD. En la parte posterior de la pantalla LCD TFT hay una ranura para tarjetas SD donde simplemente puede conectar la tarjeta SD. Por lo tanto, simplemente conéctelo y listo.
Paso 2: Programación de la pantalla LCD TFT
Ahora, programaremos la pantalla LCD para que ejecute el juego y podamos jugarlo. A continuación se muestra el código que debe compilar y cargar utilizando el IDE de Arduino.
Problemas que puede tener:
Cambia los parámetros de la TFT LCD según el modelo que tengas.
CÓDIGO COMPLETO:
#incluir #incluir #incluir
// ==== Creando Objetos
UTFT myGLCD (ILI9341_16, 38, 39, 40, 41); // Los parámetros deben ajustarse a su modelo de pantalla / escudo URTouch myTouch (6, 5, 4, 3, 2);
// ==== Definición de fuentes
extern uint8_t SmallFont ; extern uint8_t BigFont ; extern uint8_t SevenSegNumFont ;
extern unsigned int bird01 [0x41A]; // Mapa de bits de aves
int x, y; // Variables para las coordenadas donde se ha pulsado el display
// pájaro disquete
int xP = 319; int yP = 100; int yB = 50; int MovingRate = 3; int fallRateInt = 0; flotador fallRate = 0; puntuación int = 0; int lastSpeedUpScore = 0; int HighestScore; booleano screenPressed = falso; boolean gameStarted = false;
configuración vacía () {
// Iniciar la visualización myGLCD. InitLCD (); myGLCD.clrScr (); myTouch. InitTouch (); myTouch.setPrecision (PREC_MEDIUM); puntaje más alto = EEPROM.read (0); // Leer la puntuación más alta de la EEPROM initiateGame (); // Iniciar el juego}
bucle vacío () {
xP = xP-MovingRate; // xP - coordenada x de los pilares; rango: 319 - (-51) drawPilars (xP, yP); // Dibuja los pilares // yB - coordenada y del pájaro que depende del valor de la variable FallRate yB + = fallRateInt; fallRate = fallRate + 0.4; // Cada entrada aumenta la tasa de caída para que podamos el efecto de la aceleración / gravedad fallRateInt = int (fallRate); // Comprueba la colisión if (yB> = 180 || yB <= 0) {// top and bottom gameOver (); } if ((xP = 5) && (yB <= yP-2)) {// pilar superior gameOver (); } if ((xP = 5) && (yB> = yP + 60)) {// pilar inferior gameOver (); } // Dibuja el pájaro drawBird (yB);
// Después de que el pilar haya pasado por la pantalla
si (xPRESET = 250) && (x = 0) && (y = 0) && (x = 30) && (y = 270) {myGLCD.setColor (0, 200, 20); myGLCD.fillRect (318, 0, x, y-1); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319, 0, x-1, y);
myGLCD.setColor (0, 200, 20);
myGLCD.fillRect (318, y + 81, x, 203); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (319, y + 80, x-1, 204); } else if (x <= 268) {// Dibuja un rectángulo azul a la derecha del pilar myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x + 51, 0, x + 60, y); // Dibuja el pilar myGLCD.setColor (0, 200, 20); myGLCD.fillRect (x + 49, 1, x + 1, y-1); // Dibuja el marco negro del pilar myGLCD.setColor (0, 0, 0); myGLCD.drawRect (x + 50, 0, x, y); // Dibuja el rectángulo azul a la izquierda del pilar myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x-1, 0, x-3, y);
// El pilar inferior
myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x + 51, y + 80, x + 60, 204); myGLCD.setColor (0, 200, 20); myGLCD.fillRect (x + 49, y + 81, x + 1, 203); myGLCD.setColor (0, 0, 0); myGLCD.drawRect (x + 50, y + 80, x, 204); myGLCD.setColor (114, 198, 206); myGLCD.fillRect (x-1, y + 80, x-3, 204); } // Dibuja la partitura myGLCD.setColor (0, 0, 0); myGLCD.setBackColor (221, 216, 148); myGLCD.setFont (BigFont); myGLCD.printNumI (puntuación, 100, 220); }
// ====== drawBird () - Función personalizada
void drawBird (int y) {// Dibuja el pájaro - mapa de bits myGLCD.drawBitmap (50, y, 35, 30, bird01); // Dibuja rectángulos azules por encima y por debajo del pájaro para borrar su estado anterior myGLCD.setColor (114, 198, 206); myGLCD.fillRoundRect (50, y, 85, y-6); myGLCD.fillRoundRect (50, y + 30, 85, y + 36); } // ======== gameOver () - Función personalizada void gameOver () {delay (3000); // 1 segundo // Limpia la pantalla e imprime el texto myGLCD.clrScr (); myGLCD.setColor (255, 255, 255); myGLCD.setBackColor (0, 0, 0); myGLCD.setFont (BigFont); myGLCD.print ("JUEGO TERMINADO", CENTRO, 40); myGLCD.print ("Puntuación:", 100, 80); myGLCD.printNumI (puntuación, 200, 80); myGLCD.print ("Reiniciando …", CENTER, 120); myGLCD.setFont (SevenSegNumFont); myGLCD.printNumI (2, CENTER, 150); retraso (1000); myGLCD.printNumI (1, CENTER, 150); retraso (1000); // Escribe el puntaje más alto en la EEPROM si (puntaje> puntaje más alto) {puntaje más alto = puntaje; EEPROM.write (0, puntaje más alto); } // Restablece las variables a los valores de posición inicial xP = 319; yB = 50; fallRate = 0; puntuación = 0; lastSpeedUpScore = 0; MovingRate = 3; gameStarted = falso; // Reiniciar el juego initiateGame (); }
Paso 3: ¡Listo
Hemos hecho el circuito y compilado el código. Ahora, solo tenemos que conectar el mega Arduino y jugar el juego.
Aquí, tengo un enlace a un video que muestra cómo funciona este juego y qué hacer para configurarlo:
drive.google.com/file/d/18hKQ8v2w2OkM_std-…
Avísame si tienes algún problema a continuación.
Recomendado:
Flappy Bird con músculos: 9 pasos (con imágenes)
Muscle Powered Flappy Bird: es posible que recuerdes cuando Flappy Bird conquistó el mundo y finalmente se volvió tan popular que su creador lo eliminó de las tiendas de aplicaciones para evitar publicidad no deseada. Este es Flappy Bird como nunca antes lo habías visto; mediante la combinación de algunos componentes listos para usar
Máquina de juego Pocket Flappy Bird: 5 pasos
Pocket Flappy Bird Game Machine: esta es una consola de juegos basada en microcontroladores nodemcu esp8266 que puede jugar flappy bird y muchos otros juegos.Esta máquina también se puede usar para hacer deauther basado en el código de spacehuhns en https://github.com/SpacehuhnTech/esp8266_deauther
Crashy Bird: 8 pasos
Crashy Bird: Necesitarás: Una computadora Un cable USB micro-bit Un miro Eso es todo lo que necesitas, pero preferiblemente deberías tener todo el kit Micro-bit para hacer esto. Para hacer la codificación también necesita ir a t
Apple II Floppy Hackintosh I7-7700 3.6Ghz: 7 pasos
Apple II Floppy Hackintosh I7-7700 3.6Ghz: Esta primera imagen es para darle una referencia a una unidad prístina (con el logotipo original de Apple en forma de arcoíris), la mía tiene un poco más de kilometraje. La segunda imagen son los internos, olvidé tomar una foto antes de desmantelarla, así que cortesía de Goog
SD / MMC se adapta al conector Floppy Edge: 8 pasos (con imágenes)
SD / MMC se adapta al conector Floppy Edge: puede conectar una tarjeta de memoria de cámara SD a cualquier proyecto de bricolaje casero que tenga algunos pines de E / S, utilizando conectores normales que probablemente tenga en este momento. Para obtener más detalles, cómo obtener mmc gratis controladores de dispositivo e instalando varios distritos de Linux de código abierto