Diferencia entre revisiones de «digitalRead()»

De ArduWiki
Saltar a: navegación, buscar
(Página creada con «== Descripción == Lee el valor del puerto digital dando un resultado. Los valores pueden ser HIGH o LOW. == Sintaxis == <pre> digitalRead(pin); </pre> == Parámetros ==...»)
 
(Parámetros)
Línea 8: Línea 8:
  
 
== Parámetros ==
 
== Parámetros ==
;pin: es el numero del pin digital a usar (0~13 + 14~19). Puedes usar [[constan]] [[byte]] para de definirla.
+
;pin: es el numero del pin digital a usar (0~13 + 14~19). Puedes usar [[const]] [[byte]] para de definirla.
  
 
== Devoluciones ==
 
== Devoluciones ==

Revisión del 00:16 27 jun 2018

Descripción

Lee el valor del puerto digital dando un resultado. Los valores pueden ser HIGH o LOW.

Sintaxis

digitalRead(pin);

Parámetros

pin
es el numero del pin digital a usar (0~13 + 14~19). Puedes usar const byte para de definirla.

Devoluciones

Devuelve el valor del pin: LOW o HIGH.

Advertencias

En muchos ejemplo se ve que usa una variable de tipo int para definir el pin a usar. Esto es un grave error por dos motivos:

  1. Una variable sera almacenada en memoria RAM porque se espera que su valor cambie durante la ejecución del bosquejo, pero normalmente en los pines esto nunca ocurre, por lo que es preferible usar const que es almacenada en flash.
  2. El tipo int ocupa 2 byte. Es suficiente usar el tipo byte (0~255) que solo ocupa 1 byte.

Ejemplo

void setup(){
   Serial.begin(115200);
   pinMode(3, INPUT_PULLUP);
}
void loop(){
   if (digitalRead(3) == LOW){
      Serial.prinln("Pulsaste el boton");
   }
}

Vease también