Primeros pasos con la placa Arduino Mega 2560, para que sirve
Comenzando con la Arduino Mega 2560
El Mega 2560 es una actualización del Mega de Arduino, al que sustituye.
La Mega2560 se diferencia de todas las tarjetas anteriores en que no utiliza el chip controlador FTDI USB-a-serie. En su lugar, cuenta con el ATmega16U2 (ATmega8U2 en las tarjetas de revisión 1 y revisión 2) programado como un convertidor USB-a-serie.
La revisión 2 de la placa Mega2560 tiene una resistencia que tira de la línea 8U2 HWB a tierra, facilitando la puesta en modo DFU. La revisión 3 de la placa tiene las siguientes novedades:
- 1.0 pinout: se han añadido los pines SDA y SCL que están cerca del pin AREF y otros dos nuevos pines colocados cerca del pin RESET, el IOREF que permiten que los escudos se adapten al voltaje proporcionado por la placa. En el futuro, los escudos serán compatibles tanto con la placa que utiliza el AVR, que opera con 5V como con el Arduino Due que opera con 3.3V. El segundo es un pin no conectado, que se reserva para futuros propósitos.
- Un circuito de RESET más fuerte.
- Atmega 16U2 sustituye al 8U2.
Características de Arduino Mega 2560 R3:
- Microcontrolador: ATmega2560
- Voltaje Operativo: 5V
- Voltaje de Entrada: 7-12V
- Voltaje de Entrada(límites): 6-20V
- Pines digitales de Entrada/Salida: 54 (de los cuales 15 proveen salida PWM)
- Pines análogos de entrada: 16
- Corriente DC por cada Pin Entrada/Salida: 40 mA
- Corriente DC entregada en el Pin 3.3V: 50 mA
- Memoria Flash: 256 KB (8KB usados por el bootloader)
- SRAM: 8KB
- EEPROM: 4KB
- Clock Speed: 16 MHz
Donde comprar la Arduino Mega
- Arduino Mega 2560 está diseñada para tus proyectos más ambiciosos que requieren pines adicionales...
- Basado en el microcontrolador AVR de 8-bit ATmega2560, tiene 54 pines I/O digitales, 16 entradas...
- Ideal para: impresiones en 3D, robótica CNC
La longitud y el ancho máximos de la placa de circuito impreso Mega2560 son de 4 y 2,1 pulgadas respectivamente, con el conector USB y el enchufe de alimentación extendidos más allá de la dimensión anterior. Tres orificios para tornillos permiten fijar la placa a una superficie o caja. Ten en cuenta que la distancia entre los pines digitales 7 y 8 es de 160 milésimas de pulgada (0,16″), ni siquiera un múltiplo de la distancia de 100 milésimas de pulgada (100 milésimas de pulgada) de los otros pines.
El Mega2560 está diseñado para ser compatible con la mayoría de los escudos diseñados para Uno, Diecimila o Duemilanove. Los pines digitales 0 a 13 (y los pines adyacentes AREF y GND), las entradas analógicas 0 a 5, el cabezal de potencia y el cabezal ICSP se encuentran todos en ubicaciones equivalentes. Además, el UART principal (puerto serie) está situado en los mismos pines (0 y 1), al igual que las interrupciones externas 0 y 1 (pines 2 y 3 respectivamente). SPI está disponible a través del cabezal ICSP tanto en el Mega2560 como en el Duemilanove / Diecimila. Tenga en cuenta que el I2C no se encuentra en los mismos pines de la Mega (20 y 21) que el Duemilanove / Diecimila (entradas analógicas 4 y 5).
Potencia
El Arduino Mega puede ser alimentado a través de la conexión USB o con una fuente de alimentación externa. La fuente de alimentación se selecciona automáticamente.
La alimentación externa (no USB) puede provenir de un adaptador de CA a CC (de pared) o de una batería. El adaptador se puede conectar conectando un enchufe positivo central de 2,1 mm en el conector de alimentación de la tarjeta. Los cables de una batería se pueden insertar en las clavijas Gnd y Vin del conector POWER.
La tarjeta puede funcionar con una alimentación externa de 6 a 15 voltios. Sin embargo, si se suministra con menos de 7V, la clavija de 5V puede suministrar menos de cinco voltios y la placa puede ser inestable. Si se utilizan más de 12V, el regulador de voltaje puede sobrecalentarse y dañar la placa. El rango recomendado es de 7 a 12 voltios.
Los pines de potencia son los siguientes:
- VIN. El voltaje de entrada a la placa Arduino cuando está usando 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 tensión a través de esta clavija o, si lo hace a través de la toma de corriente, acceder a ella a través de esta clavija.
- 5V. Esta clavija emite una señal regulada de 5V desde el regulador de la tarjeta. La tarjeta puede alimentarse ya sea desde el conector de alimentación de CC (7 – 12 V), el conector USB (5 V) o la clavija VIN de la tarjeta (7-12 V). La alimentación de tensión a través de las clavijas de 5V o 3,3V puentea el regulador y puede dañar la placa. No lo aconsejamos.
- 3V3. Una alimentación 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 de la placa Arduino proporciona la referencia de voltaje con la que opera el microcontrolador. Una pantalla correctamente configurada puede leer el voltaje de las clavijas de IOREF y seleccionar la fuente de alimentación apropiada o habilitar traductores de voltaje en las salidas para trabajar con los 5V o 3.3V.
Memoria de la Arduino Mega
El ATmega2560 tiene 256 KB de memoria flash para almacenar código (de los cuales 8 KB se utilizan para el cargador de arranque), 8 KB de SRAM y 4 KB de EEPROM (que se pueden leer y escribir con la biblioteca EEPROM).
Comunicación en Arduino Mega
El Arduino Mega2560 tiene un número de facilidades para comunicarse con un ordenador, otro Arduino, u otros microcontroladores. El ATmega2560 proporciona cuatro UART de hardware para la comunicación serie TTL (5V). Un ATmega16U2 (ATmega 8U2 en las tarjetas de revisión 1 y 2) en la tarjeta canaliza una de ellas a través de USB y proporciona un puerto de comunicación virtual al software del ordenador (las máquinas Windows necesitarán un archivo.inf, pero las máquinas OSX y Linux reconocerán la tarjeta como un puerto COM automáticamente. El software de Arduino incluye un monitor serie que permite enviar datos textuales simples desde y hacia la placa. Los LEDs RX y TX de la tarjeta parpadearán cuando los datos se transmitan a través del chip ATmega8U2/ATmega16U2 y la conexión USB al ordenador (pero no para la comunicación serie en los pines 0 y 1).
Una biblioteca SoftwareSerial permite la comunicación serie en cualquiera de los pines digitales del Mega2560.
El ATmega2560 también soporta la comunicación TWI y SPI. El software de Arduino incluye una librería Wire para simplificar el uso del bus TWI; para la comunicación SPI, utilice la librería SPI.
Primeros pasos.
La Arduino Mega es junto a la Arduino Uno una de las placas más usadas en los proyectos de Hardware Libre, siendo esta muy versátil y sobretodo más potente que la Uno para según que tipo de proyectos. En esta guía te vamos a enseñar cómo usar tu Arduino Mega 2560 y cómo subir tu primer programa o sketch a la placa.
Primero tienes que conectar tu tarjeta Arduino a tu ordenador, necesitas un cable USB (enchufe a enchufe B). El cable USB le proporcionará energía y te permitirá programar la tarjeta.
Conecta el enchufe B del cable USB al Arduino Mega y el enchufe A al PC. Ahora debería encenderse el LED verde de encendido (etiquetado como ON).
Para subir un programa, debes usar Arduino IDE. Elije la versión correcta para tu sistema operativo, descárgala e instálala.
Abre tu Arduino IDE, elige Arduino Mega 2560 en el menú Herramientas > Tarjeta del IDE, y selecciona el puerto serie correcto en el menú Herramientas > Puerto serie. Ahora elije un ejemplo del menú Archivo > Ejemplos y cárgalo, haciendo clic en el botón correspondiente.
Programación
El Arduino Mega puede ser programado con el software de Arduino.
El ATmega2560 en el Arduino Mega viene pregrabado con un cargador de arranque que te permite subir nuevo código a él sin el uso de un programador de hardware externo. Se comunica utilizando el protocolo original STK500.
También puedes pasar por alto el gestor de arranque y programar el microcontrolador a través de la cabecera ICSP (In-Circuit Serial Programming) usando Arduino ISP o similar;
El código fuente del firmware de ATmega16U2 (u 8U2 en las placas rev1 y rev2) está disponible en el repositorio de Arduino. El ATmega16U2/8U2 se carga con un bootloader DFU, que puede ser activado por:
- En tarjetas Rev1: conectar el puente de soldadura en la parte posterior de la tarjeta (cerca del mapa de Italia) y luego reiniciar el 8U2.
- En tarjetas Rev2 o posteriores: hay una resistencia que tira de la línea HWB 8U2/16U2 a tierra, lo que facilita su puesta en modo DFU. Luego puede usar el software FLIP de Atmel (Windows) o el programador DFU (Mac OS X y Linux) para cargar un nuevo firmware. O puede usar el encabezado del ISP con un programador externo (sobreescribiendo el bootloader del DFU).
Restablecimiento automático (software)
En lugar de requerir una pulsación física del botón de reinicio antes de subir un archivo, el Arduino Mega2560 está diseñado de tal forma que permite reiniciarlo mediante un software que se ejecuta en un ordenador conectado. Una de las líneas de control de flujo (DTR) del ATmega8U2 está conectada a la línea de rearme del ATmega2560 a través de un condensador de 100 nanofarades. Cuando esta línea se afirma (se toma bajo), la línea de reinicio cae lo suficiente para reiniciar el chip. El software de Arduino utiliza esta capacidad para permitirte cargar código simplemente pulsando el botón de carga en el entorno de Arduino. Esto significa que el cargador de arranque puede tener un tiempo de espera más corto, ya que el descenso de DTR puede estar bien coordinado con el inicio de la carga.
Esta configuración tiene otras implicaciones. Cuando el Mega2560 se conecta a un ordenador que ejecuta Mac OS X o Linux, se reinicia cada vez que se realiza una conexión con él desde el software (a través de USB). Durante el siguiente medio segundo más o menos, el cargador de arranque se ejecuta en el Mega2560. Mientras está programado para ignorar 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. Si un sketch que se ejecuta en la placa recibe una configuración única u otros datos cuando se inicia por primera vez, asegúrese de que el software con el que se comunica espera un segundo después de abrir la conexión y antes de enviar estos datos.
El Mega2560 contiene una traza que se puede cortar para desactivar el restablecimiento automático. Las almohadillas de cada lado del trazo se pueden soldar entre sí para volver a activarlo. Tiene la etiqueta «RESET-EN». También puede desactivar el restablecimiento automático conectando una resistencia de 110 ohmios de 5V a la línea de restablecimiento.
Protección de sobreintensidad USB
El Arduino Mega2560 tiene un polifusible reseteable que protege los puertos USB de tu ordenador de cortocircuitos y sobrecorrientes. Aunque la mayoría de los ordenadores proporcionan su propia protección interna, el fusible proporciona una capa adicional de protección. Si se aplican más de 500 mA al puerto USB, el fusible interrumpirá automáticamente la conexión hasta que se elimine el cortocircuito o la sobrecarga.
¿Por qué elegir Arduino Mega para tu proyecto?
Cuando hay placas más baratas disponibles, ¿por qué elegir Arduino Mega? La razón principal detrás de esto son las características adicionales que están incorporadas en esta placa. La primera característica es el gran diseño del sistema de E/S con 16 transductores analógicos incorporados y 54 transductores digitales que admiten USART y otros modos de comunicación. En segundo lugar, tiene incorporado RTC y otras características como comparador analógico, temporizador avanzado, interrupción para el mecanismo de activación del controlador para ahorrar más energía y velocidad rápida con un reloj de cristal de 16 Mhz para obtener 16 MIBS. Tiene más de 5 pines para que Vcc y Gnd conecten otros dispositivos a Arduino Mega.
Otras características incluyen soporte JTAG para programación, depuración y resolución de problemas. Con una gran memoria FLASH y SRAM, esta placa puede manejar grandes programas de sistema con facilidad. También es compatible con los diferentes tipos de tarjetas como señal de alto nivel (5V) o señal de bajo nivel (3.3V) con pin de referencia de E/S.
El bloqueo y la vigilancia ayudan a que el sistema sea más fiable y robusto. Soporta ICSP así como la programación de microcontroladores USB con PC.
El Arduino Mega 2560 es un reemplazo del antiguo Arduino Mega. Normalmente se utiliza para proyectos muy complejos.
Diferencias con las tarjetas basadas en ATMEGA
El Arduino Mega 2560 es una tarjeta de microcontrolador basada en el ATmega2560. Puedes encontrar la hoja de datos ATmega2560 siguiendo este enlace. Cuenta con 54 pines digitales de entrada/salida (de los cuales 15 pueden ser utilizados como salidas PWM), 16 entradas analógicas, 4 UARTs (puertos serie hardware), un oscilador de cristal de 16 MHz, una conexión USB, una toma de alimentación, un cabezal ICSP y un botón de reset. Contiene todo lo necesario para soportar el microcontrolador. En general, puedes programar y usar el Mega como lo harías con otras placas Arduino.
Voltaje
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 alimentación se selecciona automáticamente.
La alimentación externa (no USB) puede provenir de un adaptador AC-DC (de pared) o de una batería. El adaptador se puede conectar conectando un enchufe positivo central de 2,1 mm en el enchufe de alimentación de la tarjeta. Los cables de una batería se pueden insertar en los conectores GND y Vin del conector POWER.
La tarjeta puede funcionar con una alimentación externa de 6 a 20 voltios. Sin embargo, si se suministra con menos de 7V, el pin de 5V puede suministrar menos de cinco voltios y la placa puede volverse inestable. Si utiliza más de 12V, el regulador de voltaje puede recalentarse y dañar la tarjeta. El rango recomendado es de 7 a 12 voltios.
Advertencia:
El Arduino Mega 2560 tiene un polifusor reiniciable que protege los puertos USB del ordenador de cortocircuitos y sobrecorrientes. Aunque la mayoría de los ordenadores proporcionan su propia protección interna, el fusible proporciona una capa adicional de protección. Si se aplican más de 500 mA al puerto USB, el fusible romperá automáticamente la conexión hasta que se quite la sobrecarga o cortocircuito.
Especificaciones de la Arduino Mega 2560
Como instalar drivers de la Arduino Mega 2560
OSX
La primera vez que conectes un Arduino Mega a un equipo un Mac, se iniciará el «Keyboard Setup Assistant». No hay nada que configurar con la placa , por lo que puede cerrar este diálogo haciendo clic en el botón rojo en la parte superior izquierda de la ventana.
Windows
Si anteriormente has instalado el Arduino IDE, ya tienes los controladores instalados.
En cambio, si aún no has instalado Arduino IDE, descarga la versión Windows del software Arduino de la página oficial aquí.
Cuando finalice la descarga, inicia el archivo para instalar el software y los controladores.
Si has descargado la versión. zip del IDE, descomprime el archivo descargado. Asegúrate de conservar la estructura de carpetas.
Ahora los controladores serán descargados e instalados desde Internet, directamente desde Windows. Si tienes problemas, puedes encontrar la carpeta «drivers» dentro del archivo descomprimido, para la instalación manual.
Linux
No hay necesidad de instalar drivers para Ubuntu 10.0.4. En algunos ordenadores, es necesario configurar permisos de usuario y algunas reglas udev. Puede encontrar información detallada sobre cómo lograrlo en esta página.
Cómo programar la Arduino Mega 2560
El proceso de carga en el Arduino Mega 2560 funciona igual que otras tarjetas desde el punto de vista del usuario.
Aquí se muestran los pasos utilizados para cargar un sketch:
- Conectar la tarjeta al ordenador conectando el cable USB al puerto USB.
- Abrir el IDE Arduino.
- En el menú «Herramientas» eligir «Puerto serie» y seleccionar el puerto serie del Mega 2560.
- En el menú «Herramientas > Tarjetas» seleccionar «Arduino Mega o Mega 2560».
- Ya estás listo para subir tu código a tu Arduino Mega 2560.
Y ahora pásate por este enlace de proyectos realizados con Arduino Mega para inspirarte.
Arduino Mega Pinout
Entradas y salidas
Cada uno de los 54 pines digitales del Mega puede ser usado como entrada o salida, usando las funciones pinMode(), digitalWrite(), y digitalRead(). Funcionan a 5 voltios. Cada clavija puede proporcionar o recibir un máximo de 40 mA y tiene una resistencia pull-up interna (desconectada por defecto) de 20-50 kOhms. Además, algunos pines tienen funciones especializadas:
- Serie 0: (RX) y 1 (TX);
- Serie 1: 19 (RX) y 18 (TX);
- Serie 2: 17 (RX) y 16 (TX);
- Serie 3: 15 (RX) y 14 (TX). Se utiliza para recibir (RX) y transmitir (TX) datos en serie TTL. Los pines 0 y 1 también están conectados a los pines correspondientes del chip serie ATmega16U2 USB-to-TTL.
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 pueden configurarse para activar una interrupción en un valor bajo, un flanco ascendente o descendente, o un cambio de valor. Vea la función attachInterrupt() para más detalles. - PWM: 2 a 13 y 44 a 46. Proporciona 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 encuentran en el cabezal ICSP, que es físicamente compatible con Uno, Duemilanove y Diecimila.
- LED: 13. Hay un LED integrado conectado al pin digital 13. Cuando la clavija es de valor ALTO, el LED se enciende, cuando la clavija es BAJA, se apaga.
- TWI: 20 (SDA) y 21 (SCL). Soporta la comunicación TWI usando la biblioteca Wire. Tenga en cuenta que estos pines no están en la misma ubicación que los pines TWI en el Duemilanove o Diecimila.
El Mega2560 tiene 16 entradas analógicas, cada una de las cuales proporciona 10 bits de resolución (es decir, 1024 valores diferentes). Por defecto miden de tierra a 5 voltios, aunque es posible cambiar el extremo superior de su rango usando la función AREF pin y analogReference().
Hay un par de pins más en el tablero:
- AREF. Tensión de referencia para las entradas analógicas. Se utiliza con analogReference().
- Reset. Lleve esta línea a un nivel BAJO para reiniciar el microcontrolador. Típicamente se usa para añadir un botón de reinicio a los escudos que bloquean el que está en la placa.
Tienes toda la información sobre el mapa de PinOut de la Arduino Mega 2560 en la misma web de Arduino siguiendo este enlace.
Debe estar conectado para enviar un comentario.