Pesquisar no site

Contactos

www.cursopraticoarduino.pt

miguel-vieira97@hotmail.com

Arduino Mega

O MEGA Arduino  é uma placa de microcontrolador baseado no ( folha de dados ). Ele tem uma interface host USB para se conectar com telefones baseados Android, com base na MAX3421e IC. Ele tem 54 pinos digitais de entrada / saída (dos quais 15 podem ser usados ​​como saídas PWM), 16 entradas analógicas, 4 UARTs (portas seriais de hardware), a 16 MHz cristal oscilador, uma conexão USB, um fone de poder, um cabeçalho ICSP, e um botão de reset.

O ADK MEGA baseia-se na mega 2560 .

Semelhante ao mega 2560 e Uno, ele apresenta um ATmega8U2 programado como um conversor USB-to-serial.
revisão 2da placa ADK mega tem um resistor puxando a linha 8U2 HWB para o solo, tornando-o mais fácil de colocar emmodo DFU .
revisão 3 da placa tem os seguintes novos recursos:

  • 1,0 pinagem: SDA e SCL adicionado pinos que estão perto do pino AREF e outros dois novos pinos colocados perto do pino de reposição, o que permite que os IOREF escudos para se adaptar à voltagem fornecida a partir da placa. No futuro, escudos será compatível tanto com a placa que usam o AVR, que operam com 5V e com o Arduino Devido que operam com 3.3V. O segundo é um pino não conectado, que está reservada para efeitos futuros.
  • circuito de reset mais forte.

Para obter informações sobre como usar a placa com o sistema operacional Android, veja:

Documentação ADK do Google .

Biblioteca Arduino

O Arduino USB Host escudo pode ser usado com o "USB Host Biblioteca para Arduino", apresentado por Oleg Mazurov e Alexei Glushchenko de circuitos @ home , Kristian Lauszus e Andrew Kroll no GitHub ( de download ).

Esquemática, Concepção e Pin Referência Mapping

EAGLE arquivos: Arduino_ADK-Mega_2560-Rev3-reference-design.zip

Diagrama: Arduino ADK_Mega_2560-schematic.pdf

Pin Mapping: página PinMap2560

Resumo

Microcontrolador ATmega2560
Tensão operacional 5V
Tensão de entrada (recomendado) 7-12V
Tensão de entrada (limites) 6-20V
Digital pinos I / O 54 (dos quais 15 fornece uma saída de PWM)
Pinos de entrada analógica 16
Corrente DC por I / O Pin 40 mA
Corrente DC 3.3V para Pin 50 mA
Memória flash 256 KB, dos quais 8 KB usados ​​por bootloader
SRAM 8 KB
EEPROM 4 KB
Velocidade do relógio 16 MHz
Host USB Chip MAX3421E
Comprimento 101.52 mm
Largura 53,3 mm
Peso 36 g

Poder

O ADK MEGA Arduino pode ser alimentado através da conexão USB ou com uma fonte de alimentação externa. A fonte de alimentação é selecionada automaticamente.

(Não-USB) de energia externa pode vir com um adaptador AC-CC (parede-verruga) ou a bateria. O adaptador pode ser ligado, ligando um plug 2,1 milímetros de centro-positivo à tomada de alimentação do tabuleiro. Leads de uma bateria podem ser inseridos nas GND e Vin cabeçalhos dos pinos do conector POWER.

NB: Como o ADK MEGA é um USB Host, o telefone irá tentar extrair energia a partir dele quando ele precisa carregar.Quando o ADK é alimentado através de USB, o total de 500mA está disponível para o telefone e regulador de alimentação externa board.The pode fornecer até 1500mA. 750mA está disponível para o telefone e placa ADK MEGA.Um 750mA adicional é alocada para nenhum atuadores e sensores ligados à placa. A fonte de alimentação deve ser capaz de fornecer 1.5A usar este muito atual.

