Vídeo: O Hardware do Arduino Mega 2560 - MakerHero

Vídeo: O Hardware do Arduino Mega 2560 5

O sistema embarcado Arduino UNO, que é possivelmente o mais popular dos Arduinos, já permite ao projetista desenvolver as mais diversas aplicações. O Arduino Mega 2560, além de trazer todas as vantagens do UNO, emprega um microcontrolador Atmega 2560-16AU, viabilizando a expansão de I/Os digitais para até 53, além de apresentar 16 entradas analógicas, que podem também ser utilizadas como I/Os digitais.

Para aproveitar ao máximo os recursos disponíveis em qualquer sistema embarcado ou Shield, é importante conhecer um pouco do seu hardware interno. O estudo do datasheet do microcontrolador principal também é de suma importância. Logo, aconselha-se com veemência a análise do datasheet do Atmega 2560-16AU.

Hardware do Arduino Mega 2560

Na Figura 1 pode-se observar parte do diagrama esquemático da plataforma Arduino Mega, mais especificamente o setor do microcontrolador principal.

Hardware do Arduino Mega 2560

O componente IC3 portanto corresponde ao microcontrolador Atmega 2560-16AU, onde o arquivo hexadecimal originado na compilação de seu código na IDE é efetivamente gravado. Pode-se observar também as diversas conexões possíveis para I/Os digitais. IC1 consiste no regulador de tensão, que abaixa a tensão de entrada para os 5V necessários ao funcionamento do sistema. Y1 é o cristal de 16MHz já com os capacitores, responsável pela geração do clock do processador. IC7a consiste em um Amplificador Operacional ligado como buffer, para isolar o LED onboard, associado ao pino digital 13.

Na Figura 2 pode-se observar o circuito de chaveamento entre alimentação USB ou fonte externa.

Figura 2 - Circuito de chaveamento

O componente IC7B está ligado como comparador de tensão. Quando há presença de tensão em VIN, o valor na entrada não inversora é superior ao valor da entrada inversora (3,3V). Por este motivo, há nível lógico alto na saída (pino 7), desligando o transistor de efeito de campo canal P (T1). Com ausência de tensão em VIN, RN5D atua como resistor de pull-down e a tensão na entrada não inversora é inferior à da entrada inversora. Com isso, há nível lógico baixo na saída (pino 7), ligando o T1. Pode-se observar portanto que, com T1 ligado, os 5V da alimentação USB serão responsáveis por alimentar os circuitos lógicos do sistema embarcado. IC6 atua como regulador para gerar a tensão de 3,3V.

Na Figura 3 pode-se observar o circuito de interface USB/TTL.

Figura 3 - Interface USB-TTL

O sistema é muito semelhante ao já utilizado no Arduino UNO, onde observa-se outro microcontrolador (Atmega16U2-MU), IC4, que vem previamente gravado de fábrica para executar a comunicação entre o protocolo USB, adequando aos níveis TTL (0 a 5V) para gravar o processador principal. Este circuito tem como vantagem a maior velocidade de gravação se comparado com o sistema anterior, desenvolvido com um circuito integrado dedicado a esta função, o FTDI. Como desvantagem pode-se destacar a instabilidade em algumas ocasiões.

Para baixar os arquivos pertinentes à vídeo aula do hardware do Arduino Mega 2560, acesse este link.

 Gostou? Deixe seu comentário logo abaixo.

Faça seu comentário

Acesse sua conta e participe

5 Comentários

  1. O Wagner e esse pessoal do blog são desatenciosos. Os caras têm dúvidas e ninguém responde. Depois vem com papo de pedir like no vídeo pq ajuda bastante..ieiê

    1. E quase 4 anos depois, ninguém respondeu ainda…

  2. Bom dia se possivel gostaria de esclarecer uma duvida.

    Dar preferência para colocar um display de lcd usando o mesmo port da pinagem do ci tem alguma influencia no no desempenho do codigo?

    Ex. No atmega 2560

    PA0 – pin Digital 22
    PA1 – pin Digital 23
    PA2 – pin Digital 24
    PA3 – pin Digital 25
    PA4 – pin Digital 26
    PA5 – pin Digital 27
    PA6 – pin Digital 28
    PA7 – pin Digital 29

    Ligar o lcd dando prefencia para usar essas portas tem alguma influencia? E usar as portas que sobrarem como entrada pode trazer alguma influencia na comunicação?

    Estou usando uma aplicação que usa 3 lcds. 1 de 20 linhas por 4 colunas e 2 de duas linhas por 4 colunas.

    De vez outra algum display bagunça. Eu remediei o problema colocando um botão que declara novamente os 3 displays. Na maioria das vezes a circuito roda blz mas as vezes o arduino fica com a tensão fraca querendo apagar os displays. Eu percebo que é tensão fraca pois ao colocar na porta usb do notebook junto com a alimentação de 9v, o display volta a ficar com a cor bem definida.
    Mas esse erro so acontece de vez em quando. Outra coisa que percebi é quando as vezes com alguns sensores acionados atrapanha a comunicação do arduino com o visual studio. Estou usando uma fonte de 9v de 1A.

    Obrigado

  3. Parabéns. Você sabe dizer qual a vida útil de um arduino? Ligado direto dura quanto? 10.000 horas? 20? 30?

    Onde posso encontrar algo sobre isto?

    Obrigado

  4. Parabéns pelo tutorial, muito bem explicado!