Apuntes de Arduino
if (x > 120)
digitalWrite (ledPin, HIGH);
if (x > 120) {digitalWrite (ledPin, HIGH);}
if (x > 120) {
digitalWrite (LEDpin1, HIGH);
digitalWrite (LEDpin2, HIGH);
}
Las declaraciones que se evalúan dentro de los paréntesis requieren el uso de uno o más
operadores de comparación y/o booleanos.
15.2. Operadores de comparación: == , ! = , < , > , <=, >=
x == y (x es igual a y)
x != y (x no es igual a y)
x < y (x es menor que y)
x > y (x es mayor que y)
x <= y (x es menor o igual a y)
x >= y (x es mayor o igual a y)
Advertencia: Cuidado con el uso accidental de un único signo igual dentro de la sentencia if. Por
ejemplo, if (x = 10) no daría error al compilar pero haría algo diferente a lo que pretendemos.
15.3. Operadores booleanos
Estos pueden ser utilizados en el interior de la condición de una sentencia if.
•
&& (AND lógico) se evalúa como true sólo si ambos operandos son true, por ejemplo:
if (digitalRead(2) == HIGH && digitalRead (3) == HIGH) { // lee dos interruptores }
•
|| (OR lógico) se evalúa como true si alguno de los operandos es true, por ejemplo:
if (x> 0 || y> 0) {// se ejecuta este bloque sin x ó y son mayores que 0 }
•
! (NOT lógico) se evalúa como true si el operando es false, por ejemplo:
if (!x) { // se evalúa como true si x es false, es decir, si x es igual a 0 }
Ejemplo
if (a >= 10 && a <= 20) {} // verdadero si el valor de "a" está entre 10 y 20
15.4. If...else
If....else permite que se agrupen múltiples pruebas. Por ejemplo, una entrada analógica puede ser
chequeada y tomarse una acción si se cumple una condición, y otra acción si no se cumple. Por
ejemplo:
if (pinEntrada < 500)
{
// Acción A
}
Apuntes de Arduino. Tecnología
24