El Arduino Uno es una placa de microcontrolador de código abierto basada en el microcontrolador Microchip ATmega328P y desarrollado por Arduino.cc . [2] [3] La placa está equipada con conjuntos de pines de entrada / salida (E / S) digitales y analógicas que pueden interconectarse con varias placas de expansión (blindajes) y otros circuitos. [1] La placa tiene 14 O pines digitales de E / (seis capaces de PWM de salida), 6 E / S analógica pines, y es programable con el IDE Arduino (entorno de desarrollo integrado), a través de un tipo B cable USB . [4] Puede ser alimentado por el cable USB o por una batería externa de 9 voltios , aunque acepta voltajes entre 7 y 20 voltios. Es similar al Arduino Nano y Leonardo. [5] [6] El diseño de referencia de hardware se distribuye bajo una licencia Creative Commons Attribution Share-Alike 2.5 y está disponible en el sitio web de Arduino. También se encuentran disponibles archivos de diseño y producción para algunas versiones del hardware.
Desarrollador | Arduino |
---|---|
Fabricante | Muchos |
Tipo | Microcontrolador de placa única [1] |
Disponibilidad minorista | https://store.arduino.cc/usa/ |
Sistema operativo | Ninguno |
UPC | AVR de microchip (8 bits) |
Memoria | SRAM |
Almacenamiento | Flash , EEPROM |
La palabra " uno " significa "uno" en italiano y se eligió para marcar el lanzamiento inicial del software Arduino . [1] La placa Uno es la primera de una serie de placas Arduino basadas en USB; [3] it y la versión 1.0 del IDE de Arduino fueron las versiones de referencia de Arduino, que ahora han evolucionado a nuevas versiones. [4] El ATmega328 en la placa viene preprogramado con un cargador de arranque que permite cargar nuevo código sin el uso de un programador de hardware externo. [3]
Si bien el Uno se comunica usando el protocolo STK500 original, [1] se diferencia de todas las placas anteriores en que no usa el chip controlador FTDI USB a serie. En su lugar, utiliza el Atmega16U2 (Atmega8U2 hasta la versión R2) programado como un convertidor de USB a serie . [7]
Historia
El proyecto Arduino comenzó en el Interaction Design Institute Ivrea (IDII) en Ivrea , Italia. En ese momento, los estudiantes usaban un microcontrolador BASIC Stamp , a un costo que era un gasto considerable para muchos estudiantes. En 2003, Hernando Barragán creó la plataforma de desarrollo Wiring como proyecto de tesis de maestría en el IDII, bajo la supervisión de Massimo Banzi y Casey Reas, conocidos por su trabajo en el lenguaje Processing . El objetivo del proyecto era crear herramientas simples y de bajo costo para la creación de proyectos digitales por parte de personas que no son ingenieros. La plataforma Wiring consistió en una placa de circuito impreso (PCB) con un microcontrolador ATmega 168, un IDE basado en Processing y funciones de biblioteca para programar fácilmente el microcontrolador. [8] En 2003, Massimo Banzi, con David Mellis, otro estudiante de IDII, y David Cuartielles, agregaron soporte para el microcontrolador ATmega8 más económico a Wiring. Pero en lugar de continuar el trabajo en Wiring, bifurcaron el proyecto y lo rebautizaron como Arduino . Las primeras placas arduino usaban el chip controlador FTDI USB a serie y un ATmega 168. [8] El Uno se diferenciaba de todas las placas anteriores al presentar el microcontrolador ATmega328P y un ATmega16U2 (Atmega8U2 hasta la versión R2) programado como USB a convertidor en serie.
Especificaciones técnicas
- Microcontrolador : Microchip ATmega328P [7]
- Voltaje de funcionamiento: 5 voltios
- Voltaje de entrada: 7 a 20 voltios
- Pines de E / S digitales: 14 (de los cuales 6 pueden proporcionar salida PWM)
- UART: 1
- I2C: 1
- SPPI: 1
- Pines de entrada analógica: 6
- Corriente CC por pin de E / S: 20 mA
- Corriente CC para pin de 3.3V: 50 mA
- Memoria Flash : 32 KB de los cuales 0.5 KB son usados por el gestor de arranque
- SRAM : 2 KB
- EEPROM : 1 KB
- Velocidad de reloj: 16 MHz
- Longitud: 68,6 mm
- Ancho: 53,4 mm
- Peso: 25 g
Encabezados
Funciones generales de los pines
- LED : Hay un LED incorporado impulsado por el pin digital 13. Cuando el pin tiene un valor alto, el LED está encendido, cuando el pin está bajo, está apagado.
- VIN : El voltaje de entrada a la placa Arduino / Genuino cuando está utilizando una fuente de alimentación externa (a diferencia de los 5 voltios de la conexión USB u otra fuente de alimentación regulada). Puede suministrar voltaje a través de este pin o, si suministra voltaje a través del conector de alimentación, acceda a él a través de este pin.
- 5V : Este pin emite 5V regulados desde el regulador en la placa. La placa puede recibir alimentación desde el conector de alimentación de CC (7-20 V), el conector USB (5 V) o el pin VIN de la placa (7-20 V). El suministro de voltaje a través de los pines de 5 V o 3,3 V evita el regulador y puede dañar la placa.
- 3V3 : Una fuente de 3.3 voltios generada por el regulador de a bordo. El consumo máximo de corriente es de 50 mA.
- GND : clavijas de tierra.
- IOREF : Este pin en la placa Arduino / Genuino proporciona la referencia de voltaje con la que opera el microcontrolador. Un blindaje configurado correctamente puede leer el voltaje del pin IOREF y seleccionar la fuente de alimentación adecuada, o permitir que los traductores de voltaje en las salidas funcionen con 5V o 3.3V.
- Restablecer : generalmente se usa para agregar un botón de restablecimiento a los escudos que bloquean el que está en la placa. [7]
Funciones especiales de los pines
Cada uno de los 14 pines digitales y 6 pines analógicos del Uno se puede usar como entrada o salida, bajo control de software (usando las funciones pinMode (), digitalWrite () y digitalRead ()). Operan a 5 voltios. Cada pin puede proporcionar o recibir 20 mA como condición de funcionamiento recomendada y tiene una resistencia pull-up interna (desconectada por defecto) de 20-50K ohmios. No se debe exceder un máximo de 40 mA en ningún pin de E / S para evitar daños permanentes al microcontrolador. El Uno tiene 6 entradas analógicas, etiquetadas A0 a A5; cada uno proporciona 10 bits de resolución (es decir, 1024 valores diferentes). Por defecto, miden desde tierra hasta 5 voltios, aunque es posible cambiar el extremo superior del rango usando el pin AREF y la función analogReference (). [7]
Además, algunos pines tienen funciones especializadas:
- Serie / UART : pines 0 (RX) y 1 (TX). Se utiliza para recibir (RX) y transmitir (TX) datos en serie TTL. Estos pines están conectados a los pines correspondientes del chip serial ATmega8U2 USB a TTL.
- Interrupciones externas : pines 2 y 3. Estos pines se pueden configurar para activar una interrupción en un valor bajo, un flanco ascendente o descendente o un cambio de valor.
- PWM (modulación de ancho de pulso): pines 3, 5, 6, 9, 10 y 11. Puede proporcionar salida PWM de 8 bits con la función analogWrite ().
- SPI (Interfaz periférica en serie): pines 10 (SS), 11 (MOSI), 12 (MISO) y 13 (SCK). Estos pines admiten la comunicación SPI mediante la biblioteca SPI.
- TWI (interfaz de dos hilos) / I²C : pin SDA (A4) y pin SCL (A5). Admite la comunicación TWI mediante la biblioteca Wire.
- AREF (referencia analógica): Tensión de referencia para las entradas analógicas. [7]
Comunicación
El Arduino / Genuino Uno tiene una serie de facilidades para comunicarse con una computadora, otra placa Arduino / Genuino u otros microcontroladores. El ATmega328 proporciona comunicación en serie UART TTL (5V), que está disponible en los pines digitales 0 (RX) y 1 (TX). Un ATmega16U2 en la placa canaliza esta comunicación en serie a través de USB y aparece como un puerto de comunicación virtual para el software en la computadora. El firmware 16U2 utiliza los controladores COM USB estándar y no se necesita ningún controlador externo. Sin embargo, en Windows, se requiere un archivo .inf. El software Arduino (IDE) incluye un monitor en serie que permite enviar datos textuales simples hacia y desde la placa. Los LED RX y TX de la placa parpadearán cuando los datos se transmitan a través del chip USB a serie y la conexión USB a la computadora (pero no para la comunicación en serie en los pines 0 y 1). Una biblioteca SoftwareSerial permite la comunicación en serie en cualquiera de los pines digitales del Uno. [7]
Reinicio automático (software)
En lugar de requerir una presión física del botón de reinicio antes de una carga, la placa Arduino / Genuino Uno está diseñada de una manera que permite que se reinicie mediante un software que se ejecuta en una computadora conectada. Una de las líneas de control de flujo de hardware (DTR) del ATmega8U2 / 16U2 está conectada a la línea de reinicio del ATmega328 a través de un condensador de 100 nanofaradios. Cuando esta línea se afirma (baja), la línea de reinicio cae lo suficiente para reiniciar el chip. [7]
Esta configuración tiene otras implicaciones. Cuando el Uno está conectado a una computadora con Mac OS X o Linux, se reinicia cada vez que se establece una conexión desde el software (a través de USB). Durante el siguiente medio segundo más o menos, el gestor de arranque se ejecuta en el Uno. Si bien está programado para ignorar los datos con formato incorrecto (es decir, cualquier cosa que no sea la carga de un nuevo código), interceptará los primeros bytes de datos enviados a la placa después de que se abra una conexión. [7]
Ver también
- Microcontroladores AVR
- Conjunto de instrucciones Atmel AVR
- Programación en el sistema
Referencias
- ^ a b c d "Arduino UNO para principiantes - Proyectos, programación y piezas" . makerspaces.com . Consultado el 4 de febrero de 2018 .
- ^ http://medea.mah.se/2013/04/arduino-faq/
- ^ a b c "¿Qué es Arduino?" . learn.sparkfun.com . Consultado el 4 de febrero de 2018 .
- ^ a b "Introducción a Arduino" (PDF) . princeton.edu . Archivado desde el original (PDF) el 3 de abril de 2018 . Consultado el 4 de febrero de 2018 .
- ^ "Arduino" . store.arduino.cc . Consultado el 10 de marzo de 2020 .
- ^ https://arduino.cc https://store.arduino.cc/usa/arduino-leonardo-with-headers
- ^ a b c d e f g h Sitio web oficial .El contenido se copió de esta fuente, que tiene la licencia Creative Commons Attribution-Share Alike 3.0 (Unported) (CC-BY-SA 3.0) .
- ^ a b Hernando Barragán (1 de enero de 2016). "La historia no contada de Arduino" . arduinohistory.github.io . Consultado el 6 de marzo de 2016 .
Otras lecturas
enlaces externos
- Página web oficial de Arduino Uno
- Esquema de Uno Rev3
- Detalles técnicos de Arduino y comparaciones de placas
- Hoja de trucos de Arduino
- Diagramas de pines
- Placa Arduino Uno
- ATmega328 DIP
- ATmega328 SMD
- Mecánico
- Dimensiones y patrones de taladros
- Dimensiones, patrones de orificios, ubicaciones de encabezados y plantillas de PCB