Gravando Bootloader Arduino com Shield AVR ISP

Gravar Bootloader Arduino em microcontroladores sempre foi um problema, existem diversos meios de realizar este processo, porém cada qual apresenta suas limitações e suas complicações, podemos gravar substituindo o...

Gravar Bootloader Arduino em microcontroladores sempre foi um problema, existem diversos meios de realizar este processo, porém cada qual apresenta suas limitações e suas complicações, podemos gravar substituindo o microcontrolador do Arduino UNO, por exemplo, e utilizando um gravador através dos pinos ISP, podemos montar projetos utilizando mais de um Arduino ou protoboard, existem possibilidades, porém podemos simplificar este trabalho, e vamos aprender hoje no post “Gravando Bootloader Arduino com Shield AVR ISP”.

Na maioria das vezes as opções de gravação necessitam de conexões complicadas, componentes difíceis de ter em mãos, programas específicos e configurações complexas, porém com este Shield você só irá precisar ter além do Arduino, o próprio programa correspondente e o código certo que vamos disponibilizar no transcorrer deste artigo.De modo geral, este gravador de bootloader é um shield programador que permite através de um código específico que o seu equipamento Arduino modifique as configurações de inicialização tanto em chips externos quanto em chips instalados em outras placas Arduino que não possam ser removidos, como o caso do Arduino Mega, Arduino Nano e Arduino Pro Mini, por exemplo.

 

Produtos Utilizados no Teste:

 

Especificações do Produto

Desenvolvido no formato de Shield e com conexões SPI obrigatórias, este equipamento torna-se compatível somente com Arduino UNO e Arduino Mega, ou seja, para que possa trabalhar como gravador e executar suas funções ele necessita de um destes dos modelos para funcionar no formato de shield.

Através de seu DIP 28P que tona possível a conexão de chips com 28 pinos, o AVR ISP Shield pode gravar de modo direto sem a necessidade de instalações prévias chips como o Atmega328P, Atmega168P e Atmega8.

Através de seus pinos ISP 6PIN e de uma instalação prévia através de jumpers, o mesmo Shield pode realizar gravações através dos pinos ISP para equipamentos Arduino UNO R3, Mega 2560, Nano e Pro Mini (5V 16Mhz).

Outra opção para quem não possui um Arduino e deseja realizar a gravação do bootloader através de um gravador AVR é a utilização dos pinos ISP 10PIN compatível com equipamentos de gravação AVR.

Para quem deseja estar Gravando Bootloader Arduino e logo em seguida já gravar algum código junto ao microcontrolador, o AVR ISP Shield conta com exclusivos pinos denominados PROGRAM que possibilitam a conexão de gravadores TTL para a execução deste processo.

 

Preparando o Arduino para Gravar o Bootloader

Neste primeiro instante vamos gravar junto ao Arduino um código exclusivo para a gravação de bootloaders e que neste nosso projeto irá executar algumas funções exclusivas, em tese se assemelha ao código ArduinoISP já disponível na seção “Exemplos” do software Arduino mas com algumas modificações para a utilização de elementos próprios deste shield.

 

Download do código de funcionamento: DOWNLOAD AQUI.

Através do link disponibilizado para download, baixe o arquivo .zip que contém o código para configuração dos padrões de gravação de bootloader e após, copie a pasta “OPENSMART_ISP” e cole junto a pasta “examples” localizada normalmente em C:\Program Files (x86)\Arduino.

Para o próximo passo você irá precisar do nosso AVR ISP Shield e de um Arduino UNO R3 ou Arduino Mega 2560, com o shield posicionado sobre os pinos de ambos os modelos através da posição padrão, assim como demonstrado na imagem abaixo:

Após, conecte o seu equipamento no computador através de um Cabo USB AB, abra o programa Arduino e selecione o local correspondente a placa “Arduino/Genuino UNO” caso esteja utilizando este modelo, ou o local correspondente a placa “Arduino/Genuino Mega or Mega 2560” no caso de estar utilizando o Arduino Mega.

Com o modelo de Arduino selecionado o próximo passo é escolher a porta de funcionamento relacionada ao mesmo no momento que foi conectado junto ao computador, a porta COM como é comumente conhecida, observe:

Agora que seu programa Arduino já está configurado para gravar no modelo específico o qual está utilizando, o próximo passo é abrir o nosso código para instalação do código, para isso, vá até a guia abrir e selecione o arquivo “OPENSMART_ISP” e após clique em gravar, observe:

Após estes passos concluídos, o seu equipamento Arduino já estará pronto para a próxima fase que é a de gravação do bootloader, como existem dois modos para esta configuração, vamos dar exemplo dos dois modelos de utilização.

 

Gravando Bootloader Arduino no ATMEGA328P

O chip Atmega328P é conhecido por todos que já trabalharam com o Arduino UNO, por exemplo, já que é o chip que acompanha o mesmo e é responsável por toda a capacidade de armazenamento e execução deste pequeno equipamento, levando isto em consideração, hoje estaremos trabalhando com este chip em especial.

Para este processo de instalação você vai precisar de um Atmega328P posicionado junto ao soquete 28P verde que existe sobre o AVR ISP Shield, lembrando que o mesmo possui uma posição especifica para seu posicionamento com a ranhura do microcontrolador posicionado na direção da trava do soquete, observe na figura abaixo:

