Arduino Mega

El Arduino Mega 2560 R3 (rev3) es una placa o tarjeta electrónica basada en el microcontrolador ATmega2560 de Atmel. Contiene todos los elementos adicionales necesarios para el funcionamiento del microcontrolador; para empezar basta con alimentarlo desde un computador a través del cable USB, o por medio de una fuente de alimentacion independiente.

Disponibilidad: In Stock

Seleccione una opción...

Precio: $ 17.00

Añadir al carrito

Descripción del producto

¿Qué es el Arduino Mega?

El Arduino Mega 2560 R3 (rev3) es una placa o tarjeta electrónica basada en el microcontrolador ATmega2560 de Atmel. Contiene todos los elementos adicionales necesarios para el funcionamiento del microcontrolador; para empezar basta con alimentarlo desde un computador a través del cable USB, o por medio de una fuente de alimentacion independiente (adaptador AC/DC o bateria). El Arduino Mega es compatible con la mayoría de los shields (escudos) diseñados para el Arduino Duemilanove o Diecimila.

Esta es la versión más reciente del Arduino Mega. Además de las características de las versiones anteriores, esta nueva placa incorpora un chip ATmega16U2 programado como un convertidor de USB a serie; el ATmega16U2 sirve de interfaz de comunicaciones entre el puerto USB del computador y el microcontrolador principal ATmega2560. Esto permite velocidades de transferencia mayores y más memoria disponible para las aplicaciones. No son necesarios drivers para los sistemas operativos de Linux o Mac; sí sigue siendo necesario el archivo *.inf para Windows, que viene incluido en el IDE de Arduino. Igual que en las revisiones anteriores de Arduino, al conectar la placa al puerto USB del computador, el Arduino Mega se muestra como un dispositivo USB más (similar a un teclado, ratón, joystick, etc.)

El Arduino Mega 2560 R3 está diseñado para los proyectos más complejos. Con 54 pines de E/S digitales, 16 entradas analógicas y un espacio más grande de memoria, es una de las placas que más opciones y posibilidades ofrece; está recomendada para impresoras 3D y proyectos de robótica.

El aspecto general de la placa es idéntico al de revisiones anteriores y funciona perfectamente con todos los shields antiguos. Sin embargo, esta nueva revisión dispone de algunos pines extra. Los pines analógicos SDA y SCL han sido desplazados cerca del pin AREF y se han añadido 2 nuevos terminales a continuación del pin RESET, uno de los cuales permite que los shields se adapten al voltaje suministrado por la placa.

Arduino no ha realizado una publicación de la datasheet del Arduino Mega; en el sitio oficial se puede encontrar información técnica en inglés, mientras que en otras páginas web se puede hallar información con algunas características y especificaciones del Arduino Mega. Nosotros recomendamos descargar la datasheet del ATmega2560, que se puede encontrar fácilmente en internet, y es de suma utilidad para los diseñadores y programadores. El ATmega2560 es el microcontrolador principal que se encuentra montado en el Arduino Mega.

El precio de venta al público del Arduino Mega depende del origen de la tarjeta; el Arduino Mega original (hecho en Italia) tiene un precio aproximadamente de $58, mientras que las tarjetas de imitación o tarjetas genéricas del Arduino Mega, fabricadas en China, tienen un precio aproximadamente de $20. Estos precios únicamente son de referencia y varían dependiendo de la tienda o almacén donde se adquiera esta tarjeta Arduino y están vigentes en el mes de junio de 2018 en el Ecuador. Aquí, en tecmikro, puedes encontrar el Arduino Mega disponible con cable o sin cable USB al precio indicado más arriba en esta misma página.

Existe una variante conocida como Arduino Mega ADK que tiene las mismas características que la tarjeta Arduino Mega, pero está especialmente diseñada para funcionar con Android. El Arduino Mega ADK es una placa de microcontrolador basada en el ATmega2560. Tiene una interfaz de host USB para conectarse con teléfonos Android, a través del circuito integrado MAX3421E. Tiene 54 pines digitales de entrada / salida (de los cuales 15 se pueden usar como salidas PWM), 16 entradas analógicas, 4 UART (puertos serie de hardware), un oscilador de cristal de 16 MHz, una conexión USB, un conector de alimentación, un conector ICSP, y un botón de reinicio.

