Arduino Mega (descontinuado)

Algumas informações do Arduino Mega que foi descontinuado.

Este item foi descontinuado e substituído pelo Arduino Mega2560, por isso posto algumas informações ao seu respeito.

Geral

O Arduino Mega é uma placa de microcontrolador baseada no ATmega1280 (datasheet). Ele possui 54 pinos de entradas/saídas digitais, 16 entradas analógicas,4 UARTs (portas seriais de hardware), um oscilador de cristal de 16 MHz, uma conexão USB, uma entrada de alimentação e um botão de reset. Ele contém tudo o que é necessário para dar suporte ao microconrolador; basta conectar a um computador com um cabo USB ou a uma fonte de alimentação e já está pronto para começar. O mega é compatível com a maioria dos shields desenhados para o Arduino Duemilanove e para o Diecimila.

Esquema e referência de Design

Características

Microcontrolador ATmega1280
Voltagem de alimentação 5V
Voltagem de entrada (recomendada) 7-12V
Voltagem de entrada (limites) 6-20V
Pinos digitais I/O 54 (of which 14 provide PWM output)
Pinos de entrada analógica 16
Corrente contínua por pino I/O 40 mA
Corrente contínua para o pino 3.3V 50 mA
Memória Flash 128 KB of which 4 KB used by bootloader
SRAM 8 KB
EEPROM 4 KB
Velocidade de Clock 16 MHz

Alimentação

O Arduino Mega pode ser alimentado pela conexão USB ou com uma fonte externa. A entrada de alimentação é selecionada automaticamente.
Aliemtação externa (não USB) pode ser tanto de uma fonte como de baterias. A fonte pode ser conectada plugando um conector de 2,1mm, positivo no centro, na entrada de alimentação. Cabos vindos de uma bateria podem ser inseridos nos pinos terra (Gnd) e entrada de voltagem (Vin) do conector de energia.
A placa pode operar com alimentação externa entre 6 e 20 volts. No entanto, se menos de 7 volts forem fornecidos o pino de 5V pode fornecer menos de 5 volts e a placa pode ficar instável. Com mais de 12V o regulador de voltagem pode super-aquecer e danificar a placa. A faixa recomedável é de 7 a 12 volts.
Os pinos de alimetação são os seguintes:
  • VIN. A entrada de voltagem da placa Arduino quando se está usando alimentação externa (em oposicão aos 5 volts fornecidos pela conexão USB ou outra fonte de alimentação regulada) É possível fornecer alimetação através deste pino ou acessá-la desde ai se etiver alimentando pelo conector de alimentação.
  • 5V. Fornecimento de alimentacão regulada para o mcrocontrolador e outros componentes da placa.
  • 3V3. Uma alimentação de 3,3 vots gerada pelo chip FTDI. A corrente máxima é de 50 mA.
  • GND. Pinos terra.

Memória

ATmega1280 tem 128 KB de memória flash para armazenamento de código(dos quais 4KB são usados pelo bootloader), 8 KB de SRAM e 4 KB de EEPROM (que poder ser lidos e escritos com a biblioteca EEPROM).

Entrada e Saída

Cada um dos 54 pinos digitais do Mega pode ser usado como entrada ou saída, usando as funções de pinMode()digitalWrite(), e digitalRead(). Eles operam a 5 volts. Cada pino pode fornecer ou receber um máximo de 40 mA e possui um resistor interno (desconectado por default) de 20-50KΩ. Em adição alguns pinos possuem func’~oes especializadas:
  • Serial: 0 (RX) and 1 (TX); Serial 1: 19 (RX) and 18 (TX); Serial 2: 17 (RX) and 16 (TX); Serial 3: 15 (RX) and 14 (TX). Usados para receber (RX) e transmitir (TX) dados seriais TTL. Pinos 0 e 1 são também conectados aos pinos correspondentes do chip serial FTDI USB-to-TTL.
  • Interruptores externos: 2 (interruptor 0), 3 (interruptor 1), 18 (interruptor 5), 19 (interruptor 4), 20 (interruptor 3), and 21 (interruptor 2). Estes pinos podem ser configurados para disparar uma interrupção por um valor baixo, um limite diminuindo ou subindo, ou uma mudança em um valor. Para mais dealhes veja a função attachInterrupt().
  • PWM: 0 a 13. Fornecem saída analógica PWM de 8-bits com a função  analogWrite().
  • SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). Estes pinos dão suporte à comunicação SPI que, embora suportada pelo hardware, ainda não está incluida na linguagem Arduino.
  • LED: 13. Há um LED connectado ao pino digital 13. Quando o pino está em HIGH o led se acende.
  • I2C: 20 (SDA) and 21 (SCL). Fornecem suporte à comunicação  I2C (TWI) usando a  bibliotecaWire(documentação no site do Wiring). Note que estes pinos não estão na mesma posição que os pinos I2C pins no Duemilanove ou no Diecimila.
O Mega tem 16 entradas analógicas, cada uma das quais com 10 bits de resolução (i.e. 1024 valores diferentes). Por padrão elas medem de 0 a 5 volts, embora seja possível mudar o limite superior usando o pino AREF e a função analogReference().
Há um par de pinos diferentes na placa:
  • AREF. Voltagem de referência para as entradas analógicas. Usados com analogReference().
  • Reset. Marque este valor como  LOW para resetar o microcontrolador. Tipicamente usado para adcionar um botão de reset em shields que bloqueiam o que há na placa.

