
zsdfg
42prueba.cpp@0:07b91fff3b06, 2018-09-26 (annotated)
- Committer:
- hdzoisrael
- Date:
- Wed Sep 26 18:38:34 2018 +0000
- Revision:
- 0:07b91fff3b06
Tevalevalv_42;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
hdzoisrael | 0:07b91fff3b06 | 1 | /*Se requiere un tablero digital implementado en un LCD. El sistema deberá mostrar la puntuación |
hdzoisrael | 0:07b91fff3b06 | 2 | para un juego de hockey, en ambas porterías existen sensoresdenominado A y B que detectan |
hdzoisrael | 0:07b91fff3b06 | 3 | cuando se anota un gol por lo que automáticamente se marcara el puntaje y tiene un botón para |
hdzoisrael | 0:07b91fff3b06 | 4 | reiniciar la cuenta. El marcador debe ser mostrado en una pantalla como en el siguiente ejemplo: |
hdzoisrael | 0:07b91fff3b06 | 5 | Linea 1 del LCD: LOCAL 05 |
hdzoisrael | 0:07b91fff3b06 | 6 | Linea 2 del LCD: VISITANTE 05 |
hdzoisrael | 0:07b91fff3b06 | 7 | */ |
hdzoisrael | 0:07b91fff3b06 | 8 | #include "mbed.h" |
hdzoisrael | 0:07b91fff3b06 | 9 | #include "TextLCD.h" |
hdzoisrael | 0:07b91fff3b06 | 10 | |
hdzoisrael | 0:07b91fff3b06 | 11 | DigitalIn local(D14); |
hdzoisrael | 0:07b91fff3b06 | 12 | DigitalIn visitante(D15); |
hdzoisrael | 0:07b91fff3b06 | 13 | DigitalIn reinicio(D8); |
hdzoisrael | 0:07b91fff3b06 | 14 | TextLCD lcd(D2,D3,A2,A3,A4,A5); // rs, e, d4-d7 |
hdzoisrael | 0:07b91fff3b06 | 15 | |
hdzoisrael | 0:07b91fff3b06 | 16 | int main() { |
hdzoisrael | 0:07b91fff3b06 | 17 | while(1){ |
hdzoisrael | 0:07b91fff3b06 | 18 | int suma1=0; |
hdzoisrael | 0:07b91fff3b06 | 19 | int suma2=0; |
hdzoisrael | 0:07b91fff3b06 | 20 | lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 21 | |
hdzoisrael | 0:07b91fff3b06 | 22 | lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 23 | for(int k=0;k<3;k++){ //adorno |
hdzoisrael | 0:07b91fff3b06 | 24 | lcd.printf("**Inicio del**\n****juego****");wait(0.5);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 25 | lcd.printf(" \n");wait(0.3);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 26 | } |
hdzoisrael | 0:07b91fff3b06 | 27 | |
hdzoisrael | 0:07b91fff3b06 | 28 | int val=1; |
hdzoisrael | 0:07b91fff3b06 | 29 | while(val){ |
hdzoisrael | 0:07b91fff3b06 | 30 | if(reinicio==1){ |
hdzoisrael | 0:07b91fff3b06 | 31 | NVIC_SystemReset(); |
hdzoisrael | 0:07b91fff3b06 | 32 | } |
hdzoisrael | 0:07b91fff3b06 | 33 | if(local==1){ |
hdzoisrael | 0:07b91fff3b06 | 34 | suma1=suma1+1; |
hdzoisrael | 0:07b91fff3b06 | 35 | if(suma1==5){ |
hdzoisrael | 0:07b91fff3b06 | 36 | for(int k=0;k<4;k++){ //adorno |
hdzoisrael | 0:07b91fff3b06 | 37 | lcd.printf("*LOCAL*\n<===========");wait(0.4);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 38 | lcd.printf("\n************");wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 39 | lcd.printf("\n*GANADOR*");wait(0.4);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 40 | lcd.printf("************\n");wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 41 | } |
hdzoisrael | 0:07b91fff3b06 | 42 | val=0; //para regresar al programa principal |
hdzoisrael | 0:07b91fff3b06 | 43 | } |
hdzoisrael | 0:07b91fff3b06 | 44 | else{ |
hdzoisrael | 0:07b91fff3b06 | 45 | lcd.printf("L \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 46 | lcd.printf("OL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 47 | lcd.printf("OOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 48 | lcd.printf("OOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 49 | lcd.printf("GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 50 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 51 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 52 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 53 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 54 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 55 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 56 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 57 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 58 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 59 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 60 | lcd.printf(" GOOOL\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 61 | lcd.printf(" GOOO\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 62 | lcd.printf(" GOO\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 63 | lcd.printf(" GO\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 64 | lcd.printf(" G\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 65 | lcd.printf(" \n");wait(0.3);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 66 | } |
hdzoisrael | 0:07b91fff3b06 | 67 | } |
hdzoisrael | 0:07b91fff3b06 | 68 | if(visitante==1){ |
hdzoisrael | 0:07b91fff3b06 | 69 | suma2=suma2+1; |
hdzoisrael | 0:07b91fff3b06 | 70 | if(suma2==5){ |
hdzoisrael | 0:07b91fff3b06 | 71 | for(int k=0;k<4;k++){ //adorno |
hdzoisrael | 0:07b91fff3b06 | 72 | lcd.printf("*VISITANTE*\n===========>");wait(0.4);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 73 | lcd.printf("\n************");wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 74 | lcd.printf("\n*GANADOR*");wait(0.4);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 75 | lcd.printf("************\n");wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 76 | } |
hdzoisrael | 0:07b91fff3b06 | 77 | val=0; //para regresar al programa principal |
hdzoisrael | 0:07b91fff3b06 | 78 | } |
hdzoisrael | 0:07b91fff3b06 | 79 | else{ |
hdzoisrael | 0:07b91fff3b06 | 80 | lcd.printf("L \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 81 | lcd.printf("OL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 82 | lcd.printf("OOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 83 | lcd.printf("OOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 84 | lcd.printf("GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 85 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 86 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 87 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 88 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 89 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 90 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 91 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 92 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 93 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 94 | lcd.printf(" GOOOL \n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 95 | lcd.printf(" GOOOL\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 96 | lcd.printf(" GOOO\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 97 | lcd.printf(" GOO\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 98 | lcd.printf(" GO\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 99 | lcd.printf(" G\n",suma1);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 100 | lcd.printf(" \n");wait(0.3);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 101 | } |
hdzoisrael | 0:07b91fff3b06 | 102 | } |
hdzoisrael | 0:07b91fff3b06 | 103 | else{//mostrando marcador |
hdzoisrael | 0:07b91fff3b06 | 104 | lcd.printf("LOCAL= %i \nVISITANTE= %i",suma1,suma2);wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 105 | lcd.printf("\n");wait(0.001);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 106 | }//if prueba |
hdzoisrael | 0:07b91fff3b06 | 107 | }//final while var |
hdzoisrael | 0:07b91fff3b06 | 108 | //} //final if |
hdzoisrael | 0:07b91fff3b06 | 109 | |
hdzoisrael | 0:07b91fff3b06 | 110 | for(int k=0;k<5;k++){ //adorno |
hdzoisrael | 0:07b91fff3b06 | 111 | lcd.printf("*JUEGO*\n*FINALIZADO*");wait(0.5);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 112 | lcd.printf("\n");wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 113 | } |
hdzoisrael | 0:07b91fff3b06 | 114 | lcd.printf("*\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 115 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 116 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 117 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 118 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 119 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 120 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 121 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 122 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 123 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 124 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 125 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 126 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 127 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 128 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 129 | lcd.printf(" *\n");wait(0.1);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 130 | lcd.printf("\n");wait(0.2);lcd.cls(); |
hdzoisrael | 0:07b91fff3b06 | 131 | |
hdzoisrael | 0:07b91fff3b06 | 132 | |
hdzoisrael | 0:07b91fff3b06 | 133 | }//fin if reinicio |
hdzoisrael | 0:07b91fff3b06 | 134 | } //end while (1) |
hdzoisrael | 0:07b91fff3b06 | 135 | //end int |