Skip to main content

0. Introducción

El Arduino Nano es una de las placas más prácticas para pasar de un circuito experimental a un sistema compacto y funcional. Su principal fortaleza está en combinar las capacidades del microcontrolador ATmega328P con un formato pequeño, compatible con protoboard y fácil de integrar mediante una base de conexiones o adaptador de bornes.

Nota: este artículo se refiere al Arduino Nano clásico basado en ATmega328P. No debe confundirse con variantes como Nano Every, Nano 33 IoT, Nano ESP32 o Nano RP2040 Connect, ya que cambian el microcontrolador, el voltaje lógico y, en algunos casos, la distribución de pines.

1. Un Arduino pequeño 100% compatible con el Arduino UNO

El Arduino Nano clásico mide aproximadamente 45 × 18 mm y pesa cerca de 7 g. A pesar de su tamaño, ofrece prestaciones muy parecidas a las de Arduino Uno R3 ambos trabajan con el microcontrolador ATMEGA 328p:  16 MHz, utiliza lógica de 5 V y cuenta con 32 KB de memoria Flash, 2 KB de SRAM y 1 KB de EEPROM.

Entre sus recursos principales se encuentran:

  • 14 pines digitales de propósito general.
  • 6 salidas PWM para regular LEDs, controlar velocidad de motores o generar señales.</li>
  • 8 entradas analógicas, identificadas como A0 a A7.(la única diferencia con el Arduino UNO usa A0 a A5)
  • Comunicación serial UART mediante los pines D0/RX y D1/TX.
  • Buses I²C y SPI para conectar pantallas, sensores, memorias y periféricos.
  • Alimentación mediante USB, pin VIN o línea regulada de 5 V.

Esta combinación permite utilizarlo en sistemas de automatización, robots móviles, estaciones de sensores, dataloggers, controles de acceso, instrumentos de medición.

Para mas detalles del Arduino UNO Te invito a revisar el Articulo Introducción a los Sistemas Arduino 

2. PinOUT del Arduino NANO

PinOut Arduino NANO

Pinout de Arduino Nano clásico con pines digitales, analógicos, PWM, UART, I2C y SPI

¡Mejores Recomendaciones de Productos en Oferta!
Nano 3.0 USB Tipo-C con controlador Nano 3.0 compatible con bootloader para Arduino, controlador USB CH340, 16Mhz, IC original ATMEGA328P
🔗Haz clic y compra

Nota: Este es un enlace de afiliado. Si compras a través de él, puedo recibir una pequeña comisión sin costo adicional para ti. Solo recomiendo productos que consideraría útiles para mis estudiantes.

 

3.Ventajas de trabajar con Arduino Nano

A. Ocupa muy poco espacio

La ventaja más evidente del Nano es su tamaño. Puede instalarse en espacios donde un Arduino Uno resulta incómodo: dentro d

e una caja pequeña, en el chasis de un robot, detrás de un panel de control o en una tarjeta electrónica diseñada para un proyecto específico.

Esta característica es especialmente útil cuando el prototipo deja de ser una práctica de laboratorio y debe convertirse en un equipo funcional.

B. Se conecta directamente a una protoboard

El Nano tiene dos filas de pines con separación estándar de 2,54 mm. Por ello puede insertarse directamente en una protoboard, dejando disponibles las líneas laterales para conectar sensores, resistencias, pulsadores, LEDs, transistores y módulos electrónicos.

Esto facilita la fase de experimentación. En lugar de trabajar con cables largos conectados a una placa externa, el microcontrolador queda integrado en el propio circuito de prueba.

Una disposición habitual es colocar el Nano sobre el canal central de la protoboard, conectar los rieles de alimentación a 5 V y GND, y distribuir desde allí los dispositivos del proyecto.

C. Incluye más entradas analógicas que Arduino Uno

El Arduino Nano clásico dispone de ocho entradas analógicas, mientras que Arduino Uno R3 incorpora seis. Esta diferencia puede ser relevante en proyectos de adquisición de datos.

Por ejemplo, un sistema de monitoreo ambiental podría leer simultáneamente la temperatura, la humedad, el nivel de iluminación, la calidad de aire, la humedad del suelo, el nivel de agua, un potenciómetro de ajuste y el voltaje de una batería.

