Índice:

Guia de gravação do Atmega328P-PU Bootloader (Optiboot): 12 etapas
Guia de gravação do Atmega328P-PU Bootloader (Optiboot): 12 etapas

Vídeo: Guia de gravação do Atmega328P-PU Bootloader (Optiboot): 12 etapas

Vídeo: Guia de gravação do Atmega328P-PU Bootloader (Optiboot): 12 etapas
Vídeo: Ultimate Arduino Bootloader Burning Guide from Blank ATMEGAs (3 Techniques) 2024, Julho
Anonim
Guia de gravação do Atmega328P-PU Bootloader (Optiboot)
Guia de gravação do Atmega328P-PU Bootloader (Optiboot)

Mais um bootloader Atmega queimando giude. Mas desta vez aposto que na primeira tentativa você vai conseguir !!

Este é o tutorial de gravação do bootloader de Nick Gammons para placas Arduino.

Etapa 1: algumas palavras

Algumas palavras
Algumas palavras

O microcontrolador Atmega328P-PU é um dos chips Arduino mais populares, usados em uma ampla variedade em todo o mundo. Mas o mais importante, o esqueleto do Atmega ainda faz o que o Uno R3 padrão pode fazer. A principal razão pela qual adoro este microcontrolador é o modo "Low Power". Eu escrevi alguns novos esboços para alguns sensores e estou testando-os por um tempo agora.

Há alguns anos, quando comecei a usar o Arduino, meu primeiro pedido foi um microcontrolador Atmega328P. Mais tarde, percebi que os que encomendei da Aliexpress são chips em branco. Os chips são muito baratos no Ali, você pode comprá-los a partir de 1,40 $. Mas eles não continham o Uno Bootloader (Optiboot) e sem ele eu não poderia fazer upload de nenhum esboço. Ruptura difícil ha ?? !! Foi um banho muito frio para mim … Então, eu estava procurando uma maneira de queimar o bootloader nos chips. Tentei 5 ou 6 métodos, mas sem sorte. Depois de uma semana, encontrei um tópico no fórum de um site que mencionava o tutorial de gravação do bootloader de Nick Gammon. Primeira tentativa e SUCESSO !!: D Agora vou mostrar a você como gravar o bootloader em chips Atmega328P-PU em branco facilmente sem bagunçar coisas no IDE do Arduino.

Etapa 2: O que é o Bootloader? (Optiboot)

O bootloader é um pequeno programa (arquivo HEX, 0,5Kbyte) que permite fazer upload de esboços para a memória flash diretamente do IDE do Arduino. O arquivo HEX sempre roda antes do programa principal e por isso é necessário.

Sem o bootloader:

-O microcontrolador ainda PODE SER PROGRAMADO! (Sim, é possível), mas você precisaria de um programador AVR dedicado para fazer isso. E não é barato!

- Não pode ser programado por meio do IDE do Arduino.

Carregadores de inicialização com suporte para este método:

Atmega8 (1024 bytes)

Atmega168 Optiboot (512 bytes)

Atmega328 Optiboot (para Uno etc. a 16 MHz) (512 bytes)

Atmega328 (8 MHz) para Lilypad etc. (2.048 bytes)

Atmega32U4 para Leonardo (4096 bytes) Atmega1280 Optiboot (1024 bytes)

Atmega1284 Optiboot (1024 bytes)

Atmega2560 com correções para problema de watchdog timer (8192 bytes)

Atmega16U2 - o bootloader no chip de interface USB do Uno

Atmega256RFR2 - o bootloader na placa Pinoccio Scout

O código para os carregadores de inicialização a seguir está incorporado no esboço e será baixado dependendo de qual assinatura for detectada.

Portanto, temos tudo o que precisamos.

Etapa 3: mestre de esboços do Arduino

Arduino Sketches Master
Arduino Sketches Master
Arduino Sketches Master
Arduino Sketches Master
Arduino Sketches Master
Arduino Sketches Master

Em primeiro lugar, você precisa da biblioteca do arduino.

Baixe aqui:

Ou faça o download aqui.

Depois de fazer o download, extraia-o para as bibliotecas do Arduino e procure o Board Programmer. Abra-o e execute o Board Programmer.ino.

Etapa 4: A configuração do hardware

