Como gravar Bootloader do Arduino UNO – Atmega328
Se você deseja desenvolver seu próprio Arduino UNO, precisa substituir o chip Atmega328 da sua placa ou possui um UNO que esteja com o Bootloarder ruim, então este tutorial é para você.
Este tutorial ensinará o que é um Bootloader, porque você precisa instalá-lo ou reinstalá-lo e como fazer usando uma placa Arduino UNO.
BOOTLOADER
Quem já usou as placas Arduino sabe como é simples programá-las por meio do Arduino IDE utilizando a comunicação serial. Basta conectar a placa à porta USB do computador e clicar na opção “Upload” para iniciar a transferência do sketch para a memória flash do computador.
Esta facilidade acontece graças a um código especial, chamado Bootloader, que é executado sempre que a placa é inicializada. O Bootloader é muito semelhante ao BIOS que é executado em seu computador e basicamente executa duas tarefas:
- Verifica se o computador está tentando programar o microcontrolador. Se sim, ele aceita o código e o armazena em um local específico na memória do microcontrolador de forma que o próprio bootloader não seja sobrescrito;
- Instruir o chip a executar o código já armazenado na memória.
Existem muitas maneiras de gravar o Bootloader no Arduino UNO. Uma delas é via ISP (In System Programmer) utilizando outra placa Arduino que possua o Bootloader gravado. Esta maneira será detalhada a seguir.
MATERIAIS NECESSÁRIOS
ESQUEMÁTICO DE LIGAÇÃO DOS COMPONENTES
Monte atentamente o circuito da Figura 1 utilizando os jumpers macho-macho e as 2 placas UNO. Note que apenas o Arduino com que se encontra com o Bootloader gravado deve estar conectado ao cabo USB.
- Abrir a Arduino IDE e abrir o código de gravação
Para gravar o Bootloader para o Arduino UNO, vamos utilizar um código exemplo já disponível no próprio Arduino IDE. Este código pode ser acessado através do seguinte caminho: Arquivo > Exemplos > 11.ArduinoISP > ArduinoISP), conforme a Figura 2.
2. Definir a placa que será usada
Logo após abrir, devemos selecionar a placa que iremos utilizar. Em nosso caso, iremos selecionar a placa Arduino UNO no menu Ferramentas > Placas, conforma a Figura 3.
3. Transferir o código para a placa conectada
Com a placa já definida, transfira o código para a placa Arduino UNO com Bootloader, conforme a Figura 4.
4. Alterar o programador para o modo ISP
Para que o Arduino UNO consiga gravar o Bootloader no Arduino de destino, precisamos alterar o modo Programador para “Arduino as ISP”. Para tal, acesse o menu Ferramentas > Programador, conforme Figura 5.
5. Realizar a gravação do Bootloader
Por fim, com tudo configurado, basta acessar no menu Ferramentas a opção Gravar Bootloader, conforme a Figura 6.
Após mandar o comando para gravar, basta aguardar para que toda a gravação seja concluída.
Você precisará gravar o Bootloader apenas uma vez. Após a gravação, você pode remover os jumpers e programar sua placa normalmente.
Espero ter ajudado,
Obrigado a todos e em caso de dúvidas deixe seu comentário abaixo!
Att. Jonas Souza
REFERÊNCIAS
ARDUINO. Arduino as ISP and Arduino Bootloaders. Disponível em: <https://docs.arduino.cc/built-in-examples/arduino-isp/ArduinoISP>. Acesso em: 05 out. 2022.
Graduando em Engenharia Elétrica.