Renzo Villani / Mbed 2 deprecated Atrapa_la_Luz

Dependencies:   mbed

Committer:
villani
Date:
Sun Jun 05 21:55:47 2022 +0000
Revision:
0:b24a8232cb00
Atrapa la luz nashe

Who changed what in which revision?

UserRevisionLine numberNew contents of line
villani 0:b24a8232cb00 1 #include "mbed.h"
villani 0:b24a8232cb00 2
villani 0:b24a8232cb00 3 Ticker tick; //Definición del ticker
villani 0:b24a8232cb00 4
villani 0:b24a8232cb00 5 // Entradas y salidas
villani 0:b24a8232cb00 6
villani 0:b24a8232cb00 7 // Leds indicadores de turno
villani 0:b24a8232cb00 8 DigitalOut LED_JUG_1(PTE30);
villani 0:b24a8232cb00 9 DigitalOut LED_JUG_2(PTE29);
villani 0:b24a8232cb00 10
villani 0:b24a8232cb00 11 //Control de catodos para la multiplexación
villani 0:b24a8232cb00 12 DigitalOut K_1(PTA13);
villani 0:b24a8232cb00 13 DigitalOut K_2(PTD5);
villani 0:b24a8232cb00 14
villani 0:b24a8232cb00 15 //Segmentos del los displays
villani 0:b24a8232cb00 16 DigitalOut SEGMENTO_A(PTC12);
villani 0:b24a8232cb00 17 DigitalOut SEGMENTO_B(PTC13);
villani 0:b24a8232cb00 18 DigitalOut SEGMENTO_C(PTC16);
villani 0:b24a8232cb00 19 DigitalOut SEGMENTO_D(PTC17);
villani 0:b24a8232cb00 20 DigitalOut SEGMENTO_E(PTA16);
villani 0:b24a8232cb00 21 DigitalOut SEGMENTO_F(PTA17);
villani 0:b24a8232cb00 22 DigitalOut SEGMENTO_G(PTE31);
villani 0:b24a8232cb00 23
villani 0:b24a8232cb00 24 //Fila de leds de juego
villani 0:b24a8232cb00 25 BusOut myleds(PTC7,PTC0,PTC3,PTC4,PTC5,PTC6,PTC10,PTC11); //Funcion para vectorizar la salida
villani 0:b24a8232cb00 26
villani 0:b24a8232cb00 27 //Pulsadores
villani 0:b24a8232cb00 28 BusIn mypuls(PTC8,PTC9); //Funcion para vectorizar la entrada (jugador 1 y 2 respectivamente)
villani 0:b24a8232cb00 29
villani 0:b24a8232cb00 30
villani 0:b24a8232cb00 31 // Definicion de estados
villani 0:b24a8232cb00 32 enum{
villani 0:b24a8232cb00 33 STANDBY = 0, //0
villani 0:b24a8232cb00 34 TURNO_J1, // 1
villani 0:b24a8232cb00 35 TURNO_J2, // 2
villani 0:b24a8232cb00 36 TRANSICION, //3
villani 0:b24a8232cb00 37 GANADOR //4
villani 0:b24a8232cb00 38 };
villani 0:b24a8232cb00 39
villani 0:b24a8232cb00 40
villani 0:b24a8232cb00 41 #define BASE_TIEMPO 0.01 // Base de tiempo 10ms
villani 0:b24a8232cb00 42
villani 0:b24a8232cb00 43 //Declaración de variables universales
villani 0:b24a8232cb00 44 unsigned int t = 0; //Timer de la maquinada de estados
villani 0:b24a8232cb00 45 unsigned int clk = 0; //Timer de multiplexación
villani 0:b24a8232cb00 46 unsigned char tipo_de_transicion = 0; //Define que transición se ejecutará y a que estado pasara despues de pasar por el estado TRANSICION
villani 0:b24a8232cb00 47 static int posicion_leds; //Define que led de juego estara encendido una vez el juego comenzado
villani 0:b24a8232cb00 48 unsigned char direccion; //Define el recorrido de "la luz"
villani 0:b24a8232cb00 49 unsigned char prox_turno; //Define a posicion inicial y dirección de "la luz"
villani 0:b24a8232cb00 50 static int parpadeo = 0; //Define la cantidad de veces que el/los leds parpadean
villani 0:b24a8232cb00 51 unsigned char puntuacion[2] = {0};
villani 0:b24a8232cb00 52 unsigned char numero_display[10] = {0b1111110,0b0110000,0b1101101,0b1111001,0b0110011,0b1011011,0b1011111,0b1110000,0b1111111,0b1111011}; //Vector con todos los valores binarios necesarios para el control de los displays usando operaciones de bits
villani 0:b24a8232cb00 53
villani 0:b24a8232cb00 54 //Maquina de estados
villani 0:b24a8232cb00 55 void Input_Pulso(int indice);
villani 0:b24a8232cb00 56
villani 0:b24a8232cb00 57 //Funcion para el manejo de displays
villani 0:b24a8232cb00 58 void Display(int numero_1, int numero_2);
villani 0:b24a8232cb00 59
villani 0:b24a8232cb00 60 // Funcion del ticker
villani 0:b24a8232cb00 61 void Interrupcion(void)
villani 0:b24a8232cb00 62 {
villani 0:b24a8232cb00 63 t++;
villani 0:b24a8232cb00 64 clk++;
villani 0:b24a8232cb00 65 }
villani 0:b24a8232cb00 66
villani 0:b24a8232cb00 67 //Inicialización de comunicación serial
villani 0:b24a8232cb00 68 Serial pc(USBTX, USBRX, 115200);
villani 0:b24a8232cb00 69
villani 0:b24a8232cb00 70 int main() {
villani 0:b24a8232cb00 71 // Inicializaciones
villani 0:b24a8232cb00 72 mypuls[0].mode(PullNone);
villani 0:b24a8232cb00 73 mypuls[1].mode(PullNone);
villani 0:b24a8232cb00 74 tick.attach(&Interrupcion, BASE_TIEMPO);
villani 0:b24a8232cb00 75
villani 0:b24a8232cb00 76 //Bucle infinito
villani 0:b24a8232cb00 77 while(1){
villani 0:b24a8232cb00 78 Input_Pulso(0);
villani 0:b24a8232cb00 79 Display(puntuacion[0], puntuacion[1]);
villani 0:b24a8232cb00 80 }
villani 0:b24a8232cb00 81 }
villani 0:b24a8232cb00 82
villani 0:b24a8232cb00 83 void Input_Pulso(int indice){
villani 0:b24a8232cb00 84 static int estado = STANDBY; //Estado inicial
villani 0:b24a8232cb00 85 switch(estado){
villani 0:b24a8232cb00 86 case STANDBY:
villani 0:b24a8232cb00 87 //Antes de iniciar el juego
villani 0:b24a8232cb00 88 LED_JUG_1 = 1; //Se encienden ambos leds indicadores de turnos
villani 0:b24a8232cb00 89 LED_JUG_2 = 1;
villani 0:b24a8232cb00 90 if(t<100){ //Durante 1s...
villani 0:b24a8232cb00 91 for(int p=0;p<8;p++){ //Los leds de juego pares permaneceran prendidos mientras que los impares apagados
villani 0:b24a8232cb00 92 if(p % 2 == 0)
villani 0:b24a8232cb00 93 myleds[p] = 1;
villani 0:b24a8232cb00 94 else
villani 0:b24a8232cb00 95 myleds[p] = 0;
villani 0:b24a8232cb00 96 }
villani 0:b24a8232cb00 97 }
villani 0:b24a8232cb00 98 if(t>=100 && t<200){ //Durante 1s pasado el anterior...
villani 0:b24a8232cb00 99 for(int p=0;p<8;p++){ //Los leds de juego impares permaneceran prendidos mientras que los pares apagados
villani 0:b24a8232cb00 100 if(p % 2 != 0)
villani 0:b24a8232cb00 101 myleds[p] = 1;
villani 0:b24a8232cb00 102 else
villani 0:b24a8232cb00 103 myleds[p] = 0;
villani 0:b24a8232cb00 104 }
villani 0:b24a8232cb00 105 }
villani 0:b24a8232cb00 106 if(t>=200) //Cada 2s el timer t se resetea
villani 0:b24a8232cb00 107 t=0;
villani 0:b24a8232cb00 108 if(mypuls[0]==1 && mypuls[1]==1){ //Si ambos pulsadores se presionan simutaneamente...
villani 0:b24a8232cb00 109 estado = TRANSICION; //Se cambia el estado dando inicio al juego
villani 0:b24a8232cb00 110 t = 0; //Se resetea el timer t
villani 0:b24a8232cb00 111 tipo_de_transicion = 0; //Se indica que trancición se ejecutara
villani 0:b24a8232cb00 112 for(int p=0;p<8;p++){ //Se apagan todos los leds de juego
villani 0:b24a8232cb00 113 myleds[p] = 0;
villani 0:b24a8232cb00 114 }
villani 0:b24a8232cb00 115 }
villani 0:b24a8232cb00 116 break;
villani 0:b24a8232cb00 117 case TRANSICION:
villani 0:b24a8232cb00 118 //Abarca todas las tranciciones del juego
villani 0:b24a8232cb00 119 if(puntuacion[0]>=5 || puntuacion[1]>=5){ //Primero se revisa si alguno de los dos jugadores ganó
villani 0:b24a8232cb00 120 estado = GANADOR; //Cabio de estado a GANADOR
villani 0:b24a8232cb00 121 if(puntuacion[0] > puntuacion[1]) //Luego se revisa cual de los dos jugadores gano y se comunica serialmente
villani 0:b24a8232cb00 122 pc.printf("EL JUGARDOR 1 GANA!!!!\n");
villani 0:b24a8232cb00 123 else
villani 0:b24a8232cb00 124 pc.printf("EL JUGARDOR 2 GANA!!!!\n");
villani 0:b24a8232cb00 125 for(int p=0;p<8;p++){ //Se apagan todos los leds de juego
villani 0:b24a8232cb00 126 myleds[p] = 0;
villani 0:b24a8232cb00 127 }
villani 0:b24a8232cb00 128
villani 0:b24a8232cb00 129 }
villani 0:b24a8232cb00 130 switch(tipo_de_transicion){
villani 0:b24a8232cb00 131 case 0: //Transición del estado STANDBY a TURNO_J1
villani 0:b24a8232cb00 132 //Todos los leds de juego parpaderan lentamente tres veces antes de dar inicio al juego
villani 0:b24a8232cb00 133 if(t<50){ //Los primeros 500ms...
villani 0:b24a8232cb00 134 for(int p=0;p<8;p++){ //Se encienden todos los leds de juego
villani 0:b24a8232cb00 135 myleds[p] = 1;
villani 0:b24a8232cb00 136 }
villani 0:b24a8232cb00 137 }
villani 0:b24a8232cb00 138 else if(t>=50 && t<100){ //Los siguientes 500ms...
villani 0:b24a8232cb00 139 for(int p=0;p<8;p++){ //Se apagan todos los leds de juego
villani 0:b24a8232cb00 140 myleds[p] = 0;
villani 0:b24a8232cb00 141 }
villani 0:b24a8232cb00 142 }
villani 0:b24a8232cb00 143 else if(t>=100 && t<150){ //Los siguientes 500ms...
villani 0:b24a8232cb00 144 for(int p=0;p<8;p++){ //Se encienden todos los leds de juego
villani 0:b24a8232cb00 145 myleds[p] = 1;
villani 0:b24a8232cb00 146 }
villani 0:b24a8232cb00 147 }
villani 0:b24a8232cb00 148 else if(t>=150 && t<200){ //Los siguientes 500ms...
villani 0:b24a8232cb00 149 for(int p=0;p<8;p++){ //Se apagan todos los leds de juego
villani 0:b24a8232cb00 150 myleds[p] = 0;
villani 0:b24a8232cb00 151 }
villani 0:b24a8232cb00 152 }
villani 0:b24a8232cb00 153 else if(t>=200 && t<400){ //El siguiente segundo...
villani 0:b24a8232cb00 154 for(int p=0;p<8;p++){ //Se encienden todos los leds de juego
villani 0:b24a8232cb00 155 myleds[p] = 1;
villani 0:b24a8232cb00 156 }
villani 0:b24a8232cb00 157 }
villani 0:b24a8232cb00 158 else if(t>=400){ //Luego de 4s del ultimo reinicio del timer...
villani 0:b24a8232cb00 159 for(int p=0;p<8;p++){ //Se apagan todos los leds de juego
villani 0:b24a8232cb00 160 myleds[p] = 0;
villani 0:b24a8232cb00 161 }
villani 0:b24a8232cb00 162 t = 0; //Se reinicia el timer t
villani 0:b24a8232cb00 163 estado = TURNO_J1; //Se cambia el estado al turno del jugador 1
villani 0:b24a8232cb00 164 direccion = 0; //Se ajustan las condiciones iniciales de "la luz"
villani 0:b24a8232cb00 165 posicion_leds = 0;
villani 0:b24a8232cb00 166 LED_JUG_2 = 0; //Se apaga el led de turno 2 mientras que el otro se deja encendido
villani 0:b24a8232cb00 167 }
villani 0:b24a8232cb00 168 break;
villani 0:b24a8232cb00 169 case 1: //Trancición entre los turnos de los jugadores
villani 0:b24a8232cb00 170 //El led de juego que se encontraba encendido al momento de la pulsación del jugador en su turno se pondra a parpadear rapidamente (100ms) por un breve periodo de tiempo antes del siguiente turno
villani 0:b24a8232cb00 171 if(t>10 && parpadeo<15){
villani 0:b24a8232cb00 172 parpadeo++;
villani 0:b24a8232cb00 173 myleds[posicion_leds]=!myleds[posicion_leds];
villani 0:b24a8232cb00 174 t = 0; //Se reinicia el timer t
villani 0:b24a8232cb00 175 }
villani 0:b24a8232cb00 176 if(parpadeo>=15){
villani 0:b24a8232cb00 177 //En función de la variable "proximo_turno" se cambia el estado a "TURNO_J1" o "TURNO_J2" y se ajustan las condiciones iniciales y al estado que se cambiara
villani 0:b24a8232cb00 178 if(prox_turno==0){
villani 0:b24a8232cb00 179 direccion = 0;
villani 0:b24a8232cb00 180 posicion_leds = 0;
villani 0:b24a8232cb00 181 LED_JUG_1 = 1;
villani 0:b24a8232cb00 182 LED_JUG_2 = 0;
villani 0:b24a8232cb00 183 estado = TURNO_J1;
villani 0:b24a8232cb00 184 }
villani 0:b24a8232cb00 185 else if(prox_turno==1){
villani 0:b24a8232cb00 186 direccion = 1;
villani 0:b24a8232cb00 187 posicion_leds = 7;
villani 0:b24a8232cb00 188 LED_JUG_1 = 0;
villani 0:b24a8232cb00 189 LED_JUG_2 = 1;
villani 0:b24a8232cb00 190 estado = TURNO_J2;
villani 0:b24a8232cb00 191 }
villani 0:b24a8232cb00 192 parpadeo = 0; //Se resetea la variable
villani 0:b24a8232cb00 193 }
villani 0:b24a8232cb00 194 break;
villani 0:b24a8232cb00 195 default: //No deberia pasar nunca pero esta puesto por las dudas
villani 0:b24a8232cb00 196 tipo_de_transicion = 0;
villani 0:b24a8232cb00 197 break;
villani 0:b24a8232cb00 198 }
villani 0:b24a8232cb00 199 break;
villani 0:b24a8232cb00 200 case TURNO_J1:
villani 0:b24a8232cb00 201 switch(direccion){ //Controla que la variable "posicion_leds" vaya de 0 a 7 y viceversa
villani 0:b24a8232cb00 202 case 0: //Dirección estandar
villani 0:b24a8232cb00 203 if(t >= 5){ //Tiempo en el que tarda un "pasar la luz de un led al siguiente"
villani 0:b24a8232cb00 204 posicion_leds++;
villani 0:b24a8232cb00 205 t = 0; //Se resetea el tiempo
villani 0:b24a8232cb00 206 }
villani 0:b24a8232cb00 207 if(posicion_leds >=7) //Una vez llegando al ultimo led de juego...
villani 0:b24a8232cb00 208 direccion = 1; //Cambio de dirección
villani 0:b24a8232cb00 209 break;
villani 0:b24a8232cb00 210 case 1: //Dirección inversa
villani 0:b24a8232cb00 211 if(t >= 5){ //Tiempo en el que tarda un "pasar la luz de un led al anterior"
villani 0:b24a8232cb00 212 posicion_leds--;
villani 0:b24a8232cb00 213 t = 0; //Se resetea el tiempo
villani 0:b24a8232cb00 214 }
villani 0:b24a8232cb00 215 if(posicion_leds <=0) ///Una vez llegando al primer led de juego...
villani 0:b24a8232cb00 216 direccion = 0; //Cambio de dirrección
villani 0:b24a8232cb00 217 break;
villani 0:b24a8232cb00 218 default: //No deberia pasar nunca pero esta puesto por las dudas
villani 0:b24a8232cb00 219 direccion = 0;
villani 0:b24a8232cb00 220 break;
villani 0:b24a8232cb00 221 }
villani 0:b24a8232cb00 222 for(int p=0;p<8;p++){ //Primero se apagan todos los leds de juego
villani 0:b24a8232cb00 223 myleds[p] = 0;
villani 0:b24a8232cb00 224 }
villani 0:b24a8232cb00 225 myleds[posicion_leds] = 1; //Luego se prende unicamente el led de juego que la variable "posicion_leds" defina
villani 0:b24a8232cb00 226 if(mypuls[0] == 1){ //Pulsación del jugador 1
villani 0:b24a8232cb00 227 if(posicion_leds==7) //Si el led se juego encendido es el ultimo...
villani 0:b24a8232cb00 228 puntuacion[0]++; //Se logra puntuar
villani 0:b24a8232cb00 229 t = 0; //Se resetea el tiempo
villani 0:b24a8232cb00 230 tipo_de_transicion = 1; //Se indica que trancición de ejecutara
villani 0:b24a8232cb00 231 estado = TRANSICION; //Se cambia el estado
villani 0:b24a8232cb00 232 prox_turno = 1; //Se indica que el proximo turno es del jugador 2
villani 0:b24a8232cb00 233 pc.printf("JUGARDOR 1:%d JUGADOR 2:%d\n",puntuacion[0],puntuacion[1]); //Se comunica la puntuación por comunicación serial
villani 0:b24a8232cb00 234 }
villani 0:b24a8232cb00 235 break;
villani 0:b24a8232cb00 236 case TURNO_J2:
villani 0:b24a8232cb00 237 switch(direccion){ //Controla que la variable "posicion_leds" vaya de 0 a 7 y viceversa
villani 0:b24a8232cb00 238 case 0: //Dirección estandar
villani 0:b24a8232cb00 239 if(t >= 5){ //Tiempo en el que tarda un "pasar la luz de un led al siguiente"
villani 0:b24a8232cb00 240 posicion_leds++;
villani 0:b24a8232cb00 241 t = 0; //Se resetea el tiempo
villani 0:b24a8232cb00 242 }
villani 0:b24a8232cb00 243 if(posicion_leds >=7) //Una vez llegando al ultimo led de juego...
villani 0:b24a8232cb00 244 direccion = 1; //Cambio de dirección
villani 0:b24a8232cb00 245 break;
villani 0:b24a8232cb00 246 case 1: //Dirección inversa
villani 0:b24a8232cb00 247 if(t >= 5){ //Tiempo en el que tarda un "pasar la luz de un led al anterior"
villani 0:b24a8232cb00 248 posicion_leds--;
villani 0:b24a8232cb00 249 t = 0; //Se resetea el tiempo
villani 0:b24a8232cb00 250 }
villani 0:b24a8232cb00 251 if(posicion_leds <=0) //Una vez llegando al primer led de juego...
villani 0:b24a8232cb00 252 direccion = 0; //Cambio de dirrección
villani 0:b24a8232cb00 253 break;
villani 0:b24a8232cb00 254 default: //No deberia pasar nunca pero esta puesto por las dudas
villani 0:b24a8232cb00 255 direccion = 0;
villani 0:b24a8232cb00 256 break;
villani 0:b24a8232cb00 257 }
villani 0:b24a8232cb00 258 for(int p=0;p<8;p++){ //Primero se apagan todos los leds de juego
villani 0:b24a8232cb00 259 myleds[p] = 0;
villani 0:b24a8232cb00 260 }
villani 0:b24a8232cb00 261 myleds[posicion_leds] = 1; //Luego se prende unicamente el led de juego que la variable "posicion_leds" defina
villani 0:b24a8232cb00 262 if(mypuls[1] == 1){ //Pulsación del jugador 2
villani 0:b24a8232cb00 263 if(posicion_leds==0) //Si el led se juego encendido es el primero...
villani 0:b24a8232cb00 264 puntuacion[1]++; //Se logra puntuar
villani 0:b24a8232cb00 265 t = 0; //Se resetea el tiempo
villani 0:b24a8232cb00 266 tipo_de_transicion = 1; //Se indica que trancición de ejecutara
villani 0:b24a8232cb00 267 estado = TRANSICION; //Se cambia el estado
villani 0:b24a8232cb00 268 prox_turno = 0; //Se indica que el proximo turno es del jugador 1
villani 0:b24a8232cb00 269 pc.printf("JUGARDOR 1:%d JUGADOR 2:%d\n",puntuacion[0],puntuacion[1]); //Se comunica la puntuación por comunicación serial
villani 0:b24a8232cb00 270 }
villani 0:b24a8232cb00 271 break;
villani 0:b24a8232cb00 272 case GANADOR:
villani 0:b24a8232cb00 273 //Todos los leds de juego parpaderan
villani 0:b24a8232cb00 274 if(t>10 && parpadeo<50){ //Ajuste de tiempo y cantidad de veces que los leds parpadearan
villani 0:b24a8232cb00 275 parpadeo++;
villani 0:b24a8232cb00 276 for(int p=0;p<8;p++){
villani 0:b24a8232cb00 277 myleds[p]=!myleds[p];
villani 0:b24a8232cb00 278 }
villani 0:b24a8232cb00 279 t = 0;
villani 0:b24a8232cb00 280 }
villani 0:b24a8232cb00 281 if(parpadeo>=50){ //Una vez finalizado el parpadeo...
villani 0:b24a8232cb00 282 parpadeo = 0;
villani 0:b24a8232cb00 283 estado = STANDBY; //Se cambia al estado inicial
villani 0:b24a8232cb00 284 puntuacion[0] = 0; //Se reinician ambas puntuaciones
villani 0:b24a8232cb00 285 puntuacion[1] = 0;
villani 0:b24a8232cb00 286 }
villani 0:b24a8232cb00 287 break;
villani 0:b24a8232cb00 288 }
villani 0:b24a8232cb00 289 }
villani 0:b24a8232cb00 290
villani 0:b24a8232cb00 291
villani 0:b24a8232cb00 292 void Display(int numero_1, int numero_2){
villani 0:b24a8232cb00 293 //A la funcion se le ingresan dos variales: puntuacion[0] y puntuacion[1]
villani 0:b24a8232cb00 294 static int posicion=0; //Variable que difine los estados de los transistores colocados en los catodos de los displays
villani 0:b24a8232cb00 295 if(clk==1){ //Tiempo de multiplexación: 10ms
villani 0:b24a8232cb00 296 if(posicion==1){
villani 0:b24a8232cb00 297 posicion = 0; //Cambio de la variable para el siguiento uso
villani 0:b24a8232cb00 298 K_2 = 0; //Transistor 2 al corte
villani 0:b24a8232cb00 299 K_1 = 1; //Transistor 1 en saturación
villani 0:b24a8232cb00 300 //Impresión de la puntuación del jugador 1 en el primer display
villani 0:b24a8232cb00 301 SEGMENTO_A = numero_display[numero_1]&0b1000000;
villani 0:b24a8232cb00 302 SEGMENTO_B = numero_display[numero_1]&0b0100000;
villani 0:b24a8232cb00 303 SEGMENTO_C = numero_display[numero_1]&0b0010000;
villani 0:b24a8232cb00 304 SEGMENTO_D = numero_display[numero_1]&0b0001000;
villani 0:b24a8232cb00 305 SEGMENTO_E = numero_display[numero_1]&0b0000100;
villani 0:b24a8232cb00 306 SEGMENTO_F = numero_display[numero_1]&0b0000010;
villani 0:b24a8232cb00 307 SEGMENTO_G = numero_display[numero_1]&0b0000001;
villani 0:b24a8232cb00 308 }
villani 0:b24a8232cb00 309 else{
villani 0:b24a8232cb00 310 posicion = 1; //Cambio de la variable para el siguiento uso
villani 0:b24a8232cb00 311 K_1 = 0; //Transistor 1 al corte
villani 0:b24a8232cb00 312 K_2 = 1; //Transistor 2 en saturación
villani 0:b24a8232cb00 313 //Impresión de la puntuación del jugador 2 en el segundo display
villani 0:b24a8232cb00 314 SEGMENTO_A = numero_display[numero_2]&0b1000000;
villani 0:b24a8232cb00 315 SEGMENTO_B = numero_display[numero_2]&0b0100000;
villani 0:b24a8232cb00 316 SEGMENTO_C = numero_display[numero_2]&0b0010000;
villani 0:b24a8232cb00 317 SEGMENTO_D = numero_display[numero_2]&0b0001000;
villani 0:b24a8232cb00 318 SEGMENTO_E = numero_display[numero_2]&0b0000100;
villani 0:b24a8232cb00 319 SEGMENTO_F = numero_display[numero_2]&0b0000010;
villani 0:b24a8232cb00 320 SEGMENTO_G = numero_display[numero_2]&0b0000001;
villani 0:b24a8232cb00 321 }
villani 0:b24a8232cb00 322 clk = 0; //Reseteo del clock
villani 0:b24a8232cb00 323 }
villani 0:b24a8232cb00 324 }