Características y Especificaciones

54 pines digitales de E/S (de los cuales 15 se pueden utilizar como salidas PWM)
16 entradas analógicas
4 UARTs (puertos seriales)
Velocidad del reloj (oscilador) 16MHz
Una conexión USB
Un conector de alimentación
Un conector ICSP
Un botón de reinicio (reset)
Microcontrolador ATmega2560
Voltaje de funcionamiento 5V
Voltaje de entrada (recomendado) 7-12VCD
Voltaje de entrada (límite) 6-20V
Corriente continua por pin E/S 20mA
Corriente de los pines de 3.3V 50 mA
LED incorporado en el pin 13
Circuito de RESET más fuerte
Memoria Flash de 256KB para almacenar el código, de los cuales 8KB son utilizados por el gestor de arranque (bootloader)
SRAM 8KB
EEPROM 4KB (que se puede leer y escribir con la biblioteca EEPROM)
Longitud: 102mm
Ancho: 53mm
Peso: 37g (sin cable) 

Dimensiones y compatibilidad con los shields

La longitud y el ancho máximo de la placa de circuito impreso del Arduino Mega 2560 R3 es de 102mm y 54mm respectivamente, con el conector USB y el conector de alimentación extendiéndose más allá de la longitud anterior. Cuatro orificios para tornillos permiten que la placa se pueda montar en una superficie o caja. Tenga en cuenta que la distancia entre los pines digitales 7 y 8 es de 0.16" (no es un múltiplo par del espaciado de 0.1" de los otros pines).

El Arduino Mega 2560 tiene caracteristicas para ser compatible con la mayoría de los shields o escudos diseñados para el Arduino Uno, Arduino Diecimila o Duemilanove. Los pines digitales 0 a 13 (y los pines adyacentes AREF y GND), las entradas analógicas 0 a 5, la regleta de alimentación POWER y el conector ICSP están todos en ubicaciones equivalentes. Además, el UART principal (puerto serie) está ubicado en los mismos pines (0 y 1), al igual que las interrupciones externas 0 y 1 (pines 2 y 3, respectivamente). El SPI está disponible a través del conector ICSP en las placas Arduino Mega 2560, Duemilanove y Diecimila. Tenga en cuenta que el I2C no está ubicado en los mismos pines en la placa Arduino Mega 2560 (20 y 21) que las placas Duemilanove / Diecimila (entradas analógicas 4 y 5).

Caracteristicas fisicas del Arduino Mega 2560 R3

Programación

La placa Arduino Mega 2560 R3 se puede programar con el software Arduino (IDE). El ATmega2560 en el Aduino Mega 2560 viene preprogramado con un gestor de arranque (bootloader) que le permite cargar un nuevo código sin el uso de un programador externo. También puede omitir el gestor de arranque y programar el microcontrolador a través del conector ICSP (Programación Serial en el Circuito) usando un Arduino ISP o similar (por ejemplo, un programador de microcontroladores Atmel).

Esquema eléctrico

Este circuito eléctrico del Arduino Mega (en formato PDF) ofrece todos los detalles constructivos y puede ser utilizado para verificar todas las conexiones y elementos existentes, especialmente para determinar cuáles son las posibilidades y limitaciones de cada uno de los pines disponibles, información muy útil para los diseñadores de proyectos.

Fuentes de alimentación

El Arduino Mega 2560 puede alimentarse a través de la conexión USB o con una fuente de alimentación externa. La fuente de poder se selecciona automáticamente. Advertencia: No conectar 2 o más fuentes de alimentación simultáneamente, esto puede dañar su tarjeta y las propias fuentes.

El Arduino Mega 2560 incorpora un fusible (con reset automático) de protección del puerto USB de su computadora contra cortocircuitos y sobrecorrientes. Aunque la mayoría de las computadoras proporcionan su propia protección interna, el fusible añade una capa adicional de protección. Si se consume más de 500mA del puerto USB, el fusible interrumpirá automáticamente la conexión hasta que se elimine el cortocircuito o la sobrecarga.

