

El arduino UNO es una placa de microcontrolada basada en un ATmega328 (datasheet). Tiene 14 pines de entrada/salida digitales (seis de ellos pueden ser usados como salida de PWM), seis entradas analógicas, un resonador cerámico de 16MHz, conexión USB, jack de alimentación, conector ICSP y botón de reset. Contiene todo lo necesario para funcionar, solo tienes que conectarla al ordenador con un cable USB o alimentarla con adaptador de corriente o unas baterías para empezar a usarla.
Una de las diferencias de esta placa con sus predecesoras es que no necesita un chip controlador FTDI USB-SERIAL. En ligar de eso posee un Atmega16U2 (Atmega8U2 a partir de la versión 2)programado como converso USB-SERIAL.
La segunda revisión de Arduino UNO posee una resistencia pulling en la linea GND del 8U2 para facilitar ponerlo en modo DFU
La versión 3 de la placa tiene las siguientes novedades:
- Añadidos pines SDA y SCL cerca del pin AREF y dos nuevos pines cerca del pin de RESET, el IOREF permitirá a los shields adaptarse al voltaje suministrado por la placa. En el futuro, los shields podrán ser compatibles compatibles tanto con las placas que usan AVR y operan a 5V como por la Aduino Due que opera a 3,3V. El segundo es un pin no conectado reservado para usos futuros.
- Stronger RESET circuit.
- Remplazado el 16U2 por un 8U
"Uno" significa uno en italiano y se nombra para conmemorar el próximo lanzamiento de Arduino 1.0. El Uno y la versión 1.0 será la versión de referencia de Arduino, moviéndose hacia adelante. El Uno es el último de una serie de placas Arduino USB y el modelo de referencia para la plataforma Arduino, para una comparación con las versiones anteriores, consulte el índice de la placa Arduino.
Resumen | |
---|---|
Microcontrolador | ATmega328 |
Voltaje de funcionamiento | 5V |
Voltaje de entrada (recomendado) | 7-12V |
Voltaje de entrada (máximo) | 6-20V |
Entradas/Salidas Digitales | 14 (6 de ellas pueden ser usadas como PWM) |
Entradas analógicas | 6 |
Tensión máxima de las entradas/salidas | 40mA |
Tensión máxima del pin 3,3V | 50mA |
Memoria Flash | 32Kb(ATmega328) 0,5Kb empleados en el bootloader |
SRAM | 2Kb(ATmega238) |
EEPROM | 1Kb(ATmega328) |
Frecuencia de reloj | 16Mhz |
Esquemáticos y diseños
Ficheros de EAGLE arduino-uno-Rev3-reference-design.zip (NOTA: usar EAGLE 6.0 o superior)
Esquemático: arduino-uno-Rev3-schematic.pdf
Nota: Los diseños pueden ser usados con un Armega8, 168 o 328, los modelos actuales usan un ATmega328, pero podemos ver un Atmega8 en el esquemático. La configuración de pines es idéntica en los tres procesadores.
Alimentación
Arduino UNO puede ser alimentado vía USB o conectándolo a una fuente de alimentación externa. La selección entre estas opciones se hace de forma automática.
La alimentación externa puede hacerse con un adaptar de corriente continua o una batería. El adaptador puede ser conectado mediante un conector de 2.1mm con el positivo en el centro. Este se puede conectar directamente a jack de la placa. Las baterías pueden conectarse a los pines de Vin(+) y GND(-).
La placa puede funcionar con una alimentación externa de entre 6 y 20V. Sin embargo, si se suministran menos d e7V el pin de 5V podría no alcanzar este valor y la placa puede ser inestable. Si se usan más de 12V el regulador podría sobrecalentarse y causar daños a la placa, por lo tanto el rango recomendables seria de entre 7 y 12 V.
Los pines de alimentación son:
- VIN: entrada de voltaje de la placa Arduino.
- 5V: Este pin ofrece una salida regulada de 5V desde el regulador de la placa. Este pin puede ser utilizado cuando la placa esta siendo alimentada desde el jack de alimentación (7 - 12V), el conector USB (5V) o el pin VIN (7 - 12V).
- Alimentar la placa mediante este pin es posible, pero la corriente no pasará por el regulador y podría dañarse Arduino. NO ESTA RECOMENDADO.
- 3V3. Salida regulada a 3,3V mediante el regulador de la placa. Puede entregar un máximo de 50mA.Alimentar la placa mediante este pin es posible, pero la corriente no pasará por el regulador y podría dañarse Arduino. NO ESTA RECOMENDADO.
- GND: pin de tierra.
- IOREF: Este pin en la placa Arduino proporciona la tensión de referencia con el que el microcontrolador opera. Un shield correctamente configurado puede leer el voltaje pin IOREF y seleccione la fuente de alimentación adecuada o habilitar reguladores de tensión en las salidas para trabajar con 5V o 3.3V.
Memoria
El ATmega328 tiene 32Kb (0,5 KB son usados para el bootloader). Además tiene 2Kb de SRAM y 1Kb de EEPROM(Esta puede ser escrita y leída por la librería EEPROM )
Entradas y Salidas:
Los 14 pines digitales de Arduino UNO pueden ser usadosomo entradas o como salidas usando las funciones pinMode(), digitalWrite() y digitalRead(). Todas ellas operan a 5V y puedes entregar o recibir un máximo de 40mA, además poseen una resistencia pull-up interna (desconectada por defecto) de 20-50KOhms. Además algunos de los pines tienen funciones especificas:
- Serial: 0(RX) y 1(TX). Usadas para recibir (RX) y transmitir (TX) datos serie. Estos pines están conectados a los correspondientes pines del chip Armega8U2 USB-to-TTL
- Interrupciones externas: Pines 2 y 3. Estos pines están configurados como interruptor trigger activado por un valor bajo, un flanco ascendente, descendente o un cambio de valor. Mira la documentación de la función attachInterrupt() para más detalles.
- PWM: los pines 3,5,6,9,10 y 11 pueden ser utilizados como salida PWM de 8-bits con la función analogWrite().
- SPI: 10(SS),11(MOSI),12(MISO),13(SCK): estos pines soportan comunicación SPI usando la librería SPI.
- LED: 13. Este pin esta conectado a un LED. Cunado el pin esta en alta el led se enciende, cuando esta en baja se apaga.
Arduino UNO pose 6 entradas analógicas etiquetadas desde A0 a A5, tienen una resolución de 10Bits(1024 valores posibles). Por defecto funcionan desde 0 a 5 voltios, pero es posible cambiar el valor máximo haciendo uso del pin AREF y la función analogReference().
Además, otros pines tienen funciones especificas:
- TWI: A4 o pin SDA y A5 o pin SCL. Soportan comunicación TWI usando la librería Wire.
- Reset: si se pone a baja el microcontrolador se reinicia. Normalmentee se usa para añadir un botón de reset en Shields que tapan el de la placa.
Comunicación
Arduino UNO tiene mayor numero de facilidades para comunicarse con un ordenado que otros Arduinos y otros microcontroladores. El ATmega328 provee de comunicación serial UART TTL(5V) cuando están disponibles los pines 0 (RX) y 1(TX). Y el Atmega16U2 simula un puerto virtual para comunicarse de forma serial por USB. El firmware del Atmega16U2 usa el estándar de los drivers USB COM y no necesita drivers. Sin embargo es necesario que Windows cuente con un fichero .inf. El software de Arduino incluye monitor de la conexión serial y una forma sencilla de enviar datos a la placa de Arduino. Los led de RX y TD en la placa parpadean cuando hay una conexión vía USB pero no cunado se emplean los pines de comunicación serial 0 y 1.
La librería de SoftwareSerial permite la comunicación con cualquiera de los pines digitales de Arduino UNO
El ATmega328 soporta I2C(TWI) y comunicación SPI. El Software de Arduino incluye una librería que simplifica el uso del bus I2C. Para más detalles consulte la documentación sobre la comunicación SPI y la librería SPI.(En ingles.)
Programación
El Arduino UNO puede ser programado desde el software de Arduino. Seleccionando "Arduino UNO" en Herramientas -> Placa (tools -> Board) y seleccionado el microcontrolador adecuado para tu placa. Para más detalles consultar los tutoriales.
El ATmega328 de Arduino viene con el bootloader pre-cargado para que puedas subir tu código sin necesidad de un programador externo. Esta comunicación usa el protocolo STK500 (documentación, Ficheros C)
También puede saltarse el bootloader y programar el microcontrolador usando el conector ICSP(in-Circuit Serial Programming). Mire las instrucciones para más detalles.
El firmware del Atmega16U2 (o el 8U2 en las revisiones 1 y 2) esta disponible. The Atmega16U2/8U2 esta cargado con el bootloader DFU, que puede ser activado por:
- En las placas de la revisión1: conectar el jumper el jumper soldado por la parte de atrasde la placa (cerca del mapa de Italia) y reseteando el 8U2.
- En las placas de la revisión 2 o posteriores: Con una resistencia entre la linea HWB del 8U2/16U2 y tierra. Esto facilita entrar en modo DFU.
Puedes usar el software Atmel's FLIP (Para Windows) o el DFU programmer (Mac OS X y linux) para cargar un nuevo firmware o puedes usar el conector ISP con un programador externo. Para más información consulte este tutorial.
Reseteo automático por software
Para eliminar la necesidad de presionar físicamente el botón de reset antes de subir el nuevo sketch Arduino UNO esta diseñado para resetearse por software. Una de las lineas de control (DTR) del Atmega8U2/16U2 esta conectado al reset del ATmega328 por un condensador de 100nF. Cuando esta linea esta en uso la entrada del reset baja lo suficiente y el chip se resetea. El software de Arduino usa esto para permitir subir el código a la placa simplemente pulsando el botón del entorno de desarrollo de Arduino. Esto implica que el gestor de arranque puede tener un tiempo de espera más corto, ya que el DTR puede esta bien coordinado con el inicio de la carga.
Este diseño tiene otra implicación, cuando UNO esta conectado a un ordenador con Mac OS o Linux se resetea cada vez que que se establece una conexión con el software (vía USB). Durante el siguiente medio segundo Arduino UNO estará ejecutando su bootloader. Durante este tiempo se ignoran los datos de entrada para evitar errores. Si acaba de conectar la placa a la alimentación asegurase de esperar un segundo antes de comenzar a enviar los datos.
Arduino UNO contiene una pista que puede deshabilitar el auto-reset. Los pads que pueden volver a soldarse juntos para rehabilitarte, están marcados con la la etiqueta RESET-EN. También puede deshabilitarse el auto-reset conectando una resistencia de 110Ohm entre 5V y la patilla de reset. En el foro puede encontrar más detalles.
USB protegido de sobrecargas.
Arduino UNO cuenta con un fusible reseteable que protege el puerto USB del ordenador de cortocircuitos y sobrecargas, algunos ordenadores tienen sus propias protecciones internas, pero este fusible otorga una seguridad extra. Si se aplican más de 500mA al puerto USB el fusible abre el circuito automáticamente hasta que se retira la carga.
Características Físicas.
El tamaño máximo de la placa del Arduino UNO es de 2.7 x 2.1 pulgadas respectivamente. El USB y el jack de alimentación extienden ligeramente estas dimensiones. Cuatro agujeros permiten unirla a cualquier superficie mediante tornillos. La distancia entre los pines digitales 7 y 8 es de 160 milésimas de pulgada, no un múltiplo de 100milesimas de pulgada como en el resto de los pines.