Conhecendo o Arduino Mega 2560

O que é Arduino Mega

O Arduino Mega é um modelo que veio para atender aos usuários com projetos que exigem mais memória e/ou maior número de pinos que o Arduino Uno e outros conseguem oferecer. A placa Mega é baseada no ATmega2560, um microcontrolador de 8bits com 256KB de memória flash e 8KB de SRAM. Juntamente com 54 pinos digitais e 16 pinos que podem ser usados como entradas analógicas, o Mega é uma excelente opção se o seu projeto exige numerosos sensores ou atuadores.

Especificações do Arduino Mega

As principais características do Arduino Mega são:

  • Microcontrolador: ATmega2560 (Arquitetura AVR de 8bits).
  • Clock: 16 MHz.
  • Memória flash: 256 KB(dos quais 8 KB usados ​​pelo gerenciador de inicialização).
  • SRAM: 8 KB.
  • EEPROM: 4 KB.
  • Tensão operacional: 5V.
  • Tensão de entrada (recomendado) 7-12V.
  • Tensão de entrada (limite): 6-20V.
  • 54 Pinos de E/S digitais.
  • 16 Pinos de entrada analógicas.
  • 4 portas seriais.
  • 6 pinos para interrupção externa.

A imagem abaixo temos uma visão geral da pinagem do Arduino Mega.

Arduino-Mega-pinagem

Figura 1 – Pinagem do Arduino Mega.

Entradas/Saídas Digitais

São pinos que podem funcionar como entrada ou saída digital. O níveis lógicos são de 0V e  5V nesses pinos. As funções pinMode(), digitalRead(), e digitalWrite() são usadas para configurar e utilizar esses pinos. Os pinos disponíveis no Mega para serem usados como portas digitais vão de 0 a 54. Segundo o site do Arduino os pinos de entrada analógica podem ser também usados como pinos digitais, referidos como A0, A1, etc. As placas Arduino Nano, Pro Mini, e Mini são exceções a essa regra porque possuem dois pinos que são exclusivamente entradas analógicas(A6 e A7).

Entradas analógicas

São pinos que podem ser usados para leitura niveis de tensão analogicos. Geralmente essa tensão de entrada pode variar de 0V a 5V. O valor de referência – mais especificamente o valor máximo do intervalo de entrada, pode ser alterada via função analogReference(). Para os modelos que usam microcontroladores AVR, por exemplo o Arduino Uno e Mega, a função analogReference() pode ser usada com os seguintes parâmetros.

  • DEFAULT: a referência analógica padrão de 5 volts (em placas Arduino de 5V) ou 3.3 volts (em placas Arduino de 3.3V)
  • INTERNAL: uma referência interna, igual a 1.1 volts no ATmega168 ou ATmega328P e 2.56 volts no ATmega8 (Não disponível no Arduino Mega)
  • INTERNAL1V1: uma referência interna de 1.1V (apenas Arduino Mega)
  • INTERNAL2V56: uma referência interna de 2.56V (apenas Arduino Mega)
  • EXTERNAL: a tensão aplicada ao pino AREF (0 a 5V apenas) é usada como referência.

O acesso a essas portas é feito exatamente da mesma forma que é feita com o arduino Uno através da função analogRead() do framework arduino, que retornará um valor inteiro de 10 bits entre 0 e 1023. No arduino Mega as entradas analogicas vão de A0 até A15.

Pinos com Interrupções

São pinos que podem disparar eventos de interrupções. Esses eventos provocam uma “Interrupção” da rotina que o processador está executando e passa a executar uma rotina específica para aquele evento que provocou a interrupção. Logo após concluída a tarefa o programa retornará do ponto que havia sido interrompido. Você pode configurar interrupção   nos pinos 2, 3, 18, 19, 20, 21 do Mega usando as funções attachInterrupt() e detachInterrupt() para habilitar e desabilitar respectivamente a interrupção nesses pinos.

Memória EEPROM

A memória EEPROM (Electrically-Erasable Programmable Read-Only Memory) ou, Memória Somente de Leitura Programável Apagável Eletricamente.É um tipo de memória muito útil quando precisamos salvar configurações, dados ou senhas de forma persistente no Arduino sem a necessidade de regrava-lo pela Arduino IDE. O Mega tem 4k de EEPROM livres para o usuário salvar dados. As funções para manipular essa memória estão disponíveis na biblioteca EEPROM.h.

Comparação com Arduino UNO

O Modelo Mega comparado a um Uno por exemplo, possui 8 vezes mais memória flash assim como 4 vezes a memória RAM do modelo UNO. Entretanto o Mega é semelhante ao UNO em vários aspectos como por exemplo o clock de 16MHz e a tensão de operação. Um comparativo é mostrado na tabela abaixo.

Figura 2 – Comparativo entre Arduinos Uno e Mega.

Quando devemos utilizar o Arduino Mega

Já sabemos que as possibilidades que o Arduino Uno nos oferece são muitas, o Arduino Mega expande esse universo ainda mais possibilitando programas mais elaborados sejam implementados. Um exemplo de produto onde o modelo Mega pode ser encontrado é o cubetto.

Figura 3 – Robô Cubetto.

O cubetto é um exemplo do uso do Arduino Mega em robótica educativa. A proposta que crianças possam aprender lógica de programação através de uma experiência de aprendizado tátil. O cubetto é constituído de duas partes principais, um pequeno robô móvel e uma mesa de programação, ambas usam Arduino e são conectadas por radiofrequência.

Figura 4 – Mesa de programação e Cubeto.

A mesa de programação tem 16 lacunas onde a criança pode encaixar peças de instrução correspondentes a ações que o robô pode executar em sequência. Cada peça de instrução possui um resistor específico e ao ser encaixada em uma lacuna é reconhecido pela mesa como uma novo comando.

Figura 5 – Visão interna dos elementos do cubetto.

Isso é possível porque o resistor da peça encaixada forma um divisor de tensão com outro resistor presente na lacuna. A saída desse divisor é conectada a uma entrada analógica do Arduino Mega que faz o processamento e o comando correspondente ao robô. Mais detalhes do projeto ordem ser encontrados aqui.

Ressalvas sobre Shields

Muitas vezes um shield para arduino é uma ótima ferramenta para nos ajudar a concluir um projeto mais rapidamente. Por outro lado, se o projeto exigir mais do que o arduino Uno pode oferecer? O meu shield para Uno vai funcionar no mega? A resposta é, depende

O Mega tem portas SPI e I²C em pinos diferentes do arduino Uno. Então a regra geral é que shields que usem algumas destas duas portas não serão compatíveis com o Arduino Mega. Seguem abaixo alguns exemplos de shields compatíveis com o Arduino Mega.

Dedicados ao Mega:

Compatíveis com o Mega:

Bom por hoje é tudo. Se interessou pelo modelo Mega? Visite o site da loja e adquira o seu Arduino Mega hoje mesmo.

Yure Albuquerque

Graduando em Tecnologia Mecatrônica Industrial. Tenho experiência com Arduino e Raspberry Pi. Atualmente experimentando novas tecnologias como ESP32 e compartilhando no blog da Smart Kits.

Post navigation

1 Comentário

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Arduino Uno

Placa Arduino: Open Software e Open Hardware

Como usar o Módulo Joystick 5D Rocker JY50