Communicação

O Arduino Mega possui várias facilidades para se comunicar com um computador, com outro Arduino ou outros microcontroladores. O ATmega1280 fornece quatro portas de comunicação serial UARTs para TTL (5V). Um chip FTDI FT232RL direciona uma destas portas para a conexão USB e os drivers FTDI (que acompanham o software do Arduino) fonecem uma porta com virtual para softwares no computador. O software do arduino inclui um monitor serial que permite que dados simples de texto sejam enviados de e para a placa Arduino. Os LEDs RX e RT piscarão enquanto dados estiverem sendo transmitidos pelo chip FTDI e pela conexão USB ao computador (mas não para comunicação serial nos pinos 0 e 1).
Uma biblioteca SoftwareSerial permite comunicação serial em qualquer um dos pinos digitais do Mega.
O ATmega1280 também fornece suporte para comunicação I2C (TWI) e SPI. O software Arduino inclui uma biblioteca Wire para simplificar o uso do bus I2C; veja a documentação no site do Wiring para mais detalhes. Para usar a comunicação SPI veja o datasheet do ATmega1280.

Programação

O Arduino Mega pode ser programado com o software do Arduino (download). Para detalhes, veja a referência e os tutoriais.
O ATmega1280 no Arduino Mega vem com o bootloader pré gravado o possibilita o envio de novos códigos sem o uso de um programador de hardware externo. Ele se comunica usando o protocolo original STK500 (referenceC header files).
Você também plode suplantar o bootloader e programar o microcontrolador através do cobeçalho ICSP (In-Circuit Serial Programming); veja estas instruções para mais detalhes.

Reset Automatico (Software)

Ao invés de necessitar o pressionamento físico do botão de reset antes de um upload, o Arduino Mega é desenhado de moda a permitir que o reset seja feito pelo software executado em um computador conectado. Uma das linhas dos fluxos de controle de hardware (DTR) do FT232RL é conectada diretamente à linha de reset do ATmega1280 através de um capacitor de 100 nanofarads. Quando esta linha é acessada (rebaixada), a linha de reset decai por tempo suficiente para resetar o chip. O software Aduino utiliza esta capacidade para possibilitar que novos códigos sejam enviados simplesmente clicando no botão de upload do ambiente de programação do Arduino. Isto significa que o bootloader fica fora do ar por um tempo mais curto, uma vez que o rebaixamento do DTR pode ser bem coordenado com o início do upload.
Esta montagem tem outras implicações. Quando o mega é conectado a um computador rodando Mac OS X ou Linux ele é resetado cada vez uma conexão é feita com o software (via USB). Durante o próximo meio segundo (aproximadamente) o bootloader estará rodando no Mega. Uma vez que ele é programado para ignorar dados mal formados (i.e. qualquer coisa que não seja um upload de novo código), ele vai interceptar os primeiros bytes de informação enviado à placa depois que uma nova conexão seja aberta. Se um programa rodando na placa recebe uma pré configuração ou outros dados assim que ele comaça, certifique-se de que o software com o qual ele se comunica espera meio segundo depois que a conexão seja estabelecida antes de começar a enviar os dados.
O Mega tem uma trilha que pode ser cortada para desabilitar o auto-reset. Esta trilha pode depois ser unida novamente por solda para re-habiltar esta funcionalidade.Esta trilha tem a identificação “RESET-EN” Também é possível desabilitar o autoreset conectando um um resitor de 110Ω do 5V à linha de reset; veja este post do forum para mais detalhes.

Proteção de sobre-corrente USB

O Arduino Mega possue um fusível resetável que protege as portas USB do computador contra curto-circuitos e sobrecorrente. Apesar de muitos computadores possuírem sua própria proteção interna, o fusível resetável dá um grau extra de segurança . Se mais de 500 mA forem drenados ou aplicados na porta USB , o fusível automaticamente abrirá o circuito até que o curto ou a sobrecarga sejam removidos .

Características Físicas e Compatibilidade com Shields

As dimensões máximas de comprimento e largura da placa Mega são 4,0″ (101,60 mm ) e 2,1″ ( 53,34 mm ) respectivamente  , com o conector USB e jack de alimentação ultrapassando um pouco as dimensões da placa em si . Três furos para montagem com parafusos permitem montar a placa numa superfície ou caixa . Note que a distância entre os pinos de entrada e saída digitais no. 7 e 8 é de 160 mil ( 0,16″) , não é sequer múltiplo dos 100 mil ( 0,10″) do espaçamento entre os outros pinos .
O Mega é projetado para ser compatível com a maioria dos shiels feitos para o Diecimila ou Duemilanove. Os pinos de entrada e saída digitais 0 a 13 , os adjacentes AREF e GND, entradas analógicas 0 a 5, o conector power e o ICSP estão todps em posições equivalentes . Além do mais, a UART principal ( porta serial ) está localizada nos mesmos pinos (0 e 1), bem com as interruções 0 e 1 ( pinos 2 e 3 respectivamente ).  SPI está disponível através do conector ICSP em ambos ( Mega e Duemilanove/Diecimila ).  Note que o I2C  não está localizado nos mesmos pinos no Mega ( 20 E 21 ) e no  Duemilanove  ( entradas analógicas 4 e 5 ) .
Foto do Arduino Mega por SpikenzieLabs.

Deixar um comentário

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