Hola muy buenas a todos.
Pongo el código y comento lo que necesito:
Aquí lo que hago es encender un LED rojo (RB0 y RB1) y cuando se pulsa el pulsador correspondiente (RA0 y RA1), se apaga el LED rojo y se enciende uno verde (RB4 y RB5).
Aquí lo que pasa, es que hasta que no pulse el botón, no seguirá haciendo nada.
Entonces lo que quiero hacer es que encienda el LED rojo RB0, se espere un tiempo determinado, y si no pulsas en ese tiempo, se apague y pase al siguiente. Y en el caso de que pulse en ese intervalo de tiempo, haga lo que ya está puesto en el código.
A ver si me podéis hechar una mano.
Muchas gracias.
Saludos!
Pongo el código y comento lo que necesito:
Código:
Programa Base
void main ()
{
// Todos los fuses
set_tris_a(0x3F); // Port A entrada
set_tris_b(0x00); // Port B salida
output_b(0x00); // Borro las salidas
int i;
for (i=0;i<5;i++)
{
output_high(PIN_B0);
if (input(PIN_A0))
{
output_low(PIN_B0);
delay_ms(100);
output_high(PIN_B4);
delay_ms(300);
}
delay_ms(1000);
output_high(PIN_B1);
if (input(PIN_A1))
{
output_low(PIN_B1);
delay_ms(100);
output_high(PIN_B5);
delay_ms(300);
}
delay_ms(1000);
}
}
Aquí lo que hago es encender un LED rojo (RB0 y RB1) y cuando se pulsa el pulsador correspondiente (RA0 y RA1), se apaga el LED rojo y se enciende uno verde (RB4 y RB5).
Aquí lo que pasa, es que hasta que no pulse el botón, no seguirá haciendo nada.
Entonces lo que quiero hacer es que encienda el LED rojo RB0, se espere un tiempo determinado, y si no pulsas en ese tiempo, se apague y pase al siguiente. Y en el caso de que pulse en ese intervalo de tiempo, haga lo que ya está puesto en el código.
A ver si me podéis hechar una mano.
Muchas gracias.
Saludos!