Saltar la navegación

if. if...else

if(condición){
  instrucciones si cierta;
}
Si se cumple la condición se ejecutan las instrucciones que hay entre las llaves, si no se continúa con la siguiente.
 
==, !=, <, >, <=, >=
Estos son los operadores que podemos usar para comparar: igual, distinto, menor, mayor, menor o igual y mayor o igual.
 
if(condición){
  instrucciones si cierta;
}else{
  instrucciones si falsa;
}
Si se cumple la condición se ejecuta el primer bloque de instrucciones, si no se ejecuta el segundo.
 
También podemos incluir los denominados operadores boleanos para hacer preguntas con varias condiciones:

condición && condición
Cierto sólo si lo son las dos condiciones.
condición || condición
Cierto si lo es, al menos, una de las condiciones.
! condición
Cierto si la condición es falsa.

Rellenar huecos

1.- Control de un diodo LED (pin 8) con dos pulsadores, uno para encenderlo (pin 5) y otro para apagarlo (pin 3).

    boolean estadoPulsadorE=LOW;
    boolean estadoPulsadorA=LOW;

  void setup() {
    (10,OUTPUT);
    pinMode(5, );
    pinMode(3, );
  }

  void loop() {
    estadoPulsadorE=
    estadoPulsadorA=
    if(estadoPulsadorE== ){
     
  }
    if {
     
    }
  }

2.- Con el programa anterior si pulsamos a la vez los dos botones estaremos dando órdenes contradictoras, encender y apagar el led al mismo tiempo. Para evitarlo, podemos podemos hacer preguntas dobles:

  if (estadoPulsadorE==HIGH && estadoPulsadorA==LOW) {

También podemos utilizar 

if (estadoPulsadorE==HIGH) {
--------
}
else if (estadoPulsadorA==HIGH) {
--------
}

De esta manera a la segunda pregunta sólo se llega si la primera no se cumple; es decir, si el interruptor de encendido está levantado. Si en otro programa es necesario se pueden poner todas las instrucciones "else if" que se deseen.

3.- Realizar el control de un motor con tres pulsadores: giro a derecha, giro a izquierda y parada.

4.- Otra forma de realizar el programa de la actividad 1 del apartado anterior, encender un LED (pin8) manteniendo apretado un pulsador (pin5).

boolean estadoPulsador=LOW;
 
void
pinMode(8,OUTPUT);

}
 
loop(){
estadoPulsador=digitalRead(5);
if(  == ){
digitalWrite(8,HIGH);
} {
}

5.- El programa adjunto nos permite controlar un diodo LED desde un único pulsador. Si el diodo está apagado al accionar el pulsador se enciende y si está encendido se apaga. Como veréis la lógica del programa se complica, sobre todo por la inclusión de la variable "hasLevantadoPulsador", para detectar si seguimos manteniendo el pulsador apretado o ya lo hemos soltado. Ejecutarlo y analizar su funcionamiento.

Habilitar JavaScript

Obra publicada con Licencia Creative Commons Reconocimiento No comercial Compartir igual 4.0