Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
You are viewing an older revision! See the latest version
embebidos
Segundo corte SISTEMAS EMBEBIDOS- UNIVERSIDAD ECCI
JULIAN HUMBERTO CANTILLO GASPAR 47215
CAMILO ANDRES BERMUDEZ POLANIA 44348
JHON ESTIVEN VILLALOBOS FAJARDO 36390
HERNANDO HERNANDEZ SILVA 50840
INTRODUCCIÓN: el siguiente proyecto, está basado en el ámbito de los sistemas embebidos, el sistema embebido que se quiere construir es un clásico juego que en la década de los 80 llamado tetris. Para llevar a cabo la tarea de crear un sistema embebido que ejecute el juego de tetris usamos el entorno de programación llamado MBED y la tarjeta de programación llamada “STM32F411RE”. Se desarrollo un software con toda la lógica del juego con un lenguaje de programación tipo C.
FUNCIONALIDAD DEL TETRIS Las figuras programadas aparecerán en la zona superior de la matriz, se irán desplazando hacia la zona inferior de la matriz en el transcurso en el que la pieza está bajando, el jugador podrá rotar las figuras y moverlas a través de las filas, al completar las filas esta desaparece y se desplazan las que estaban encima para continuar el juego.
OBJETIVO GENERAL: Desarrollar un tetris mediante la plataforma de programación MBED y una tarjeta de programación llamada “STM32F411RE”.
OBJETIVOS ESPECIFICOS:
• Desarrollar las 4 figuras básicas del juego Tetris.
• Visualizar las figuras en una matriz de 8x8.
• Utilizar visualización dinámica para visualizar el movimiento de la figura.
• implementar un joystick para la jugabilidad.
MATERIALES:
• Matriz de 8x8
• Tarjeta STM núcleo F411RE.
• Controlador MAX 7219.
• Módulo de joystick análogo-digital.
PROGRAMACION TETRIS
Se definen las figuras para llamarlas en la matriz.

Se declaran las librerías para poder usar mbed y demás variables tipo char luego Se nombran los pines a utilizar y se hace la comunicación Tx y Rx entre la tarjeta STM32F411 y la matriz max7219 se declaran las entradas análogas del sistema y las matrices (activa y temporal) Matrix_act: La matriz activa es la que guarda lo que se está imprimiendo en la matriz max7219 Matrix_tmp: La matriz temporal en la envía las figuras a la Matriz activa Matrix_tmp1:La matriz temporal 1 es la que guarda los grados de las figuras Después se nombran las fila, columna, figura, grados y posición.

A continuación se define el funcionamiento de la matriz, es decir la comparación entre la matriz temporal y la matriz activa para así poder guardar las figuras (dato) enviadas en la matriz max7219.

La función Clr_Vcol Borra datos que se hallan guardado anteriormente en la matriz, para evitar errores al guardar los datos. Luego Se generan las figuras y columnas aleatoria mente en la matriz, la función pc.printf imprime la figura y la columna para que el juego de tetris no se sepa cual figura va salir y en que columna. Para mover las figuras se usa un joystick el cual este lee los datos del convertidor análogo-digital para lograr hacer los movimientos izquierda, derecha y abajo, se hace la conversión para visualizar el dato en mili voltios.


Se crean los casos para asignar las rotaciones a cada figura.

Estos casos son para el movimiento que pueden tener las figuras Lo que hace es comparar la matriz temporal con las columnas para poder hacer estos movimientos

A continuación se lee la figura, se selecciona la figura y se nombran.

Se limpia la matriz activa para evitar que se llene de basura es decir códigos anteriores y guarda los datos en las matrices para que aleatoriamente seleccionen la figura y compara dichas matrices para que sepa dónde puede moverse si izquierda o derecha es decir los espacios que no tengan ningún dato y final mente imprima en la matriz.


Tetris