Como estamos trabalhando com o chip base de funcionamento do Arduino UNO, vamos selecionar no campo “Placa” o Arduino UNO, pois é a sua base de funcionamento que estaremos instalando no chip que estamos configurando, caso estivéssemos gravando em um Atmega168 ou Atmega8, por exemplo, teríamos que selecionar a placa “Arduino NG or older” e após o processador desejado.


Após ter selecionado a placa, no nosso caso “Arduino/Genuino UNO”, o próximo passo é selecionar o programador, que será o “Arduino as ISP” e após isto clicar em Gravar Bootloader e então aguardar que em poucos instantes o seu bootloader já estará gravado.


Após iniciar a gravação, o buzzer existente junto ao Shield irá bipar uma vez para indicar que iniciou a gravação e após ao termino da mesma irá soar uma segunda vez para indicar que a gravação foi concluída, caso contrário um LED vermelho irá ascender indicando que ocorreu algum erro no processo de gravação.

 

Gravando Bootloader Arduino com Outro Arduino

Para este processo nós iremos utilizar os pinos ISP_6PIN e conectá-los nos pinos correspondentes do equipamento a ser gravado, observe abaixo uma imagem demonstrando a referente conexão:

Para gravar o bootloader neste processo, os passos são semelhantes ao anterior, seleciona-se a placa que se deseja gravar, no caso Arduino UNO, Arduino MEGA, Arduino Nano ou Arduino Pro Mini, seleciona-se o programador “Arduino as ISP” e após isto iniciamos a gravação através do local Gravar Bootloader.


Após iniciar a gravação, o buzzer existente junto ao Shield irá bipar uma vez para indicar que iniciou a gravação e após ao termino da mesma irá soar uma segunda vez para indicar que a gravação foi concluída, caso contrário um LED vermelho irá ascender indicando que ocorreu algum erro no processo de gravação.

 

Conclusão

Desenvolvido para que esta Gravando Bootloader Arduino, o AVR ISP Shield consegue superar as expectativas e provar que as coisas podem ser mais fáceis do que se parece, através deste shield você consegue gravar as informações necessárias para o funcionamento do seu microcontrolador e diversas são as vantagens que ele traz consigo.

Você escolhe o melhor método de gravação, escolhe as funções que deseja utilizar e caso desejar, pode realizar todo o processo de instalação de bootloader e após a própria instalação do código através do local específico para isto, tudo isto através deste único produto e seus correspondentes, já que no caso para a gravação do código necessitaríamos de um gravador TTL, por exemplo.

Adquira seu AVR ISP Shield e execute o processo de gravação do bootloader sem a necessidade de programas específicos ou códigos complexos que demandam tempo e dificultam o seu processo. Não se esqueça de comentar aqui em baixo, compartilhar sua experiência e auxiliar outras pessoas que também estão querendo utilizar este produto.

Conheça toda Linha de Produtos Arduino no Site da UsinaInfo.

Categorias
Arduino

Mecânico de Manutenção com Experiência em Sistemas Embarcados, Automação e Desenvolvimento de Projetos; Graduado nos Cursos de Matemática - URI e Física - UFFS.
8 Número de Comentários
  • Giovani
    8 agosto 2018 at 01:01
    Deixe seu Comentário

    Show! Matou a pau! Em menos de 20 minutos, “queimei” gravei 50 Atmega-328P. Parabéns pelo post. Obrigado!

    • Equipe Usinainfo
      27 setembro 2018 at 14:26
      Deixe seu Comentário

      Bom dia Giovani.
      Muito obrigado!
      Realmente este procedimento é muito simples e extremamente útil, não deixe de conferir nossos demais projetos e dar a sua opinião e sugestões.

  • Alf
    25 junho 2019 at 01:40
    Deixe seu Comentário

    Grava Attiny2313?

    • Equipe Usinainfo
      16 julho 2019 at 15:46
      Deixe seu Comentário

      Boa Tarde Alf!
      Infelizmente este equipamento não possui suporte com Attiny2313, sua funcionalidade limita-se a modelos Atmega semelhantes aos modelos utilizados na linha Arduino.

  • Rodrigo
    6 novembro 2019 at 17:11
    Deixe seu Comentário

    Como soluciono esse erro ao gravar a bootlooader
    avrdude: ser_open(): can’t set com-state for “\\.\COM10”
    Erro ao gravar o bootloader.

    • Matheus Gebert Straub
      7 novembro 2019 at 10:04
      Deixe seu Comentário

      Bom Dia Rodrigo! Pelo que pode-se observar, o problema está no reconhecimento da porta USB, verificou se a COM que está utilizando está selecionado corretamente no software Arduino? Outra opção é realizar o teste com um cabo USB diferente para eliminar a possibilidade de que o mesmo esteja com defeito.

  • Marcelo CF
    9 julho 2020 at 18:06
    Deixe seu Comentário

    Olá.
    Também posso usar o AVR ISP Shield para fazer uploads de sketchs para o ATMEGA328P, usando o Arduino as ISP?

    • Matheus Gebert Straub
      29 julho 2020 at 10:34
      Deixe seu Comentário

      Bom Dia Marcelo! Infelizmente o carregamento de códigos para o Atmega deve ser feito de maneira externa, conectado preferencialmente a um Arduino UNO R3, por exemplo.

    Deixe seu Comentário

    *

    *

    Sobre nós

    Hoje a Usinainfo é um dos maiores ecommerces de Ferramentas, Peças para Eletrônica, Componentes Eletrônicos, Sensores e Arduino do Brasil, contando com uma grande diversidade de produtos na linha de eletrônica.

    Sugestões

    Artigos Relacionados