Para prácticas de instrumentación, automatización y sensores, estas dos entradas adicionales pueden evitar el uso inmediato de un multiplexor analógico.

D. El código suele ser compatible con Arduino Uno

Como Arduino Uno y Arduino Nano clásico usan una arquitectura muy similar, la mayoría de los programas desarrollados para Uno pueden ejecutarse en Nano sin modificaciones relevantes.

Por ejemplo, un sketch que lea un sensor ultrasónico HC-SR04, muestre datos en una pantalla OLED I²C y active un relé puede migrarse simplemente revisando:

  • La asignación física de los pines.</li>
  • El método de alimentación.
  • <li>La selección de la placa y el procesador en Arduino IDE.
  • El puerto serial utilizado para cargar el programa.

Esto reduce el tiempo de desarrollo: se puede iniciar el aprendizaje o la prueba en un Uno y luego migrar al Nano cuando el sistema necesite ser compacto.

 

E. Es una buena plataforma para el prototipo final

Arduino Nano ocupa un punto intermedio entre una placa educativa y una tarjeta diseñada a medida. Es suficientemente pequeño para usarlo en prototipos funcionales, pero conserva la facilidad de programación del ecosistema Arduino.

Por ello es frecuente usarlo en:

  • Sistemas de riego automatizado.
  • Controladores de iluminación.
  • Robots seguidores de línea.
  • Proyectos de domótica.
  • Medidores digitales.
  • Sistemas de alarma.
  • Control de motores DC y servomotores.
  • Lectores RFID.
  • Maquetas de automatización industrial.

4.¿Qué es una base de conexiones?

Una base de conexiones para Arduino Nano, también conocida como terminal adapter, shield de expansión, base de bornes o módulo breakout, es una tarjeta que recibe el Nano y lleva sus pines hacia terminales de tornillo, conectores hembra o zonas de prototipado.

En lugar de conectar directamente cables Dupont a los pines del Nano, cada señal queda disponible en un borne identificado. Así, los cables pelados de sensores, actuadores, fuentes de alimentación o módulos externos pueden fijarse mediante tornillos.

Algunos adaptadores incluyen terminales de tornillo para los pines de entrada/salida, zona perforada para componentes y orificios de montaje. Estas características ayudan a organizar el proyecto y facilitan su instalación dentro de una caja o tablero.

A. Conexiones más firmes

Los cables Dupont son excelentes para pruebas rápidas, pero pueden soltarse por vibración, manipulación del circuito o tensión mecánica. Esto representa un problema frecuente en robots, maquetas, tableros de control y sistemas instalados de forma permanente.

Los bornes de tornillo sujetan el conductor de forma más segura. Esto disminuye las fallas intermitentes, facilita el mantenimiento y mejora la presentación general del montaje.

Base Arduino Nano Base Arduino Nano

¡Mejores Recomendaciones de Productos en Oferta!
Adaptador de Terminal de controlador NANO V3.0 3,0, placa de expansión, escudo NANO IO, placa de extensión Simple para Cable Arduino AVR ATMEGA328P
🔗 Haz clic y compra

Nota: Este es un enlace de afiliado. Si compras a través de él, puedo recibir una pequeña comisión sin costo adicional para ti. Solo recomiendo productos que consideraría útiles para mis estudiantes.

B.Identificación clara de los pines

Muchas bases de expansión incluyen serigrafía con nombres como D2, D3, A0, A1, VIN, 5V, 3V3 y GND. Esta identificación reduce errores de cableado y permite revisar el circuito sin depender continuamente del diagrama de pines.

En un entorno educativo, esta característica es muy valiosa: el estudiante puede asociar más fácilmente el código con la conexión física del sensor o actuador.

C. Facilita el cableado de proyectos finales

Una base de conexiones permite organizar el sistema como un pequeño tablero de control. Cada módulo puede tener su conexión definida y los conductores pueden distribuirse de forma más limpia. La base no cambia el programa del Arduino. Su función es mejorar la forma en que se accede y conecta cada pin.

D. Permite una transición

La base de conexiones puede considerarse un paso intermedio entre el prototipo montado en protoboard y una PCB diseñada específicamente para el proyecto.

La evolución típica de un desarrollo puede ser:

  1. Probar el circuito con Arduino Nano y protoboard.
  2. Validar sensores, código y alimentación.
  3. Montar el Nano en una base de conexiones.
  4. Organizar el cableado en una caja o tablero.
  5. Diseñar una PCB propia si el proyecto necesita producción o mayor robustez.

