Trabajo práctico 1 Ejercicio 2 SIMON Maver, Francisco Almada, Santiago

Dependencies:   mbed tsi_sensor

Committer:
Franmaver
Date:
Sun Jun 02 16:51:36 2019 +0000
Revision:
0:8fc99b9ef045
TP1_ejer2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Franmaver 0:8fc99b9ef045 1 #include "mbed.h"
Franmaver 0:8fc99b9ef045 2 #include "tsi_sensor.h"
Franmaver 0:8fc99b9ef045 3 #include "stdlib.h"
Franmaver 0:8fc99b9ef045 4
Franmaver 0:8fc99b9ef045 5 /* This defines will be replaced by PinNames soon */
Franmaver 0:8fc99b9ef045 6 #if defined (TARGET_KL25Z) || defined (TARGET_KL46Z)
Franmaver 0:8fc99b9ef045 7 #define ELEC0 9
Franmaver 0:8fc99b9ef045 8 #define ELEC1 10
Franmaver 0:8fc99b9ef045 9 #elif defined (TARGET_KL05Z)
Franmaver 0:8fc99b9ef045 10 #define ELEC0 9
Franmaver 0:8fc99b9ef045 11 #define ELEC1 8
Franmaver 0:8fc99b9ef045 12 #else
Franmaver 0:8fc99b9ef045 13 #error TARGET NOT DEFINED
Franmaver 0:8fc99b9ef045 14 #endif
Franmaver 0:8fc99b9ef045 15 //defino las salidas
Franmaver 0:8fc99b9ef045 16 DigitalOut verde(LED_GREEN);
Franmaver 0:8fc99b9ef045 17 DigitalOut azul(LED_BLUE);
Franmaver 0:8fc99b9ef045 18 DigitalOut rojo(LED_RED);
Franmaver 0:8fc99b9ef045 19
Franmaver 0:8fc99b9ef045 20 TSIAnalogSlider tsi(ELEC0, ELEC1, 40);
Franmaver 0:8fc99b9ef045 21
Franmaver 0:8fc99b9ef045 22 int PULS_TSI();
Franmaver 0:8fc99b9ef045 23 int COLORES();
Franmaver 0:8fc99b9ef045 24
Franmaver 0:8fc99b9ef045 25 //General
Franmaver 0:8fc99b9ef045 26 enum MAQUINA_ESTADO_GENERAL {INICIO, MUESTRO_SEC, ESPERO_SEC, APRETO, LOOSER, WIN};
Franmaver 0:8fc99b9ef045 27 MAQUINA_ESTADO_GENERAL MAQUINA_GENERAL;
Franmaver 0:8fc99b9ef045 28 void FUNCION_GENERAL();
Franmaver 0:8fc99b9ef045 29
Franmaver 0:8fc99b9ef045 30 //Muestro
Franmaver 0:8fc99b9ef045 31 enum MAQUINA_ESTADO_MUESTRO {INICIO2, ON, OFF};
Franmaver 0:8fc99b9ef045 32 MAQUINA_ESTADO_MUESTRO MAQUINA_MUESTRO;
Franmaver 0:8fc99b9ef045 33 void FUNCION_MOSTRAR();
Franmaver 0:8fc99b9ef045 34 char paso [25];
Franmaver 0:8fc99b9ef045 35 int nivel_muestro = 0;
Franmaver 0:8fc99b9ef045 36 int nivel_mostrando = 0;
Franmaver 0:8fc99b9ef045 37 int variable = 0;
Franmaver 0:8fc99b9ef045 38
Franmaver 0:8fc99b9ef045 39 //Apreto
Franmaver 0:8fc99b9ef045 40 enum MAQUINA_ESTADO_APRETO {INICIO3, ESPERO_PULS, COMPARO_PULS, DELAY, DELAY2};
Franmaver 0:8fc99b9ef045 41 MAQUINA_ESTADO_APRETO MAQUINA_APRETO;
Franmaver 0:8fc99b9ef045 42 void FUNCION_APRETO();
Franmaver 0:8fc99b9ef045 43 int espero_puls = 0;
Franmaver 0:8fc99b9ef045 44 int estado_prox = 0;
Franmaver 0:8fc99b9ef045 45
Franmaver 0:8fc99b9ef045 46 //tiempo
Franmaver 0:8fc99b9ef045 47 Ticker tiempo;
Franmaver 0:8fc99b9ef045 48 int contador = 0;
Franmaver 0:8fc99b9ef045 49 int contador_muestro = 0;
Franmaver 0:8fc99b9ef045 50 int contador_apreto = 0;
Franmaver 0:8fc99b9ef045 51 int PULSADOR = 5;
Franmaver 0:8fc99b9ef045 52 int mostrando = 0;
Franmaver 0:8fc99b9ef045 53 int apretar = 0;
Franmaver 0:8fc99b9ef045 54 void funcion_tiempo();
Franmaver 0:8fc99b9ef045 55
Franmaver 0:8fc99b9ef045 56 //funcion de los botones para el tsi
Franmaver 0:8fc99b9ef045 57 int PULS_TSI()
Franmaver 0:8fc99b9ef045 58 {
Franmaver 0:8fc99b9ef045 59 if((tsi.readPercentage() > 0.06) && (tsi.readPercentage() < 0.2))
Franmaver 0:8fc99b9ef045 60 PULSADOR = 0;//0 designado para el color rojo
Franmaver 0:8fc99b9ef045 61 else if((tsi.readPercentage() > 0.4) && (tsi.readPercentage() < 0.6))
Franmaver 0:8fc99b9ef045 62 PULSADOR = 1;//1 designado para el color verde
Franmaver 0:8fc99b9ef045 63 else if((tsi.readPercentage() > 0.8) && (tsi.readPercentage() < 0.94))
Franmaver 0:8fc99b9ef045 64 PULSADOR = 2;//2 designado para el color azul
Franmaver 0:8fc99b9ef045 65 else
Franmaver 0:8fc99b9ef045 66 PULSADOR = -1;//-1 designado cuando no se oprime el TSI
Franmaver 0:8fc99b9ef045 67
Franmaver 0:8fc99b9ef045 68 return PULSADOR;//me devuelve lo que aprete
Franmaver 0:8fc99b9ef045 69 }
Franmaver 0:8fc99b9ef045 70 //funcion que prende los leds
Franmaver 0:8fc99b9ef045 71 void COLORES(int color)
Franmaver 0:8fc99b9ef045 72 {
Franmaver 0:8fc99b9ef045 73 switch(color) {
Franmaver 0:8fc99b9ef045 74 case 0://rojo
Franmaver 0:8fc99b9ef045 75 rojo = 0;
Franmaver 0:8fc99b9ef045 76 verde = 1;
Franmaver 0:8fc99b9ef045 77 azul = 1;
Franmaver 0:8fc99b9ef045 78 break;
Franmaver 0:8fc99b9ef045 79 case 1://verde
Franmaver 0:8fc99b9ef045 80 rojo = 1;
Franmaver 0:8fc99b9ef045 81 verde = 0;
Franmaver 0:8fc99b9ef045 82 azul = 1;
Franmaver 0:8fc99b9ef045 83 break;
Franmaver 0:8fc99b9ef045 84 case 2://azul
Franmaver 0:8fc99b9ef045 85 rojo = 1;
Franmaver 0:8fc99b9ef045 86 verde = 1;
Franmaver 0:8fc99b9ef045 87 azul = 0;
Franmaver 0:8fc99b9ef045 88 break;
Franmaver 0:8fc99b9ef045 89 }
Franmaver 0:8fc99b9ef045 90 }
Franmaver 0:8fc99b9ef045 91
Franmaver 0:8fc99b9ef045 92 int main(void)
Franmaver 0:8fc99b9ef045 93 {
Franmaver 0:8fc99b9ef045 94 //defino los leds como apagados
Franmaver 0:8fc99b9ef045 95 verde = 1;
Franmaver 0:8fc99b9ef045 96 azul = 1;
Franmaver 0:8fc99b9ef045 97 rojo = 1;
Franmaver 0:8fc99b9ef045 98 tiempo.attach(&funcion_tiempo, 0.1);
Franmaver 0:8fc99b9ef045 99
Franmaver 0:8fc99b9ef045 100 while (true) {
Franmaver 0:8fc99b9ef045 101 variable++;//variable usada para el srand
Franmaver 0:8fc99b9ef045 102 FUNCION_GENERAL();//GENERAL
Franmaver 0:8fc99b9ef045 103 FUNCION_MOSTRAR();//MOSTRAR
Franmaver 0:8fc99b9ef045 104 FUNCION_APRETO();//APRETAR
Franmaver 0:8fc99b9ef045 105 }
Franmaver 0:8fc99b9ef045 106 }
Franmaver 0:8fc99b9ef045 107
Franmaver 0:8fc99b9ef045 108 void funcion_tiempo()
Franmaver 0:8fc99b9ef045 109 {
Franmaver 0:8fc99b9ef045 110 contador++;
Franmaver 0:8fc99b9ef045 111 contador_muestro++;
Franmaver 0:8fc99b9ef045 112 contador_apreto++;
Franmaver 0:8fc99b9ef045 113 }
Franmaver 0:8fc99b9ef045 114
Franmaver 0:8fc99b9ef045 115 //GENERAL
Franmaver 0:8fc99b9ef045 116 void FUNCION_GENERAL()
Franmaver 0:8fc99b9ef045 117 {
Franmaver 0:8fc99b9ef045 118 switch (MAQUINA_GENERAL) {
Franmaver 0:8fc99b9ef045 119
Franmaver 0:8fc99b9ef045 120 default:
Franmaver 0:8fc99b9ef045 121 MAQUINA_GENERAL = INICIO;
Franmaver 0:8fc99b9ef045 122 break;
Franmaver 0:8fc99b9ef045 123 case INICIO://igualo todas mis variables a 0
Franmaver 0:8fc99b9ef045 124 mostrando = 0;
Franmaver 0:8fc99b9ef045 125 espero_puls = 0;
Franmaver 0:8fc99b9ef045 126 nivel_muestro = 0;
Franmaver 0:8fc99b9ef045 127 nivel_mostrando = 0;
Franmaver 0:8fc99b9ef045 128 contador = 0;
Franmaver 0:8fc99b9ef045 129 contador_muestro = 0;
Franmaver 0:8fc99b9ef045 130 contador_apreto = 0;
Franmaver 0:8fc99b9ef045 131 PULSADOR = 5;
Franmaver 0:8fc99b9ef045 132 mostrando = 0;
Franmaver 0:8fc99b9ef045 133 apretar = 0;
Franmaver 0:8fc99b9ef045 134 if(tsi.readPercentage() != 0) {//oprimo TSI
Franmaver 0:8fc99b9ef045 135 contador = 0;
Franmaver 0:8fc99b9ef045 136 mostrando = 1;
Franmaver 0:8fc99b9ef045 137 MAQUINA_GENERAL = MUESTRO_SEC;
Franmaver 0:8fc99b9ef045 138 }
Franmaver 0:8fc99b9ef045 139 break;
Franmaver 0:8fc99b9ef045 140 case MUESTRO_SEC:
Franmaver 0:8fc99b9ef045 141 if(mostrando == 0) {//mostrando va a ser 0 cuando en la funcion de mostrar ya mostro todo
Franmaver 0:8fc99b9ef045 142 MAQUINA_GENERAL = ESPERO_SEC;
Franmaver 0:8fc99b9ef045 143 apretar = 1;
Franmaver 0:8fc99b9ef045 144 }
Franmaver 0:8fc99b9ef045 145 break;
Franmaver 0:8fc99b9ef045 146 case ESPERO_SEC:
Franmaver 0:8fc99b9ef045 147 if(apretar == 0) {
Franmaver 0:8fc99b9ef045 148 MAQUINA_GENERAL = MUESTRO_SEC;
Franmaver 0:8fc99b9ef045 149 mostrando = 1;
Franmaver 0:8fc99b9ef045 150 }
Franmaver 0:8fc99b9ef045 151 break;
Franmaver 0:8fc99b9ef045 152 case LOOSER://caso cuando perdes
Franmaver 0:8fc99b9ef045 153 //prende salida color violeta por 2 segundos luego vuelve a inicio
Franmaver 0:8fc99b9ef045 154 azul = 0;
Franmaver 0:8fc99b9ef045 155 rojo = 0;
Franmaver 0:8fc99b9ef045 156 verde = 1;
Franmaver 0:8fc99b9ef045 157 if(contador >= 20) {
Franmaver 0:8fc99b9ef045 158 azul = 1;
Franmaver 0:8fc99b9ef045 159 rojo = 1;
Franmaver 0:8fc99b9ef045 160 verde = 1;
Franmaver 0:8fc99b9ef045 161 contador = 0;
Franmaver 0:8fc99b9ef045 162 MAQUINA_GENERAL = INICIO;
Franmaver 0:8fc99b9ef045 163 }
Franmaver 0:8fc99b9ef045 164 break;
Franmaver 0:8fc99b9ef045 165 case WIN://caso cuando ganas
Franmaver 0:8fc99b9ef045 166 //prende salida color amarillo por 2 segundos luego vuelve a inicio
Franmaver 0:8fc99b9ef045 167 contador = 0;
Franmaver 0:8fc99b9ef045 168 rojo = 0;
Franmaver 0:8fc99b9ef045 169 verde = 0;
Franmaver 0:8fc99b9ef045 170 azul = 1;
Franmaver 0:8fc99b9ef045 171 if(contador >= 20) {
Franmaver 0:8fc99b9ef045 172 azul = 1;
Franmaver 0:8fc99b9ef045 173 rojo = 1;
Franmaver 0:8fc99b9ef045 174 verde = 1;
Franmaver 0:8fc99b9ef045 175 contador = 0;
Franmaver 0:8fc99b9ef045 176 MAQUINA_GENERAL = INICIO;
Franmaver 0:8fc99b9ef045 177 }
Franmaver 0:8fc99b9ef045 178 break;
Franmaver 0:8fc99b9ef045 179 }
Franmaver 0:8fc99b9ef045 180 }
Franmaver 0:8fc99b9ef045 181 //MOSTRAR
Franmaver 0:8fc99b9ef045 182 void FUNCION_MOSTRAR()
Franmaver 0:8fc99b9ef045 183 {
Franmaver 0:8fc99b9ef045 184 switch (MAQUINA_MUESTRO) {
Franmaver 0:8fc99b9ef045 185 default:
Franmaver 0:8fc99b9ef045 186 MAQUINA_MUESTRO = INICIO2;
Franmaver 0:8fc99b9ef045 187 break;
Franmaver 0:8fc99b9ef045 188 case INICIO2:
Franmaver 0:8fc99b9ef045 189 if(mostrando == 1) {
Franmaver 0:8fc99b9ef045 190 nivel_mostrando = 0;
Franmaver 0:8fc99b9ef045 191 srand(variable);//como variable va a estar siempre variando, srand tomara distintas posiciones
Franmaver 0:8fc99b9ef045 192 paso[nivel_muestro++] = (rand() % 3);//genero mi secuencia con numero al azar entre 0 y 2
Franmaver 0:8fc99b9ef045 193 //POR QUE NIVEL VOY (nivel muestro)
Franmaver 0:8fc99b9ef045 194
Franmaver 0:8fc99b9ef045 195 if(nivel_muestro == 24) {//si llego a 24 niveles, gano
Franmaver 0:8fc99b9ef045 196 mostrando = 0;
Franmaver 0:8fc99b9ef045 197 MAQUINA_GENERAL = WIN;
Franmaver 0:8fc99b9ef045 198 MAQUINA_MUESTRO = INICIO2;
Franmaver 0:8fc99b9ef045 199 }
Franmaver 0:8fc99b9ef045 200 contador_muestro = 0;
Franmaver 0:8fc99b9ef045 201 MAQUINA_MUESTRO = ON;
Franmaver 0:8fc99b9ef045 202 }
Franmaver 0:8fc99b9ef045 203 break;
Franmaver 0:8fc99b9ef045 204 case ON:
Franmaver 0:8fc99b9ef045 205 COLORES(paso[nivel_mostrando]);//prendo los colores de la secuencia
Franmaver 0:8fc99b9ef045 206
Franmaver 0:8fc99b9ef045 207 //CUAL ESTOY MOSTRANDO AHORA (nivel_mostrando)
Franmaver 0:8fc99b9ef045 208 //a medida que se aumentan los niveles se disminuye el tiempo de encendido de los leds
Franmaver 0:8fc99b9ef045 209 if (nivel_muestro <= 5) {
Franmaver 0:8fc99b9ef045 210 if (contador_muestro >= 10) {
Franmaver 0:8fc99b9ef045 211 contador_muestro = 0;
Franmaver 0:8fc99b9ef045 212 MAQUINA_MUESTRO = OFF;
Franmaver 0:8fc99b9ef045 213 }
Franmaver 0:8fc99b9ef045 214 }
Franmaver 0:8fc99b9ef045 215 if ((nivel_muestro > 5)&&(nivel_muestro <= 10)) {
Franmaver 0:8fc99b9ef045 216 if (contador_muestro >= 8) {
Franmaver 0:8fc99b9ef045 217 contador_muestro = 0;
Franmaver 0:8fc99b9ef045 218 MAQUINA_MUESTRO = OFF;
Franmaver 0:8fc99b9ef045 219 }
Franmaver 0:8fc99b9ef045 220 }
Franmaver 0:8fc99b9ef045 221 if ((nivel_muestro > 10)&&(nivel_muestro <= 15)) {
Franmaver 0:8fc99b9ef045 222 if (contador_muestro >= 6) {
Franmaver 0:8fc99b9ef045 223 contador_muestro = 0;
Franmaver 0:8fc99b9ef045 224 MAQUINA_MUESTRO = OFF;
Franmaver 0:8fc99b9ef045 225 }
Franmaver 0:8fc99b9ef045 226 }
Franmaver 0:8fc99b9ef045 227 if ((nivel_muestro > 15)&&(nivel_muestro <= 20)) {
Franmaver 0:8fc99b9ef045 228 if (contador_muestro >= 10) {
Franmaver 0:8fc99b9ef045 229 contador_muestro = 0;
Franmaver 0:8fc99b9ef045 230 MAQUINA_MUESTRO = OFF;
Franmaver 0:8fc99b9ef045 231 }
Franmaver 0:8fc99b9ef045 232 }
Franmaver 0:8fc99b9ef045 233 if ((nivel_muestro > 20)&&(nivel_muestro <= 24)) {
Franmaver 0:8fc99b9ef045 234 if (contador_muestro >= 10) {
Franmaver 0:8fc99b9ef045 235 contador_muestro = 0;
Franmaver 0:8fc99b9ef045 236 MAQUINA_MUESTRO = OFF;
Franmaver 0:8fc99b9ef045 237 }
Franmaver 0:8fc99b9ef045 238 }
Franmaver 0:8fc99b9ef045 239 break;
Franmaver 0:8fc99b9ef045 240 case OFF://apago las salidas
Franmaver 0:8fc99b9ef045 241 rojo = 1;
Franmaver 0:8fc99b9ef045 242 verde = 1;
Franmaver 0:8fc99b9ef045 243 azul = 1;
Franmaver 0:8fc99b9ef045 244 if(contador_muestro >= 5) {//tiempo de espera entre led y led
Franmaver 0:8fc99b9ef045 245 if((nivel_mostrando) == (nivel_muestro - 1)) {//si se mostraron todos los niveles
Franmaver 0:8fc99b9ef045 246 mostrando = 0;//en la maquina general hbailita a pasar al caso de espero_sec
Franmaver 0:8fc99b9ef045 247 MAQUINA_MUESTRO = INICIO2;
Franmaver 0:8fc99b9ef045 248 } else {//si quedan niveles por mostrar
Franmaver 0:8fc99b9ef045 249 nivel_mostrando++;//aumento variable para luego mostrar proximo nivel
Franmaver 0:8fc99b9ef045 250 contador_muestro = 0;
Franmaver 0:8fc99b9ef045 251 MAQUINA_MUESTRO = ON;//vuelvo a prender el siguiente nivel
Franmaver 0:8fc99b9ef045 252 }
Franmaver 0:8fc99b9ef045 253 }
Franmaver 0:8fc99b9ef045 254 }
Franmaver 0:8fc99b9ef045 255 }
Franmaver 0:8fc99b9ef045 256 //APRETAR
Franmaver 0:8fc99b9ef045 257 void FUNCION_APRETO()
Franmaver 0:8fc99b9ef045 258 {
Franmaver 0:8fc99b9ef045 259 switch(MAQUINA_APRETO) {
Franmaver 0:8fc99b9ef045 260 default:
Franmaver 0:8fc99b9ef045 261 MAQUINA_APRETO = INICIO3;
Franmaver 0:8fc99b9ef045 262 break;
Franmaver 0:8fc99b9ef045 263 case INICIO3:
Franmaver 0:8fc99b9ef045 264 if(apretar == 1) {//habilitado por la maquina general cuando entro al case espero_sec
Franmaver 0:8fc99b9ef045 265 espero_puls = 0;
Franmaver 0:8fc99b9ef045 266 contador_apreto = 0;
Franmaver 0:8fc99b9ef045 267 MAQUINA_APRETO = ESPERO_PULS;
Franmaver 0:8fc99b9ef045 268 }
Franmaver 0:8fc99b9ef045 269 break;
Franmaver 0:8fc99b9ef045 270 case ESPERO_PULS:
Franmaver 0:8fc99b9ef045 271
Franmaver 0:8fc99b9ef045 272 if(PULS_TSI() != -1) {//si oprimo el tsi
Franmaver 0:8fc99b9ef045 273 if(PULS_TSI() == paso[espero_puls]) {//si lo oprimido es el seleccionado para el color asignado previamente
Franmaver 0:8fc99b9ef045 274 if(espero_puls < (nivel_muestro-1)) {//si no oprimi todos los niveles
Franmaver 0:8fc99b9ef045 275 espero_puls++;//sumo variable para apretar el proximo nivel y comparar
Franmaver 0:8fc99b9ef045 276 contador_apreto = 0;
Franmaver 0:8fc99b9ef045 277 MAQUINA_APRETO = DELAY;//voy al caso en el que se muestran los leds que aprete
Franmaver 0:8fc99b9ef045 278 estado_prox = 1;//en el caso de tener que seguir apretando
Franmaver 0:8fc99b9ef045 279 } else {
Franmaver 0:8fc99b9ef045 280 MAQUINA_APRETO = DELAY;//voy al caso en el que se muestran los leds que aprete
Franmaver 0:8fc99b9ef045 281 estado_prox = 2;//en el caso de no tener que apretar mas
Franmaver 0:8fc99b9ef045 282 }
Franmaver 0:8fc99b9ef045 283 } else {// si lo oprimido no es lo seleccionado para el color asignado previamente
Franmaver 0:8fc99b9ef045 284 contador = 0;
Franmaver 0:8fc99b9ef045 285 MAQUINA_GENERAL = LOOSER;//pierdo
Franmaver 0:8fc99b9ef045 286 MAQUINA_APRETO = INICIO3;
Franmaver 0:8fc99b9ef045 287 }
Franmaver 0:8fc99b9ef045 288 }
Franmaver 0:8fc99b9ef045 289 if(contador_apreto >= 30) {//si pasaron 3 segundos y no oprimi nada
Franmaver 0:8fc99b9ef045 290 contador = 0;
Franmaver 0:8fc99b9ef045 291 contador_apreto = 0;
Franmaver 0:8fc99b9ef045 292 MAQUINA_GENERAL = LOOSER;//pierdo
Franmaver 0:8fc99b9ef045 293 MAQUINA_APRETO = INICIO3;
Franmaver 0:8fc99b9ef045 294 }
Franmaver 0:8fc99b9ef045 295 break;
Franmaver 0:8fc99b9ef045 296 case DELAY://caso de delay
Franmaver 0:8fc99b9ef045 297 COLORES(PULS_TSI());//muestro los leds que oprimo con el TSI
Franmaver 0:8fc99b9ef045 298 if(contador_apreto > 2) {//genero un tiempo de 200ms
Franmaver 0:8fc99b9ef045 299 MAQUINA_APRETO = DELAY2;//voy al caso donde apago los leds
Franmaver 0:8fc99b9ef045 300 contador_apreto = 0;
Franmaver 0:8fc99b9ef045 301 }
Franmaver 0:8fc99b9ef045 302 break;
Franmaver 0:8fc99b9ef045 303 case DELAY2:
Franmaver 0:8fc99b9ef045 304 //apago los leds
Franmaver 0:8fc99b9ef045 305 rojo = 1;
Franmaver 0:8fc99b9ef045 306 azul = 1;
Franmaver 0:8fc99b9ef045 307 verde = 1;
Franmaver 0:8fc99b9ef045 308
Franmaver 0:8fc99b9ef045 309 if(estado_prox == 1 && contador_apreto > 2) {//genero otro timepo de 200ms para poder volver a leer el TSI
Franmaver 0:8fc99b9ef045 310 //y si tengo que seguir apretando
Franmaver 0:8fc99b9ef045 311 MAQUINA_APRETO = ESPERO_PULS;//vuelvo al caso donde oprimo los niveles siguientes
Franmaver 0:8fc99b9ef045 312 contador_apreto = 0;
Franmaver 0:8fc99b9ef045 313 } else if(estado_prox == 2 && contador_apreto > 2) {//y si no tengo que apretar mas
Franmaver 0:8fc99b9ef045 314 //y genero otro timepo de 200ms
Franmaver 0:8fc99b9ef045 315 apretar = 0;//hbailito a quer maquina general vuelva a muestro_sec
Franmaver 0:8fc99b9ef045 316 MAQUINA_APRETO = INICIO3;
Franmaver 0:8fc99b9ef045 317 contador_apreto = 0;
Franmaver 0:8fc99b9ef045 318 }
Franmaver 0:8fc99b9ef045 319 break;
Franmaver 0:8fc99b9ef045 320 }
Franmaver 0:8fc99b9ef045 321 }