La alimentación externa (no USB) puede provenir de un adaptador AC/DC o una batería. El adaptador se puede conectar con un plug (positivo en el centro) de 2.1mm en el jack de alimentación de la placa. Los cables de una batería se pueden insertar en los pines GND y Vin del conector POWER.

La placa puede operar con un suministro externo de 6 a 20VCD. Sin embargo, si se alimenta con menos de 7V, el pin de 5V puede proporcionar menos de 5V y la placa puede volverse inestable. Si usa más de 12V, el regulador de voltaje incorporado puede sobrecalentarse y dañar la placa. Estas caracteristicas hacen que el rango recomendado sea de 7 a 12V.

Los pines de alimentación son los siguientes:

Vin: El voltaje de entrada a la placa cuando está usando una fuente de alimentación externa (distinta de los 5V de la conexión USB u otra fuente de alimentación regulada de 5V). Puede ingresar voltaje a través de este pin o, si suministra voltaje a través del conector de alimentación, acceder a este voltaje a través de este pin.

5V: Este pin produce una salida de voltaje regulado de 5V a partir del regulador incorporado. La placa se puede alimentar ya sea con un adaptador o bateria a través del jack de DC (7-12 V), el conector USB (5 V) o el pin Vin de la placa (7-12 V). El ingreso de voltaje a través de los pines de 5V o 3.3V no toma en cuenta el regulador y puede dañar su tarjeta. Esta práctica no es recomendable.

3.3V: Una fuente de 3.3V generada por el regulador a bordo. La salida máxima de corriente es de 50mA.

GND: Pines de tierra

IOREF: Este pin en la placa proporciona la referencia de voltaje con la que opera el microcontrolador. Un shield correctamente configurado puede leer el voltaje del pin IOREF y seleccionar la fuente de alimentación apropiada o habilitar conversores de voltaje para trabajar con 5V o 3.3V.

Comunicación

La placa Arduino Mega 2560 tiene varias facilidades para comunicarse con una computadora, otra placa u otros microcontroladores. El ATmega2560 proporciona cuatro módulos UART de hardware para comunicación serie TTL (5V). Un ATmega16U2 en la placa canaliza uno de estos módulos a través del puerto USB y proporciona un puerto COM virtual para el software en la computadora (las máquinas Windows necesitarán un archivo .inf, pero las máquinas OSX y Linux reconocerán la placa como un puerto COM de forma automática). El software Arduino (IDE) incluye un Monitor Serie que permite enviar datos de texto simples hacia y desde la tarjeta Arduino. Los LEDs RX y TX incorporados parpadearán cuando los datos se transmitan a través del chip ATmega16U2 y la conexión USB a la computadora (pero no para comunicación serial en los pines 0 y 1).

La biblioteca (o librería) SoftwareSerial permite la comunicación serial en cualquiera de los pines digitales del Arduino Mega 2560.

El Arduino Mega 2560 también es compatible con la comunicación TWI y SPI. El software Arduino (IDE) incluye una biblioteca Wire para simplificar el uso del bus TWI; ver la documentación para más detalles. Para la comunicación SPI, use la biblioteca SPI.

Reset automático (software)

En lugar de requerir una pulsación física del botón de reinicio (RESET) antes de cargar un programa, el Arduino Mega 2560 está diseñado de forma tal que permite su reinicio mediante el software que se ejecuta en la computadora al cual se conecta. Una de las líneas de control (DTR) del ATmega16U2 está conectada a la línea de reset del ATmega2560 a través de un condensador de 100 nF; cuando esta línea se lleva a nivel BAJO se produce el reset del ATmega2560. El software Arduino (IDE) aprovecha estas caracteristicas para cargar el código simplemente haciendo clic en el botón Cargar (Upload) en el entorno Arduino. Esto significa que el gestor de arranque puede tener un tiempo de espera más corto, dado que el descenso de la línea DTR puede coordinarse bien con el inicio de la carga.