Este proceso evita diseñar una tarjeta definitiva antes de comprobar que la solución funciona correctamente.

6.Prueba de comunicación serial

Antes de conectar sensores, relés u otros módulos, es recomendable verificar que el Arduino Nano, el cable USB, el puerto seleccionado y la comunicación serial funcionen correctamente.

El siguiente programa inicializa la comunicación serial a 9600 baudios, muestra mensajes de estado y permite controlar el LED integrado desde el Monitor Serial de Arduino IDE.

/*
  Prueba de comunicación serial para Arduino Nano

  Comandos disponibles desde el Monitor Serial:

  ON      -> Enciende el LED integrado
  OFF     -> Apaga el LED integrado
  ESTADO  -> Muestra el estado actual del LED

  Configuración del Monitor Serial:
  - Velocidad: 9600 baudios
  - Terminador de línea: Nueva línea, Retorno de carro
    o Ambos NL y CR.
*/

// -----------------------------------------------------------------------------
// Configuración de pines y variables globales
// -----------------------------------------------------------------------------

// LED integrado de la placa Arduino Nano.
const byte LED_PIN = LED_BUILTIN;

// Almacena el estado actual del LED.
bool ledEncendido = false;

// Almacena los caracteres recibidos hasta completar un comando.
String comando = "";

// Intervalo para el mensaje periódico de actividad.
const unsigned long INTERVALO_MENSAJE = 2000;

// -----------------------------------------------------------------------------
// Configuración inicial
// -----------------------------------------------------------------------------

void setup() {
  // Configura el LED integrado como salida.
  pinMode(LED_PIN, OUTPUT);

  // Asegura que el LED comience apagado.
  digitalWrite(LED_PIN, LOW);

  // Inicializa la comunicación serial.
  Serial.begin(9600);

  // Muestra información inicial en el Monitor Serial.
  Serial.println("=================================");
  Serial.println("       Arduino Nano listo");
  Serial.println(" Prueba de comunicacion serial");
  Serial.println(" Comandos: ON, OFF, ESTADO");
  Serial.println("=================================");
}

// -----------------------------------------------------------------------------
// Bucle principal
// -----------------------------------------------------------------------------

void loop() {
  // Envía un mensaje cada cierto tiempo para confirmar
  // que el Arduino continúa ejecutando el programa.
  enviarMensajeActividad();

  // Comprueba si existen datos recibidos por el puerto serial.
  leerComandoSerial();
}

// -----------------------------------------------------------------------------
// Funciones auxiliares
// -----------------------------------------------------------------------------

/*
  Envía un mensaje de actividad cada INTERVALO_MENSAJE milisegundos.
*/
void enviarMensajeActividad() {
  static unsigned long tiempoAnterior = 0;

  if (millis() - tiempoAnterior >= INTERVALO_MENSAJE) {
    tiempoAnterior = millis();

    Serial.println("Nano activo...");
  }
}

/*
  Lee los caracteres enviados desde el Monitor Serial.

  Cuando detecta un salto de línea o retorno de carro,
  procesa el texto recibido como un comando.
*/
void leerComandoSerial() {
  while (Serial.available() > 0) {
    char caracter = Serial.read();

    // Detecta el final de un comando al presionar Enviar.
    if (caracter == '\n' || caracter == '\r') {
      // Evita procesar líneas vacías.
      if (comando.length() > 0) {
        procesarComando(comando);

        // Limpia la variable para recibir el próximo comando.
        comando = "";
      }
    }
    else {
      // Agrega el carácter recibido al comando actual.
      comando += caracter;
    }
  }
}

/*
  Analiza y ejecuta el comando recibido.

  Parámetro:
  - texto: comando enviado por el usuario desde el Monitor Serial.
*/
void procesarComando(String texto) {
  // Elimina espacios al inicio y al final del texto.
  texto.trim();

  // Convierte el comando a mayúsculas.
  // Permite escribir: on, On, ON, estado, ESTADO, etc.
  texto.toUpperCase();

  // Muestra el comando recibido.
  Serial.print("Comando recibido: ");
  Serial.println(texto);

  // Enciende el LED integrado.
  if (texto == "ON") {
    encenderLED();
  }

  // Apaga el LED integrado.
  else if (texto == "OFF") {
    apagarLED();
  }

  // Consulta el estado actual del LED.
  else if (texto == "ESTADO") {
    mostrarEstadoLED();
  }

  // Informa que el comando no existe.
  else {
    Serial.println("Comando no reconocido.");
    Serial.println("Use: ON, OFF o ESTADO.");
  }
}

