Salidas Digitales en Arduino
4.8 (95.88%) 34 votes

En esta entrada comenzaremos a entender el funcionamiento de nuestro Arduino y programaremos nuestro primer ejemplo. Y para eso vamos a aprender que es y como usar las salidas digitales en Arduino y al final de este post podrás descargar totalmente gratis el código de implementación de las salidas digitales.

Que son Salidas Digitales en Arduino

Primero, vamos a recordar que una salida digital es una señal binaria, esto quiere decir que toma únicamente 2 valores. Y esos valores en el mundo de los microcontroladores o de electrónica digital son 0V (GND) y 5V.

Estos dos valores los conoceremos como:

  • 0 – Cero Lógico – Falso – 0V
  • 1 – Uno Lógico – Verdadero – 5V

Sin embargo, algunos modelos de ARDUINO y Microcontroladores en general operan a 3.3V (en lugar de 5V), tales como las placas basadas en procesadores ARM (Arduino Due) o como el Arduino Nano o Mini.

Como vimos en el post de Introducción Pasado (Click aqui para ver la Introducción a Arduino) todos los pines del puerto I/O (Input – Output) pueden configurarse para ser Salidas Digitales en Arduino, y es justamente lo que vamos a hacer hoy.

 

Pines Digitales Arduino Uno

Los puertos digitales del Arduino UNO van desde el PIN 0 hasta el PIN 1, como lo vemos en esta figura:

Pinout Arduino

La única recomendación es que si usas los PINES 0 y 1 como salidas o entradas digitales, deberás desconectar el circuito que estes haciendo en el momento de hacer la programación del Arduino, ya que estos dos pines también son usado para la comunicación con el computador, por lo tanto si se usan como entradas o salidas digitales debe desconectarse antes el circuito para que permita ser programado.

Para que Sirven las Salidas Digitales

Con las salidas digitales Arduino Mega, Uno, Leonardo o el que sea, podremos interactuar con el mundo fisico de miles de formas, porque como yá lo vimos, podemos mandar una señal de dos estados (1 o 0) es decir, prender o apagar.

Entonces con esto podremos encender y apagar luces, leds, motores, relés, actuadores, etc.

Intensidad de una Salida Digital

El voltaje de salida digital de Arduino Uno, Mega o cualquier otro que trabaje a 5V de alimentación es exactamente ese mismo valor de alimentación (5V).

La intensidad o corriente máxima que puede entregar un pin de salida digital en arduino es de 40mA, pero como valor recomendado se establece que sea a 20 mA, donde la suma de todas las potencias en un solo puerto debe ser inferior a los 300 mA.

Declarar Pines de Salida en Arduino

Vamos a ver que para poder declarar un pin de salida en Arduino es muy fácil, e incluso la misma función nos va a servir para poder declarar las entradas digitales de Arduino. O sea es una función que sirve para las entradas y salidas Arduino.

Para programar una salida digital, debemos hacerlo dentro de la función “void setup” y vamos a utilizar la siguiente instrucción

Donde dice “Pin Digital” debemos sustituirlo por el PIN del Arduino que nosotros queremos que sea una salida.

Ejemplo

Vamos a suponer que queremos configurar el PIN 5 del Arduino como Salida. Debemos utilizar la instrucción pinMode dentro del void setup de la siguiente forma:

Otra forma de programar la Salida Digital de Arduino es declarando un Nombre para el PIN, en este caso el PIN 5. Es decir podemos bautizar nuestro PIN con el nombre que nosotros queramos, veamos como se hace:
pinMode dentro del void setup de la siguiente forma:

Vemos que antes del SETUP, en la zona de Declaraciones, hemos declarado una variable de tipo “byte” llamada “Terminal_5” y le hemos asignado el valor de 5. Con eso podemos utilizar ese nombre en cualquier parte del programa que necesitemos alguna cosa del PIN 5. Note que muchos tutoriales de Arduino colocan “int” en lugar de “byte”, cualquira de los dos tipos de Variable Sirven. En el caso de nombrar pines del Arduino es más que suficiente utilizar el tipo “byte” que almacena valores enteros de 0 a 255.

Utilizar las Salidas Digitales en Arduino

Una vez hemos configurado los pines que queremos establecer como salidas, es hora de utilizar estas salidas, para eso vamos a utilizar una segunda función, la cual deberemos llamar dentro del “void loop”

Aqui la variable “Pin de Salida” la sustituimos por el pin del Arduino que queramos energizar (5V) o desenergizar (0V). En otras palabras estamos escribiendo en la salida digital del arduino si queremos que se active o desactive, encienda o apague.

Ejemplo

Vamos a suponer que queremos activar salida digital de Arduino en el PIN 5. Debemos utilizar la instrucción digitalWrite dentro del void loop usando cualquiera de las siguientes formas:

Note que podemos Usar directamente el 5 dentro de la función, o podemos bautizar el PIN y usarlo. Note también que la palabra “HIGH” que significa alta o Activar salida digital Arduino, usted también puede sustituirla por el numero “1” que es exactamente lo mismo.

Ahora para Desactivar o Desenergizar el PIN 5 hacemos exactamente lo mismo de las instrucciones anteriores, solo que en lugar de Colocar “HIGH” colocamos “LOW” o si lo deseas puedes colocar “0” (cero), desactivar salida digital arduino.

Salidas Digitales en Arduino UNO – Ejemplo

Vamos a Hacer una secuencia Ritmica de LEDs con el Arduino, para entrenar lo aprendido en este POST y pongamos en práctica la configuración de las salidas digitales del Arduino.

El esquematico en la Board de la Secuencia de Luces con Arduino es:

Secuencia de LEDS con ARDUINO

En este programa vamos a Utilizar 8 LEDs, 8 Resistencias para hacer nuestra secuencia ritmica de LEDs con ARDUINO, el objetivo aqui será colocar los PINES desde el 2 hasta el 9 como SALIDAS. Y hacer una secuencia usando las dos funciones que vimos aqui: pinMode y digitalWrite.

 

El Programa de ARDUINO de este ejemplo puedes descargarlo a Continuación. Para ver el código basta solo con compartir el contenido de este post con cualquiera de los siguientes 3 botones, de esa forma ayudas a este sitio web a que continue aportando más contenido de calidad y totalmente gratuito.

Si te sirvió de algo la información de la pagina, podrías invitarme a un café y ayudarme a seguir manteniendo en pie el sitio WEB. Solo cuesta $2USD y me ayudarías enormemente a seguir con mi trabajo. Muchas Gracias por tu visita.




Para Brasil

Se você está em Brasil pode utilizar o botão que está aqui em baixo, para realizar o convite em Reais.




Esta entrada tiene 2 comentarios

  1. Estimado Sergio: Deseo desarrollar un generador de señales de tres fases (trifásico), es decir, de tres salidas X,Y,Z con control de frecuencias desde cero hasta 3000 Hertz. Es posible desarrollarlo con Arduino (¿Con cual de los modelos?) o sería mejor con un PIC o un AT mega? Además en versión avanzada desearía adicionarle un LCD de muy bajo consumo, donde aparezca la frecuencia o RPM de un motorcito de tres fases. Es posible? Gracias

    1. Hola Alfonso, un arduino MEGA podria servirte para tal fin, por tener mayor numero de puertos. Igual creo que con un Arduino UNO también te daria para hacerlo.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Salidas Digitales en Arduino
Cerrar menú