2 led 1 botón PROBLEMA


buenas,

necesito ayuda con un trabajo en el que con un solo botón de encender un led, que al soltarlo se apague, y depués al darle otra vez al botón que se encienda el segundo led y se vuelva apagar al soltar el botón. y asi sucesivamente, alternandose los leds.
he hecho una programación que no entiendo porque no funciona correctamente.
si alguien me ayudara estaría agradecido.
 estan son las pautas:
 uso de un pulsador (entradas digitales) para encender dos leds alternativamente.
si no se pulsa el pulsador los dos leds están apagados. si se pulsa el pulsador se enciende un único led. los leds se irán encendiendo alternativamente. con cada pulsación se enciende el que no se encendió la vez anterior.

uso de un pulsador (entradas digitales) para encender dos leds alternativamente.

si no se pulsa el pulsador los dos leds están apagados. si se pulsa el pulsador se enciende un único led. los leds se irán encendiendo alternativamente. con cada pulsación se enciende el que no se encendió la vez anterior.
este es el codigo:
const int pinled1 = 11; // declaración de variables
const int pinled2 = 5; // declaración de variables
const int pinbtn = 3; // declaración de variables
bool anterior = false; //pulsación anterior
int estado;
int anterior1;
void setup()
 

  pinmode(pinled1, output);
  pinmode(pinled2, output);
  pinmode(pinbtn, input);
}

void loop()
{
estado = digitalread(pinbtn); //comprobamos el estado del boton


  if(estado == 1 && anterior == false)//comprobamos si el anterior estaba pulsado y el de ahora
  {
    digitalwrite(pinled2, high);
    digitalwrite(pinled1, low);
    anterior == true;
  }
   
  if ( estado == 1 && anterior == true){
    digitalwrite(pinled1, high);
      digitalwrite(pinled2, low);
      anterior == false;
  }
   

}

prueba esto:
code: [select]

const int pinled1 = 11; // declaración de variables
const int pinled2 = 5; // declaración de variables
const int pinbtn = 3; // declaración de variables

void setup()
{
  pinmode(pinled1, output);
  pinmode(pinled2, output);
  pinmode(pinbtn, input);
  digitalwrite(pinled1,low);
  digitalwrite(pinled2,low);
}

void loop()
{
   if(digitalread(pinbtn))
   {
       digital(write(pinled2,!digitalread(pinled2));
       digital(write(pinled1,!digitalread(pinled2));
   }
}


Arduino Forum > International > Español > Software (Moderators: surbyte, Hector_A) > 2 led 1 botón PROBLEMA


arduino

Comments

Popular posts from this blog

DHT11 Time out error using v0.4.1library

Sketch upload fails with Java error (___REMOVE___/bin/avrdude)!

Arduino Uno + KTY81/210 temperature sensor