Esta configuración tiene otras implicaciones. Cuando la placa Arduino Mega 2560 está conectada a una computadora que ejecuta MacOS X o Linux, se reinicia cada vez que se realiza 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 está ejecutando en el ATMega2560. Dado que está programado para ignorar datos inconsistentes (es decir, cualquier cosa distinta de una carga de código nuevo), el bootloader interceptará los primeros bytes de datos enviados a la placa después de que se abra una conexión. Si la placa Arduino Mega ejecuta algún programa que recibe datos cuando arranca por primera vez, asegúrese de que el software con el que se comunica espera por lo menos un segundo después de abrir la conexión (hasta que finalice la ejecución del bootloader) y antes de enviar esta información.

La placa Arduino Mega 2560 contiene una pista de circuito impreso que se puede cortar para desactivar el reinicio automático. Los dos pads que se ubican en esta línea se pueden soldar juntos nuevamente para volver a habilitarlo; está etiquetado como RESET-EN. También puede desactivar el restablecimiento automático conectando una resistencia de 110 ohmios desde 5V a la línea de reset.

Pinout

Cada uno de los 54 pines digitales del Arduino Mega se puede usar como entrada o salida, usando las funciones pinMode(), digitalWrite() y digitalRead(); estos pines operan a 5V. Cada pin puede proporcionar o recibir 20mA según las condiciones de funcionamiento recomendadas y tiene una resistencia interna de pull-up (desconectada por defecto) de 20-50k. Un máximo de 40mA es el valor que no debe excederse para evitar daños permanentes al microcontrolador. La siguiente imagen muestra los pines del Arduino Mega agrupados de acuerdo a las distintas funciones que pueden cumplir. 

Pines del Arduino Mega 2560 R3

Además, algunos pines tienen funciones especializadas:

Serial 0: 0 (RX) y 1 (TX); Serial 1: 19 (RX) y 18 (TX); Serial 2: 17 (RX) y 16 (TX); Serial 3: 15 (RX) y 14 (TX). Se usan para recibir (RX) y transmitir (TX) datos TTL en serie. Los pines 0 y 1 también están conectados a los pines correspondientes del chip ATmega16U2 (conversor serial de USB a TTL).

PWM: 2 a 13 y 44 a 46. Proporcionan salida PWM de 8 bits con la función analogWrite().

SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). Estos pines soportan la comunicación SPI utilizando la biblioteca SPI. Los pines SPI también se hallan en el conector ICSP, que es físicamente compatible con el Arduino/Genuino Uno y los antiguos Duemilanove y Diecimila.

LED: 13. Hay un LED integrado conectado al pin digital 13. Cuando el pin tiene un valor ALTO, el LED está encendido, cuando el pin está BAJO, está apagado.

TWI: 20 (SDA) y 21 (SCL). Soporte de comunicación TWI utilizando la biblioteca Wire. Tenga en cuenta que estos pines no se encuentran en la misma ubicación que los pines TWI en las antiguas placas Duemilanove o Diecimila.

El Arduino Mega 2560 tiene 16 entradas analógicas, cada una de las cuales proporciona 10 bits de resolución (es decir, 1024 valores diferentes). Por defecto, miden desde tierra a 5V, aunque es posible cambiar el extremo superior de su rango usando el pin AREF y la función analogReference().

Hay otros 2 pines en esta tarjeta:

AREF: Voltaje de referencia para las entradas analógicas. Usado con analogReference().

RESET: Conecte este pin a nivel BAJO para reiniciar el microcontrolador. Normalmente se usa para agregar un botón de reinicio a los shields que bloquean el acceso al botón que está en la tarjeta.

Pines del Arduino Mega 2560 R3

Interrupciones

Las interrupciones son eventos que hacen que el microcontrolador Atmega2560 deje a un lado su actividad normal y pase a realizar una actividad secundaria temporalmente; al finalizar esta actividad secundaria reanuda la ejecución de la tarea principal, en el punto donde fue interrumpido. El Arduino Mega tiene varias fuentes de interrupción, algunas son internas mientras que otras son externas. Todos los detalles acerca de las interrupciones se pueden encontrar en la hoja de datos del Atmega2560.

Pines de las interrupciones externas: 2 (interrupción 0), 3 (interrupción 1), 18 (interrupción 5), 19 (interrupción 4), 20 (interrupción 3) y 21 (interrupción 2). Estos pines se pueden configurar para activar una interrupción en un nivel bajo, un borde ascendente o descendente, o un cambio en el nivel. Vea la función attachInterrupt() para más detalles.