Aumentar salidas digitales arduino

Arduino aumentar las entradas

Un registro de desplazamiento Registro de desplazamiento – Wikipedia simplemente recoge los bits de uno en uno de una entrada y los paraleliza. Es decir, te da acceso a los datos que se han enviado en el pasado. Es como una memoria de eventos pasados y los eventos son sus datos. Necesitas un tipo diferente de registro de desplazamiento para las entradas y las salidas. Yo nunca los uso, sólo uso expansores de puertos.

¿Cuántos buscas? ¿Uno? ¿Diez? ¿Mil? Dado que sólo has encontrado esta necesidad a mitad del proyecto, parece razonable suponer que no estás buscando muchos. Entonces, ¿cuántas clavijas adicionales necesita realmente? ¿Qué tipo de corriente necesitas que generen y absorban, y a qué velocidad necesitas poder conmutarlos?

¿Cuántos buscas? ¿Uno? ¿Diez? ¿Mil? Dado que sólo has encontrado esta necesidad a mitad del proyecto, parece razonable suponer que no estás buscando muchos. Entonces, ¿cuántas clavijas adicionales necesita realmente? ¿Qué tipo de corriente necesitas que generen y absorban, y a qué velocidad necesitas poder conmutarlos?

Expansor de puertos Arduino

Es posible tener más de 14 pines de salida en el Arduino, estoy trabajando en un proyecto en el que necesito encender varios LEDs individualmente. Sólo tengo un Arduino Uno y no quiero comprar un Mega.

Con un 595, ganas 5 pines (8 en el CI, pero gastas 3 para hablar con él). Para conseguir más salidas, puedes encadenar una serie de 595, conectando su pin de salida de serie, al pin de datos del siguiente. También debes conectar juntos los pines de reloj y latch de todos los 595 ICs.

La primera forma es utilizando los pines analógicos como pines de salida digital, lo cual es realmente fácil de hacer. Todo lo que necesitas hacer es referirte a A0-A5 como pines 14,15,16,17,18,19. Por ejemplo, para escribir alto en el pin A0 sólo tienes que usar digitalWrite(14, HIGH).

La otra forma de obtener más pines del Arduino es utilizando un Shift Register. Para hacer esto recomiendo usar el EZ-Expander Shield, que te permite usar digitalWrite([20-35], HIGH) cuando importas la librería EZ-Expander. Este escudo, sin embargo, sólo permite que los pines sean utilizados como salidas solamente y utiliza los pines 8,12 y 13 para controlar los registros de desplazamiento.

74hc595 arduino

13+6 pines suele ser una limitación de Arduino en proyectos donde necesitamos muchos pines. Aquí se explica cómo aumentar el número de pines digitales en Arduino. Ya sabes que 13 pines son digitales. 6 pines analógicos también pueden ser utilizados como digitales de esta manera :

Técnicamente podemos usar el TX/RX. Pero el TX/RX en la placa ya usa el Pin 0 y el Pin 1. Si cargas un sketch en blanco, medirás 5 V en los Pines 0 y 1. También es práctico evitar el Pin 0 y el Pin 1 en algunos casos donde la función Serial.begin() se usa en el sketch. Así que el número total de pines es de 17. Pero con 17 pines ¿cómo podemos realmente controlar muchos LEDs como el ejemplo más simple? ¿Cómo aumentar el número de pines digitales en Arduino? Podemos usar un dispositivo tipo IC que «amplíe» un pin. Una forma común de ampliar el conjunto de pines de salida disponibles en el Arduino es utilizar registros de desplazamiento como el 74HC595 IC. 74HC595 IC necesita 3 pines para controlar estos chips – Reloj, Latch, Datos y aumentar el número de pines. Los controladores de pantalla como MAX7219 IC en realidad amplían los pines en TM 1637 como los módulos de pantalla LED de 7 segmentos. Pero MAX7219 IC es costoso. MCP23017 es un chip expansor de puertos de E/S comúnmente utilizado para Arduino como placas de microcontroladores. Aquí está la hoja de datos de MCP23017 :

Registro de desplazamiento Arduino

Hoy trabajaremos con un par de «bloques de construcción» electrónicos básicos, los registros de desplazamiento.    Estos prácticos dispositivos se utilizan para todo tipo de propósitos como la conversión de datos, el almacenamiento en búfer y el almacenamiento, pero hoy vamos a ver cómo se pueden utilizar para ampliar el número de puertos de E/S digitales en un Arduino u otros microcontroladores.

Los Arduinos ya tienen un número de puertos de E/S digitales, de hecho, el Arduino Mega 250 cuenta con 54 pines de E/S digitales más otras 16 entradas analógicas que pueden doblarse como pines de E/S digitales.    Así que con 70 pines de E/S potenciales no se suele necesitar más.

Hay muchas maneras de resolver estos problemas, incluyendo la ejecución de los LEDs en una matriz o el uso de un registro de desplazamiento. El registro de desplazamiento te permitirá dirigir un gran número de LEDs utilizando sólo unos pocos pines de E/S de Arduino.

Hay otras ocasiones en las que tienes un montón de sensores, pantallas u otros dispositivos de E/S y no puedes prescindir de muchos pines para los LEDs o los interruptores, pero necesitas una pantalla multi-LED o un pequeño teclado. De nuevo los registros de desplazamiento pueden venir al rescate.

Usamos cookies para asegurar que le damos la mejor experiencia en nuestra web. Si continúa usando este sitio, asumiremos que está de acuerdo con ello. Nuestros socios (incluye a Google) podrán compartir, almacenar y gestionar sus datos para ofrecerle anuncios personalizados    Más información
Privacidad