¿Cómo controlar un PIN digital? ¿Cómo usar digitalWrite y digitalRead?

La escritura o lectura de un pin digital se utilizará para controlar un componente y leer el valor de un sensor.

En este curso, veremos lo siguiente:

Configurar el pin como entrada o salida (pinMode)
Controlar un componente (digitalWrite)
Leer el estado de un pin (digitalRead)

Este es el pin digital que se puede controlar mediante digitalWrite y digitalRead:

Como puede ver, hay algunos pines con un símbolo de onda. Estos pines pueden usar PWM (modulación por ancho de pulso). Puede controlarlos de dos maneras: con digitalWrite o digitalRead.

Con digitalWrite puede activar o desactivar un pin a 5 V. Con AnalogWrite, puede elegir la tensión exacta para activar un LED a la mitad de su potencia, por ejemplo.

Un pin digital sin símbolo de onda se puede controlar simplemente con digitalWrite.

¿Cuál es la diferencia entre analógico y digital?

Una señal digital puede tener dos estados: ALTO y BAJO. ALTO corresponde a 5 V y BAJO a 0 V. Esta señal es muy útil para detectar el estado de un pulsador o para encender un LED.

Sin embargo, si desea encender un LED con la mitad de su potencia, necesitará la señal analógica.

La señal analógica puede tener un rango infinito de valores entre 0 V y 5 V. Esta señal se utiliza para medir y envía valores mucho más precisos, como 0,45 V, mientras que una señal digital puede tener solo 0 V o 5 V.

pinMode ()

PinMode es una función que define si un pin es una entrada o una salida. En otras palabras, si la tarjeta Arduino debe esperar o asignar valores al pin para controlar un componente, por ejemplo.

PinMode tiene dos parámetros: el nombre del pin asignado o su número y el modo (ENTRADA o SALIDA).

pinMode(pin, mode);

Los pines, como se ve en la imagen de la tarjeta Arduino, van del 0 al 13. Sin embargo, los pines 0 y 1 se utilizan para casos específicos.

Aquí hay un ejemplo del pin 10 como salida:

pinMode(10, OUTPUT);

Aquí hay un ejemplo para el pin 5 como entrada:

pinMode(5, INPUT);

digitalWrite ()

Si su pin se ha configurado como salida, necesitará digitalWrite para controlarlo. De esta forma, podrá controlar un componente. La función digitalWrite suministrará corriente a su componente para activarlo (alto) o lo conectará a tierra para desactivarlo (bajo).

Con digitalWrite, tiene dos parámetros: el pin y el valor (alto o bajo):

digitalWrite(pin, value);

Con este ejemplo, podemos ver que la función toma dos parámetros:

Pin: del 2 al 13
Valor: ALTO para 5 V y BAJO para 0 V

Aquí hay un ejemplo con el pin 7:

digitalWrite(7, HIGH);

Este es otro ejemplo para apagar un componente conectado al pin 10:

digitalWrite(10, LOW);

digitalRead ()

La lectura digital se utiliza para leer la información de entrada de la tarjeta Arduino. Es muy útil para saber, por ejemplo, si el usuario ha pulsado el botón.

La lectura digital toma como parámetro el pin a leer:

digitalRead(pin);

Pin: devuelve ALTO o BAJO

Aquí se muestra un ejemplo para leer el valor en el pin 8:

digitalRead(8);

Si necesita un valor más preciso, deberá utilizar AnalogRead.