A configuração do hardware
A configuração do hardware
A configuração do hardware
A configuração do hardware
A configuração do hardware
A configuração do hardware
A configuração do hardware
A configuração do hardware

Existem 3 maneiras de conectar antes da programação:

- Use o escudo AVR ISP

- Arduino A para Arduino B

- E o método breadboard

Na foto você pode ver como fazer a ligação. Na placa de ensaio, os capacitores de cerâmica não são realmente necessários, mas o cristal de 16 MHz deve ser adicionado.

Estou usando meu escudo AVR ISP neste momento.

O objetivo deste método é que o programa use o monitor serial para acessar a memória flash para escrever o Optiboot (bootloader)

Etapa 5: A programação

A programação!
A programação!
A programação!
A programação!

Depois que a configuração do hardware estiver concluída, execute Board Programmer.ino!

Compile e carregue no seu Arduino, mas não feche a janela !! Você vai precisar:)

O upload levará alguns segundos.

Etapa 6: Desconecte

Depois de fazer o upload do esboço, desconecte o Arduino do seu PC e conecte tudo se você planeja fazer isso na placa de ensaio.

Se você usar o escudo AVR, coloque o chip Atmega no soquete ZIF e "trave".

Muito importante: Enquanto o hardware não estiver configurado, o processador não deve obter VCC !! Assim você arrisca um dano !!

Etapa 7: Conecte-se

Conectar!
Conectar!

OK! O hardware está configurado e tudo está no lugar, conectamos o Arduino ao PC.

Em seguida, abra o monitor serial e defina a taxa de baud 115200 e você verá isso.

No monitor serial, você pode ver que o Arduino entrou no modo de programação. Legal!!:)

Como queremos programar o Uno (Atmega328P), digite um "U" no prompt de mensagem e pressione Enter.

Etapa 8: Estado de programação

Estado de programação!
Estado de programação!

Na próxima janela você verá isso.

Não vamos sair ou verificar, digite um G e aperte enter!

Etapa 9: A diversão começa!:)

A diversão começa!:)
A diversão começa!:)

Depois de pressionar Enter, você verá o seguinte:

Apagando chip … Gravando bootloader …

Página de confirmação a partir de 0x7E00 Página de confirmação a partir de 0x7E80

Confirmando página começando em 0x7F00

Confirmando página começando em 0x7F80

Escrito. Verificando …

Nenhum erro encontrado.

Gravando fusíveis … LFuse = 0xFF

HFuse = 0xDE

EFuse = 0xFD

Byte de bloqueio = 0xEF Calibração do relógio = 0x9E

Feito.

Modo de programação desativado. Digite 'C' quando estiver pronto para continuar com outro chip …

E feliz dia !!: D Seu chip Atmega328P agora está pronto para fazer upload de esboços!

Isso foi fácil, não foi?:)

Etapa 10: Um Novo Chip

Se você quiser programar outro chip, desconecte o Arduino do seu PC, substitua o chip por um vazio. Reconecte o Arduino e execute as etapas novamente.

Se o monitor serial não responder após reconectar o Arduino, não entre em pânico, apenas feche-o e abra um novo.

Etapa 11: ISENÇÃO DE RESPONSABILIDADE

EU NÃO POSSUO NADA DISSO!! Todo o crédito vai para Nick Gammon !!

Acabei de mostrar este método neste Instructable.

Espero que você ache isso útil.

Tenha um bom dia.

Etapa 12: Quando coisas estranhas acontecem

Quando coisas estranhas acontecem
Quando coisas estranhas acontecem
Quando coisas estranhas acontecem
Quando coisas estranhas acontecem

Recentemente recebi este Arduino Nano com processador Atmega328P-MU.

Tentei enviar um esboço para ele, mas não consegui. O processador não respondeu a nada com as opções Atmega328.

OK! Portanto, talvez o carregador de inicialização esteja corrompido e precise ser reescrito. Eu conectei com outro arduino e fiz a queima do bootloader. Nada ainda……!!!!

Ok então, eu preciso de um freio (café e um cigarro) !! Como última chance, selecionei o Arduino Uno novamente como alvo. Upload completo: D

No momento eu tenho um Nano que atua como um Arduino Uno. Não sei por que isso aconteceu, mas acho que é por causa da assinatura do processador. De qualquer forma, realmente fez o meu dia e é um pouco engraçado:)

Recomendado: