Arduino Nano está equipado con 30 conectores macho de E/S , en una configuración similar a la de un DIP-30 , que se pueden programar mediante el entorno de desarrollo integrado (IDE) de Arduino , que es común a todas las placas Arduino y que funciona tanto en línea como fuera de línea. La placa se puede alimentar a través de un cable mini-USB tipo B o de una batería de 9 V. [2]
Historia
En 2008, se lanzó el Arduino Nano.
En 2019, Arduino lanzó el Arduino Nano Every , una evolución del Nano con pines equivalentes. Cuenta con un microcontrolador (MCU) ATmega4809 con tres veces más RAM. [3]
Un FTDI FT232RL en la placa canaliza esta comunicación serial a través de USB y los controladores FTDI (incluidos con el firmware de Arduino) proporcionan un puerto COM virtual al software de la computadora. El software de Arduino incluye un monitor serial que permite enviar datos textuales simples hacia y desde la placa Arduino. Los LED RX y TX en la placa parpadean cuando se transmiten datos a través del chip FTDI y la conexión USB a la computadora (pero no para la comunicación serial en los pines 0 y 1). Una biblioteca SoftwareSerial permite la comunicación serial en cualquiera de los pines digitales del Nano. El ATmega328 también admite la comunicación I2C y SPI. El software de Arduino incluye la biblioteca Wire para simplificar el uso del bus I2C. [4]
Reinicio automático (software)
En lugar de requerir que se presione físicamente el botón de reinicio antes de una carga, el Arduino Nano está diseñado de manera que se pueda reiniciar mediante un software que se ejecuta en una computadora conectada. Una de las líneas de control de flujo de hardware (DTR) del FT232RL está conectada a la línea de reinicio del ATmega328 a través de un capacitor de 100 nanofaradios. Cuando se activa esta línea (se pone a un nivel bajo), la línea de reinicio cae el tiempo suficiente para reiniciar el chip. [4]
Esta configuración tiene otras implicaciones. Cuando el Nano está conectado a un ordenador con Mac OS X o Linux, se reinicia cada vez que se realiza una conexión a él desde el software (a través de USB). Durante el siguiente medio segundo, aproximadamente, el gestor de arranque se ejecuta en el Nano. Si bien está programado para ignorar los datos malformados (es decir, cualquier cosa que no sea una carga de código nuevo), interceptará los primeros bytes de datos enviados a la placa después de que se abra una conexión. [4]
Comparación de placas Arduino
La siguiente tabla compara las placas Arduino oficiales y tiene un diseño similar a la tabla del artículo de Arduino Uno . La tabla está dividida con barras oscuras en tres grupos de microcontroladores de alto nivel: núcleos AVR de 8 bits, núcleos ARM Cortex-M de 32 bits y microcontroladores ESP32 de 32 bits . Aunque las placas de terceros tienen nombres de placa similares, no significa automáticamente que sean 100% idénticas a las placas Arduino oficiales. Las placas de terceros a menudo tienen un regulador de voltaje diferente / un chip USB a UART diferente / una máscara de soldadura de color diferente , y algunas también tienen un conector USB diferente o características adicionales.
Notas de la tabla
Columna de grupo de tamaño de placa : agrupación simplificada de tamaño de placa: Nano significa un tamaño similar al de la placa Arduino Nano. Esta tabla tiene un diseño similar al de la tabla del artículo de Arduino Uno .
Columna de pines/número de pieza de MCU : MCU significa microcontrolador . Toda la información de MCU en esta tabla se obtuvo de las hojas de datos oficiales de esta columna. El recuento de pines es útil para determinar la cantidad de características internas de MCU que están disponibles. Es posible que no todas las características de hardware de MCU estén disponibles en los pines del conector Nano porque el paquete de CI de MCU tiene más pines que los 30 pines del conector en la placa Nano (*).
Columna de voltaje de E/S de MCU : los microcontroladores en las placas Arduino oficiales se alimentan con un voltaje fijo de 3,3 o 5 voltios . El voltaje nominal del microcontrolador se indica entre paréntesis, aunque las placas Arduino no admiten este rango completo.
Columna de reloj de MCU : MHz significa 10 6 Hertz . El MCU ATmega328P está diseñado para un máximo de 20 MHz, pero la placa Nano funciona a 16 MHz.
Columnas de memoria MCU: KB significa 1024 bytes , MB significa 1024 2 bytes.
Columna SRAM MCU : el tamaño de SRAM no incluye cachés ni buffers periféricos.
Columna USART/UART de MCU : los USART se pueden configurar mediante software para ser: UART / SPI /otros periféricos (varía según la MCU).
Columna Otros periféricos de bus de la MCU : para el bus USB , "FS" significa velocidad completa (máximo de 12 Mbps), "HS" significa alta velocidad (máximo de 480 Mbps). Para el bus CAN , "A" significa CAN 2.0A, "B" significa CAN 2.0B, "FD" significa CAN-FD. El RP2040 (placa de conexión Nano RP2040) tiene un controlador de E/S programable que puede emular varios buses. Algunos buses requieren circuitos externos adicionales para funcionar.
Columna de temporizadores de MCU : los números de esta columna son la cantidad total de ancho de bit de cada temporizador ; por ejemplo, el ATmega328P tiene un temporizador de 16 bits y dos temporizadores de 8 bits. "WD" significa temporizador de vigilancia , "RT" significa contador/temporizador en tiempo real, "RC" significa reloj en tiempo real (seg/min/h). Los temporizadores SysTick de 24 bits dentro de los núcleos ARM no están incluidos en el total de 24 bits de esta columna. Las funciones PWM no están documentadas en esta tabla.