A placa pode operar com uma fonte externa de 5,5 a 16 volts. Se fornecido com menos de 7V, no entanto, o pino 5V pode fornecer menos de cinco volts e do conselho pode ser instável. Se usar mais de 12V, o regulador de tensão pode superaquecer e danificar a placa. O intervalo recomendado é de 7 a 12 volts.

Os pinos de energia são os seguintes:

  • VIN. A tensão de entrada para a placa Arduino quando ele está usando uma fonte de alimentação externa (por oposição aos 5 volts a partir da conexão USB ou outra fonte de energia regulada). Você pode fornecer tensão por este pino, ou, se o fornecimento de tensão através da tomada de energia, acessá-lo através deste pino.
  • 5V. Este pino produz um 5V regulado pelo regulador na placa. A placa pode ser alimentado com energia a partir da tomada de energia DC (7 - 12V), o conector USB (5V), ou o pino VIN do conselho (7-12V). Fornecimento de tensão através das 5V ou 3.3V pinos ignora o regulador, e pode danificar a placa. Nós não aconselho isso.
  • 3V3. A alimentação de 3,3 volt gerado pelo regulador on-board. Tração máxima atual é 50 mA.
  • GND. Pinos de terra.
  • IOREF. Este pino na placa Arduino fornece a referência de tensão com que o microcontrolador opera. Um escudo configurado corretamente pode ler a tensão pin IOREF e selecione a fonte de alimentação adequada ou habilitar tradutores de tensão nas saídas para trabalhar com o 5V ou 3.3V.

Memória

O ADK MEGA tem 256 KB de memória flash para armazenamento de código (dos quais 8 KB é usado para o bootloader), 8 KB de SRAM e 4 KB de EEPROM (que pode ser lido e escrito com a biblioteca EEPROM ).

Entrada e saída

Cada um dos 50 pinos digitais do ADK MEGA pode ser usado como uma entrada ou saída, usando pinMode () ,digitalWrite () , e digitalRead () funções. Eles operam a 5 volts. Cada pino pode fornecer ou receber um máximo de 40 mA e tem um resistor pull-up interno (desconectado por padrão) de 20-50 kOhms. Além disso, alguns pinos têm funções especializadas:

  • Serial: 0 (RX) e 1 (TX); Serial 1: 19 (RX) e 18 (TX); Serial 2: 17 (RX) e 16 (TX); De Série 3: 15 (RX) e 14 (TX). Utiliza-se para recepção (RX) e transmitir os dados em série (TX) TTL. Pinos 0 e 1 também são ligados aos pinos correspondentes doATmega8U2 serial chip USB-TTL.
  • Interrupções externas:. 2 (interrompem 0), 3 (interrupção 1), 18 (interrupção 5), 19 (interromper 4), 20 (interromper 3), e 21 (interrupção 2) Estes pinos podem ser configurados para disparar uma interrupção por um valor baixo, uma borda de subida ou queda, ou uma mudança de valor. Veja a attachInterrupt () função para obter detalhes.
  • PWM: 2 a 13 e 44 a 46. Assegurar a saída PWM 8-bit com o analogWrite () função.
  • SPI:. 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS) Estes pinos suportam comunicação SPI utilizando a biblioteca de SPI . Os pinos SPI também são divididos no cabeçalho ICSP, que é fisicamente compatível com o Uno, Duemilanove e Diecimila.
  • USB host: MAX3421E . O MAX3421E comunicar com Arduino com o barramento SPI. Então, ele usa os seguintes pinos:
    • Digital: 7 (RST), 50 (MISO), 51 (MOSI), 52 (SCK). NB: Por favor, não use pin Digital 7 como entrada ou saída, porque é usado na comunicação com MAX3421E
    • Não quebrado para fora em cabeçalhos: PJ3 (GP_MAX), PJ6 (INT_MAX), pH 7 (SS).
  • LED: 13. Há um built-in LED conectado ao pino digital 13. Quando o pino é de alto valor, o LED está ligado, quando o pino é baixo, ele está fora.
  • TWI: 20 (SDA) e 21 (SCL). Comunicação TWI Suporte usando a biblioteca Wire . Note-se que estes pinos não estão no mesmo local que os pinos TWI no Duemilanove ou Diecimila.

