0

Como gravar o bootloader num ATMega328P

Neste tutorial vai aprender como gravar o bootlander num ATMega328P usando um Arduino UNO como programador ISP.

Nota: O bootlander é um conjunto de instruções que nos permitem aceder ao microcontrolador e usá-lo de forma simples sem ter que conhecer instruções demasiado avançadas.

 

Componentes necessários para montar o programador

1x Arduino UNO/NANO
2x Condensadores de 22pF
1x Oscilador 16MHz
1x BreadBorad
3x LEDs de cores (ou 1x RGB)
3x Resistencias de 330 Ohms (Para os 3 LEDs)
1x Resistencia 10K (Para o pino 1 do ATMega328P)
Cabos para protoboard

 

 Método #1: Arduino UNO como programador ISP

Este método é o mais simples, apenas temos que carregar no nosso Arduino o exemplo “ArduinoISP” do IDE de Arduino, isto vai configurar a placa como um programador ISP. Para localizar este exemplo repare na seguinte imagem:

 

Quando carregarmos o exemplo “ArduinoISP” no Arduino já podemos realizar as seguintes ligações na protoboard:

 

 

O led verde vai-nos indicar que chega alimentação ao Arduino, o led amarelo indica quando o ATMega328P está a programar e o led vermelho indica-nos se há algum erro.

Note que intercalamos uma resistência de 10k no pino 1 (RESET) para que detete HIGH sempre, senão  fizermos isso, o microcontrolador vai-se reiniciar em laço e como pode perceber, isto não nos interessa.

O oscilador não tem polaridade, podemos montá-lo de lá para cá indistintamente.

Quando fizermos as ligações, temos que programar um ATMega328P, para isso selecionamos as seguintes opções no IDE de Arduino:

 

 

Placa: Arduino/Genuino UNO
Porta: A porta onde ligou o Arduino UNO
Programador: Arduino como ISP

E finalmente já podemos carregar em “Queimar Bootloader” (em português), marcado em azul na imagem. Se todos os passos foram seguidos corretamente o led verde vai-se iluminar e após uns segundos vai acender o amarelo (enquanto se carrega o bootloader), passados uns segundos o led amarelo deixará de se acender e teremos o ATMega328P pronto para ser usado.

NOTA: Se se acende o led vermelho é porque ocorreu um erro durante a leitura, teste as ligações e volte a tentar.

 

 Método #2: Arduino UNO com OptiBoot

O OptiBoot é um bootloader alternativo e 100% compatível com o que vem pre-carregado por defeito no Arduino.

Para instalar este bootloader, descarregamos o paquete a partir do GitHub e descomprimimos o arquivo “optiLoader.h” numa pasta chamada “OptiLoader” dentro da pasta Livrarias do IDE do Arduino, no nosso caso fica assim:

C:\Program Files (x86)\Arduino\livrarias\OptiLoader\optiLoader.h

A seguir, podemos abrir o arquivo “optiLoader.ino” e fazer upload ao nosso Arduino UNO.

DESCARREGAR OPTILOADER A PARTIR DESTE GITHUB

De seguida, realizamos todas as ligações deste esquema, são as mesmas que o método anterior mas podemos prescindir do circuito dos leds já que não os vamos usar.

 

 

A vantagem de usar este segundo método é que o Arduino UNO é que fica como programador de ATMega328P automático, para programar outro ATMega apenas temos que reiniciar por um vácuo e carregar o botão de reset do Arduino. Não é necessário ter o Arduino UNO conectado ao PC nem interagir  com o IDE de Arduino para nada. Cada vez que pressionamos reset o Arduino UNO instala o bootloader no ATMega que está ligado, assim é fácil.

 

Todos os produtos utilizados neste artigo podem ser encontrados na Loja de Eletrónica e Robótica – ElectroFun.

Gostaram deste artigo? Deixem o vosso comentário no formulário a baixo e partilhem com os vossos amigos.

Não se esqueçam de fazer like na nossa Página no Facebook.

Podem ainda colocar as vossas dúvidas no nosso Forum da Comunidade Arduino em Portugal ou no nosso Grupo no Facebook Arduino Portugal – Qual o teu projeto?

Comments

Comentários

ArduinoPortugal.pt

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

To use BrandCaptcha you must get an API Key