- Componentes necessários
- Diagrama de pinos de Atmega328
- Descrições de componentes
- Parte 1: Construindo o circuito Arduino na placa de ensaio
- Parte 2: Gravando o Bootloader em Atmega328 IC
- Parte 3: Como programar o Arduino Bootloader carregado Atmega 328
- Programando chip Atmega328 usando placa Arduino
- Programação do chip Arduino Atmega328 usando conversor USB para serial
Todos nós sabemos que, o Atmega328 IC é usado na placa Arduino UNO. Este IC é o cérebro da placa Arduino. Na verdade, os designers do Arduino queriam fazer uma placa de prototipagem útil para os iniciantes, de forma que eles organizassem todos os componentes de forma que qualquer pessoa pudesse acessar todos os pinos do IC Atmega328 e programá-lo apenas conectando-o ao computador. A placa Arduino é muito popular para a construção de projetos de hobby. Mas em produtos industriais ou de consumo, não é uma boa ideia usar a placa Arduino completa, então podemos usar o IC Atmega328 autônomo, que pode ser programado com o IDE do Arduino, mas sem usar a placa Arduino.
Neste tutorial, veremos como substituir a placa Arduino por Atmega328 IC e alguns outros componentes. Para usar o Atmega328 IC no lugar do arduino, primeiro temos que queimar o Arduino Bootloader nele e então iremos programá-lo usando FTDI ou usando a placa Arduino. Este tutorial também ajudará na substituição de Atmega328 IC danificado da placa Arduino. Também usando o circuito descrito abaixo, você pode construir sua própria placa Arduino replicando-a no PCB.
Componentes necessários
- Atmega 328 IC
- Tábua de pão
- LM7805
- Cristal 16 MHz
- Capacitores de cerâmica 22pF (2)
- Capacitor 10uF (2)
- Resistor de 10 K
- Resistor 1k
- Fios de ligação
Opcionalmente, você também pode usar o regulador de tensão de 3,3 V LM1117-3,3 V para incluir um trilho de 3,3 V em seu circuito.
Diagrama de pinos de Atmega328
Descrições de componentes
Parte da fonte de alimentação
- Regulador de tensão 5V: Atmega 328 IC funciona com fonte de alimentação 5V. Então, aqui, estamos usando o LM7805 para obter uma saída de 5v, ele pode lidar com até 30V como entrada. Se você tiver uma fonte de 5 V separada, pode sair desta etapa.
- Capacitores: o capacitor de 10uF é usado na parte de entrada e saída do 7805 para desviar qualquer componente CA para o aterramento.
- LED: Isso mostrará que sua saída de 5 V está chegando.
Parte do microcontrolador
- Atmega 328: este é o nosso principal componente na placa de ensaio. Seu diagrama de pinos é fornecido acima.
- Oscilador de cristal: Um cristal externo de 16 MHz é conectado entre os pinos 9 e 10 do ATmega328. Este cristal é usado para dar relógio ao microcontrolador para executar as tarefas mais rapidamente.
- Botão de pressão: para reiniciar o microcontrolador, um botão de pressão é conectado entre o pino 1 e o GND. Normalmente, ele é conectado com 5v usando um resistor de 10k.
- LED: Um led está conectado ao pino digital 13.
Este tutorial completo é dividido em três partes para fazer seu próprio Arduino rodando na placa de ensaio:
- Construindo o circuito Arduino na placa de ensaio
- Gravando o Bootloader em Atmega328 IC
- Como programar o Arduino Bootloader carregado Atmega 328 IC na placa de ensaio.
Agora vamos explicar cada parte uma por uma.
Parte 1: Construindo o circuito Arduino na placa de ensaio
Etapa 1: - Conecte a peça da fonte de alimentação conforme mostrado no diagrama do circuito e teste-a usando uma fonte de alimentação externa ao LM7805. Será parecido com isso.
Etapa 2: - Agora, conecte a peça do microcontrolador conforme mostrado no diagrama do circuito. Faça as conexões com cuidado.
Passo 3: - Agora, conecte a fonte de alimentação e a parte do microcontrolador usando jumpers. Seu circuito final será parecido com isto.
Portanto, este é o nosso Arduino na placa de ensaio. Você pode implementar o mesmo circuito no PCB usando ferramentas simples como EasyEDA, etc. Agora, temos que fazer o upload do bootloader para o novo Atmega 328 IC para que possamos começar a programar o IC.
Parte 2: Gravando o Bootloader em Atmega328 IC
O que é bootloader e por que precisamos dele ??
Bootloader é um pequeno pedaço de código executável armazenado permanentemente na memória do microcontrolador. Isso ocupa menos de 1 KB de memória. O bootloader permite que o IC aceite o código do computador e o coloque na memória do microcontrolador.
Tradicionalmente, todos os microcontroladores da Atmel são programados com a ajuda de programadores que possuem algumas conexões sofisticadas. Os bootloaders reduzem a complexidade e nos permitem uma maneira fácil e eficiente de programar o microcontrolador. Isso significa que você pode programá-lo usando apenas um cabo USB.
Quando você compra um novo Atmega 328 do mercado, ele não contém um bootloader. Portanto, para programar seu Atmega328 usando o Arduino IDE, você deve primeiro fazer o upload do bootloader.
Para fazer upload do Bootloader, temos dois métodos:
- Usando o programador USBasp
- Usando a placa Arduino UNO
O segundo método é mais fácil em comparação com o primeiro. Porque requer menos conexões e também a versão mais recente do Arduino IDE não suporta os sofisticados programadores USBasp.
Portanto, neste tutorial iremos fazer o upload do bootloader usando a placa Arduino Uno.
Carregue o Arduino Bootloader no chip Atmega328
Etapa 1: - Abra o IDE do Arduino. Vá para Arquivo -> Exemplos -> ArduinoISP . Em seguida, escolha ArduinoISP. Como mostrado abaixo.
Etapa 2: - Agora, você precisa fazer o upload deste código para sua placa Arduino. Escolha a porta de comunicação e a placa no menu de ferramentas e clique no botão de upload.
Passo 3: - Após ' Carregar Concluído' , desconecte a placa Arduino do computador e faça as conexões da placa Arduino com o Atmega 328 conforme mostrado no diagrama abaixo.
Passo 4: - Agora, conecte a placa Arduino ao computador. Abra o Arduino IDE.
Vá em Ferramentas, Escolha placa como Arduino / Genuine Uno, Escolha a porta correta para sua placa. Escolha Programmer como “Arduino as ISP”. Não o confunda com ArduinoISP. Ambos são diferentes.
Passo 5: - Agora, vá para Ferramentas novamente e clique em Gravar Bootloader logo abaixo da opção Programador. Após alguns segundos, o bootloader é carregado com sucesso. Se houver algum erro no upload, verifique as conexões.
Verifique o vídeo abaixo para entender as etapas explicadas acima para carregar o Bootloader no Atmega 328 IC.
Sua placa de ensaio Arduino está pronta para funcionar como uma placa Arduino real. Agora, surge a pergunta que como programar Atmega 328 IC ? Discutiremos isso em nossa próxima seção.
Parte 3: Como programar o Arduino Bootloader carregado Atmega 328
O chip Arduino Atmega328 autônomo pode ser programado de várias maneiras.
- Usando uma placa Arduino em branco, ou seja, uma placa Arduino sem Atmega 328 IC.
- Usando o módulo conversor USB para Serial TTL (módulo FTDI).
- Usando o programador USBasp (envolve muitas conexões).
Aqui, vamos programá-lo usando dois métodos: conversor USB para serial e placa Arduino.
Programando chip Atmega328 usando placa Arduino
Passo 1: - Pegue uma placa Arduino sem chip Atmega328. Faça as conexões da placa Arduino com nossa placa de ensaio Arduino conforme mostrado neste diagrama.
Passo 2: - Conecte a placa Arduino ao computador e abra o IDE Arduino. Escolha Arduino Uno no menu Placa em Ferramentas , Programador como USBasp e a porta de comunicação correta da placa.
Etapa 3: - Começaremos enviando o programa Blink. Portanto, escolha o programa blink em Exemplos e clique no botão Upload.
Agora, você pode ver que o led na placa de ensaio começará a piscar.
Programação do chip Arduino Atmega328 usando conversor USB para serial
Passo 1: - Se você não tem placa Arduino. Este é o melhor método para programar a placa de ensaio do Arduino .
Faça as conexões como:
Pino RXD de FTDI -> pino Tx de Atmega328 (pino 3)
Pino TXD de FTDI -> pino Rx de Atmega328 (pino 2)
GND -> GND (pino 8)
5v -> Vcc (pino 7)
Alguns módulos FTDI têm o pino de reinicialização também conhecido como pino DTR, que precisa ser conectado ao pino de reinicialização do Atmega328 (pino 1). Se não houver um pino de reset no módulo, não se preocupe, darei a solução quando programarmos o chip.
Passo 2: - Agora, conecte o FTDI com o computador e abra o Gerenciador de dispositivos no painel de controle. Você verá a seção Porta, Expandir. Se houver uma marca amarela na frente do driver, você deve atualizar o driver do módulo.
Se não houver marca, anote o número da porta de comunicação e abra o Arduino IDE. Vá para Ferramentas -> Portas -> Selecione o com que você anotou.
Etapa 3: - Agora, faremos o upload do programa blink para o nosso Breadboard Arduino . Vá para Arquivo -> Exemplos -> Básico -> Piscar . Escolha Arduino Uno no menu Board em tools, Programmer como USBasp e porta de comunicação correta da board.
Em seguida, clique no botão de upload.
Nota: Se o seu módulo FTDI não tiver um pino DTR, pressione o botão Reiniciar no breadboard e clique no botão de upload. Mantenha-o pressionado se disser Compilando esboço... Solte o botão assim que ele disser Carregando...
Agora, o programa será carregado com sucesso no chip Arduino Bootloader Atmega328.
Abaixo está o vídeo para programação do Atmega 328 IC sem o uso da placa Arduino:
Acabamos com nosso circuito DIY Breadboard Arduino. Você pode projetar este circuito em PCB para torná-lo mais compacto.