O ADK MEGA tem 16 entradas analógicas, cada uma das quais com 10 bits de resolução (ie 1024 valores diferentes). Por padrão elas medem de 5 volts, embora seja possível mudar a extremidade superior da sua gama usando o pino AREF e função analogReference ().

Há um par de outros pinos na placa:

  • AREF. Tensão de referência para as entradas analógicas. Usado com analogReference ().
  • Repor. Traga esta linha baixa para repor o microcontrolador. Tipicamente usado para adicionar um botão de reposição para shields que bloqueiam o que há na placa.

Comunicação

O Arduino MEGA ADK tem uma série de facilidades para se comunicar com um computador, outro Arduino ou outros microcontroladores. ATmega2560 fornece quatro de hardware UARTs para TTL (5V) de comunicação serial. UmATmega8U2 nos canais bordo de um destes mais de USB e fornece uma porta virtual para o software no computador (máquinas Windows vai precisar de um arquivo .inf, mas as máquinas OSX e Linux vai reconhecer o conselho como uma porta COM automaticamente. O software Arduino inclui um monitor serial que permite que dados simples de texto sejam enviadas de e para a placa. o RX e TX LEDs na placa pisca quando os dados estão sendo transmitidos através doATmega8U2 / 16U2 chip e conexão USB para o computador (mas não para de série comunicação nos pinos 0 e 1).

biblioteca SoftwareSerial permite comunicação serial em qualquer um dos pinos digitais do Mega ADK.

ATmega2560 também suporta comunicação TWI e SPI. O software Arduino inclui uma biblioteca Wire para simplificar o uso do ônibus TWI; ver a biblioteca Wire para obter detalhes. Para a comunicação SPI, use a biblioteca SPI .

A interface host USB dada pelo MAX3421E IC permite que o Arduino MEGA ADK para conectar e interagir com qualquer tipo de dispositivo que tenha uma porta USB. Por exemplo, permite que você interaja com muitos tipos de telefones, controle de câmeras Canon, interface com os controladores de teclado, mouse e jogos como o Wiimote e PS3 .

Programação

O ADK MEGA Arduino pode ser programado com o software Arduino ( de download ). Para mais detalhes, consulte areferência e tutoriais .

Os ATmega2560 no Arduino MEGA ADK vem preburned com um bootloader (o mesmo em mega 2560), que permite o envio de novos códigos sem o uso de um programador de hardware externo. Ele se comunica usando o originalSTK500v2 protocolo ( de referência , arquivos de cabeçalho C ).

Você também pode ignorar o bootloader e programar o microcontrolador através do (Programação Serial In-Circuit) ICSP cabeçalho usando Arduino ISP ou similar; veja estas instruções para obter detalhes.

ATmega8U2 código fonte do firmware está disponível no repositório do Arduino . ATmega8U2 é carregada com um carregador de inicialização DFU, que pode ser activado por:

  • Em placas Rev1: Ligar o jumper de solda na parte de trás do cartão (próximo o mapa de Itália) e, em seguida, redefinir o 8U2.
  • Em placas Rev2 ou posteriores: há um resistor que puxar a linha HWB 8U2 / 16U2 ao solo, tornando-o mais fácil de colocar em modo DFU. Então você pode usar software de Atmel FLIP (Windows) ou o programador DFU (Mac OS X e Linux) para carregar um novo firmware. Ou você pode usar o cabeçalho ISP com um programador externo (substituindo o bootloader DFU). Veja este tutorial contribuição do usuário para mais informações.

Automática (Software) Redefinir

Em vez de exigir uma imprensa física do botão de reset antes de um upload, o ADK Arduino MEGA é projetado de uma maneira que permite que ele seja reposto por software rodando em um computador conectado. Uma das linhas de controlo de fluxo de hardware (DTR) do ATmega8U2 está ligado à linha de reset dos ATmega2560 através de um condensador 100 nanofarad. Quando esta linha é afirmado (tomada baixo), a linha de reset cai o tempo suficiente para repor o chip. O software Arduino usa esse recurso para permitir que você envie código, simplesmente pressionando o botão de upload no ambiente Arduino. Isto significa que o carregador de arranque pode ter um tempo de espera mais curtos, como a redução dos DTR pode ser bem coordenado com o início do carregamento.

Esta configuração tem outras implicações. Quando o ADK MEGA está conectado a um computador com Mac OS X ou Linux, ele redefine a cada vez que uma conexão é feita com o software (via USB). Para o seguinte meio segundo ou assim, o bootloader está em execução no ADK MEGA. Enquanto ele é programado para ignorar os dados malformados (ou seja, qualquer coisa além de um upload de novo código), ele irá interceptar os primeiros bytes de dados enviados para o conselho depois que uma conexão é aberta. Se um programa rodando na placa recebe configuração de uma só vez ou outros dados quando ele começa a, certifique-se de que o software com o qual ele se comunica espera um segundo depois de abrir a conexão e antes de enviar esses dados.

O ADK MEGA contém um traço que pode ser cortado para desativar o auto-reset. As almofadas em ambos os lados do traço podem ser soldadas em conjunto para reativá-lo. Está identificada como "RESET-PT". Você também pode ser capaz de desativar a auto-reset, ligando um resistor 110 de 5V para a linha de reset; veja este tópico do fórum para mais detalhes.

Proteção de sobrecorrente USB

O Arduino MEGA ADK tem um POLYFUSE reajustável que protege portas USB do seu computador a partir de shorts e sobrecorrente. Embora a maioria dos computadores fornecem sua própria proteção interna, o fusível fornece uma camada extra de proteção. Se houver mais de 500 mA é aplicada à porta USB, o fusível romper automaticamente a conexão até a curto ou a sobrecarga é retirada.

Características Físicas e escudo Compatibilidade

O comprimento e a largura máximas do PCB MEGA ADK são 4 e 2,1 polegadas, respectivamente, com a tomada do conector USB e poder que se estende para além da dimensão ex. Três orifícios de parafuso permitem que a placa para ser ligado a uma superfície ou caso. Note-se que a distância entre os pinos digitais 7 e 8 é de 160 mil (0,16 "), e não um múltiplo do espaçamento de 100 milésimos de polegada os outros pinos.

O ADK MEGA é projetado para ser compatível com a maioria dos escudos projetados para o Uno, Diecimila ou Duemilanove. Pinos digitais 0 a 13 (ea AREF adjacente e GND), entradas analógicas 0 a 5, o cabeçalho de energia e de cabeçalho ICSP estão todos em locais equivalentes. Além disso, o UART principal (porta serial) está localizado nos mesmos pinos (0 e 1), assim como interrupções externas 0 e 1 (pinos 2 e 3, respectivamente). SPI está disponível através do cabeçalho ICSP tanto no ADK MEGA e Duemilanove / Diecimila. Por favor note que eu 2 C não está localizado nos mesmos pinos no ADK MEGA (20 e 21) como o Duemilanove / Diecimila (entradas analógicas 4 e 5 ).

Drivers e Setup

Com esta placa você precisa alterar o arquivo boards.txt em seu diretório Arduino (encontrá-lo em: "Arduino-00xx> Hardware> arduino" ):

Arduino 0022 ou mais velhos boards.txt
Arduino 1.0 Beta boards1.0.txt

[A ser downladed, estes arquivos são compactados em um arquivo zip, então você precisa descompactá-los para o diretório descrito acima.]

Os usuários do Windows, a fim de começar a trabalhar a placa precisa de um arquivo .inf para este produto específico:Arduino_ADK.zip
Para a instalação siga o mesmo procedimento em como instalar uma placa de UNO no seu computador .