/*
  Enciende el LED integrado y actualiza su estado.
*/
void encenderLED() {
  ledEncendido = true;

  digitalWrite(LED_PIN, HIGH);

  Serial.println("LED encendido.");
}

/*
  Apaga el LED integrado y actualiza su estado.
*/
void apagarLED() {
  ledEncendido = false;

  digitalWrite(LED_PIN, LOW);

  Serial.println("LED apagado.");
}

/*
  Muestra en el Monitor Serial el estado actual del LED.
*/
void mostrarEstadoLED() {
  Serial.print("Estado del LED: ");

  if (ledEncendido) {
    Serial.println("ENCENDIDO");
  }
  else {
    Serial.println("APAGADO");
  }
}

si te fijas no he colocado delay() en su lugar use millis() en los siguientes capitulo analizaremos esta tema 

A. Cómo realizar la prueba

    1. Carga el programa en el Arduino Nano.
    2. Abre el Monitor Serial desde Arduino IDE.
    3. Configura una velocidad de 9600 baudios.

<li>Selecciona como terminador de línea la opción “Nueva línea”, “Retorno de carro” o “Ambos NL y CR”.

  1. Escribe uno de los siguientes comandos y presiona Enviar:
ON
OFF
ESTADO

Al iniciar, el Monitor Serial mostrará mensajes similares a los siguientes:

Arduino Nano listo
Prueba de comunicacion serial
Comandos: ON, OFF, ESTADO
Nano activo...

Al enviar el comando ON el LED integrado de la placa se encenderá y aparecerá este mensaje:

Comando recibido:
ON
LED encendido.

B. Te funciono ?

por lo general al no poder subir el código o darte fallas es por lo general una mala configuración en el IDE de Arduino  por ejemplo si el Arduino Nano es con USB mini la configuración es :

configuración Arduino nano configuración Arduino nano

si es USB tipo C te recomiendo usar Atmega328p

7. Recomendaciones de uso

Al trabajar con Arduino Nano y una base de conexiones, conviene aplicar algunas

buenas prácticas:

  • Verificar la orientación del Nano antes de insertarlo en la base; una conexión invertida puede causar daños.
  • Confirmar que la base sea compatible con la versión exacta de Arduino Nano utilizada.
  • No alimentar motores, bombas, tiras LED o relés directamente desde los pines del Nano.
  • Usar una fuente externa adecuada para las cargas de potencia.
  • Unir las tierras o GND de la fuente externa y del Arduino cuando compartan señales de control.
  • Incorporar módulos de potencia, transistores, MOSFETs, drivers o relés según la carga.
  • Etiquetar los cables, especialmente en sistemas con varios sensores y actuadores.
  • Revisar que no existan hilos sueltos del conductor dentro de los terminales de tornillo.

8. Conclusión

Arduino Nano es una excelente alternativa cuando se necesita la simplicidad del ecosistema Arduino en un formato compacto. Su compatibilidad con protoboard, sus ocho entradas analógicas y la posibilidad de reutilizar gran parte del código del Arduino Uno lo convierten en una herramienta muy útil para estudiantes, docentes, aficionados y desarrolladores de sistemas embebidos.

Al combinarlo con una base de conexiones, el proyecto gana orden, resistencia mecánica y facilidad de mantenimiento. La base no aumenta la potencia del microcontrolador, pero sí mejora de forma importante la calidad del montaje: transforma una conexión temporal de laboratorio en una solución más cercana a un sistema real.

9. Fuentes recomendadas

 

Si necesitas un proyecto personalizado puedes ver mi repositorio 

Loading

Telles Rafael

Profesor Especialista en Control Industrial, con mas de 20 Años de experiencia en electrónica digital

Leave a Reply

Close Menu

Wow look at this!

This is an optional, highly
customizable off canvas area.

About Salient

The Castle
Unit 345
2500 Castle Dr
Manhattan, NY

T: +216 (0)40 3629 4753
E: hello@themenectar.com