Introducción

En este artículo vamos a enseñarte cómo puedes armar tu propio Arduino Uno en un protoboard usando el microcontrolador ATMEGA328P en encapsulado DIP. Esta experiencia es útil para el aprendizaje, ya que actualmente se pueden conseguir Arduino Uno genéricos por precios muy accesibles y no nos servirá para ahorrar demasiado.

El circuito que vamos a construir es muy similar al que encontraríamos en una placa Arduino Uno R3 original pero omitiendo algunos elementos presentes en esta placa para facilitar el armado y lograr una versión moderna y minimalista de este circuito, que incluso tendrá un puerto USB tipo C para comunicarse con la computadora.

Con el conocimiento en esta entrada podrás integrar Arduino en tus propios circuitos e incluso tomar estas bases para realizar tus propias tarjetas de circuito impreso para aplicaciones especificas y usar todo el potencial de la plataforma Arduino en tus proyectos.

¿Cómo construir un Arduino Uno en protoboard?

  1. Adquirimos los materiales necesarios que se listan más abajo.
  2. Armamos el circuito de Arduino Uno minimalista cuyo diagrama esquemático podemos encontrar en esta página.
  3. Cargamos el bootloader a nuestro microcontrolador ATMEGA328P utilizando un programador de microcontroladores AVR USBASP o el shield programador de ATMEGA328P o incluso otro Arduino Uno que podemos usar como programador.
  4. Instalar el driver para el circuito de interfaz USB a serial UART TTL CH340E.
  5. Conectar el circuito a la computadora para probar la comunicación y el funcionamiento general cargando el ejemplo LED blink.
  6. En el mismo protoboard podemos armar otras etapas y circuitos auxiliares, así que aquí tienes la libertad de incluir lo que quieras en el espacio restante del protoboard.

Materiales

Para armar un Arduino en protoboard necesitamos los siguientes materiales:

De manera opcional puedes adquirir:

Diagrama de Arduino en protoboard

El diagrama esquemático para armar un Arduino uno en protoboard:

Diagrama esquemático para armar Arduino Uno en protoboard.

La explicación de este circuito es la siguiente:

  • C1 y C2 son capacitores de desacople para la alimentación del microcontrolador, deben colocarse lo más cerca posible de los pines de alimentación.
  • Q1, C3 y C4 forman el circuito del oscilador y también debemos evitar cables largos entre estos componentes.
  • R1, C5 y el pulsador forman el circuito de reset. R1 es una resistencia pull-up que mantiene el pin de reset en estado alto mientras otra señal no actúe sobre este. C5 permite que la señal DTR de la interfaz serial pueda resetear el microcontrolador para activar el bootloader, pero si esta señal permanece en estado bajo el capacitor se carga y el microcontrolador saldrá del reset; El capacitor C5 permite entonces que el reset se aplique de forma temporal.
  • R2 y R3 protegen los pines de corrientes excesivas. Por ejemplo, si se da una situación en la que el microcontrolador intenta manejar el pin a un estado bajo y la interfaz serial USB a un estado alto.
  • R4 y LED1 forman el circuito que normalmente las placas Arduino Uno tienen conectado en el pin 13.

El circuito armado en un protoboard queda de la siguiente manera:

Como se puede observar aún nos queda espacio suficiente para armar cualquier otro circuito que necesitemos en este protoboard.

Prueba del circuito

Para comprobar el correcto funcionamiento del circuito debemos seleccionar la tarjeta Arduino Uno en el Arduino IDE y el puerto correspondiente a nuestra interfaz serial.

Seleccionar la placa Arduino Uno y el puerto serial correspondiente en el Arduino IDE.

Abrimos el ejemplo de LED Blink como se muestra en la siguiente imagen:

Abrir el ejemplo "Blink" para probar la comunicación con el microcontrolador y el bootloader.

Finalmente solo damos clic en el botón cargar:

Oprimir el botón "cargar" para compilar el programa y enviarlo al microcontrolador ATMEGA328P en el protoboard.

Si todo está correcto, se debe mostrar un mensaje indicando que la programación se llevó a cabo de manera satisfactoria y debemos ver el LED parpadeando en nuestro circuito.

Mensaje de "Carga completa" que debe mostrarse si todo sale bien con nuestra implementación de Arduino Uno en protoboard.

Enlaces y lecturas recomendadas

Conclusión

  • En esta entrada aprendimos cómo está construida una tarjeta Arduino Uno e implementamos nuestro propio diseño en un protoboard con componentes muy fáciles de adquirir.
  • Aprendimos que debemos cargar un bootloader en el microcontrolador ATMEGA328P y que esta pieza de software/firmware es la que permite cargar programas nuevos en el microcontrolador sin la ayuda de un programador de AVR.
  • Observamos la utilidad de una interfaz USB serial TTL para comunicar nuestra PC con un microcontrolador y cómo se realizan las conexiones de una UART.
  • Obtuvimos conocimientos a cerca del sistema mínimo requerido por el microcontrolador ATMEGA328P.
1
Escanea el código