Anidar if

El programa funciona igual que el realizado en la anterior entrada «variables», pero se ha programado anidando if dentro de otros if.

int a=0; // inicializo la variable a y almaceno el valor 0
int pul_1=5;// la variable pul1 vale 5 y la utilizo para indicar que el pulsador 1 esta conectado al pin 5
int pul_2=6;// indico que el pulsador 2 esta conectado al pin 6
int pul_3=7;// pulsador 3 al pin 7
int led_v=2;// led verde al pin2
int led_r=3;// led rojo al pin3
int led_a=4;// led amarillo al pin4

void setup() 
{
pinMode(led_v,OUTPUT);
pinMode(led_r,OUTPUT);
pinMode(led_a,OUTPUT);
pinMode(pul_1,INPUT);
pinMode(pul_2,INPUT);
pinMode(pul_3,INPUT);
Serial.begin(9600);
}
void loop() 
{
 if (digitalRead(pul_1) == HIGH)
  {
  a=a+1;// al activar el pulsador incremento la variable a una unidad
   Serial.print("el valor de la variable a es  ");
   Serial.print(a);
   delay (500);// espero medio segundo  
   Serial.println("  Habilitada siguiente pulsacion ");
   }
  if (digitalRead(pul_2) == HIGH) 
  { 
     if (a==1) digitalWrite(led_v,HIGH);
  	 if (a==2)
       {
        digitalWrite(led_v,HIGH);
        digitalWrite(led_r,HIGH);
       }
     if (a>2)
       {
        digitalWrite(led_v,HIGH);
        digitalWrite(led_r,HIGH);
        digitalWrite(led_a,HIGH);
    
        } 
     Serial.print("el valor de la variable a es  ");
     Serial.println(a);
     delay (2000);
     digitalWrite(led_v,LOW);
     digitalWrite(led_r,LOW);
     digitalWrite(led_a,LOW);
     a=0;
     Serial.println("PREPARADO PARA EL SIGUIENTE CONTAJE  ");
     }
    
}

Si tienes dudas, escribelas en comentarios.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *