Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
O Atmel Studio é uma ferramenta poderosa para fazer programas AVR, mas escrever um programa é o primeiro passo. Para usar seu programa, você deve fazer um circuito e transferir seu código para o microcontrolador. Você pode programar seu AVR no Atmel Studio usando o hardware STK500. Por que você não pode programar MCU diretamente do computador por hardware barato como microcontroladores PIC? A resposta é que para transferir seu programa para o IC você deve usar a conexão SPI, mas não há porta SPI no PC. Existem muitos softwares que usam a porta RS232 como SPI, mas você não pode programar seu AVR diretamente do Atmel Studio como eles. Aqui, apresento o software que simula o hardware STK500 no PC e envia dados para o microcontrolador usando RS232 por meio de um hardware simples e barato. Observe que o uso de PC RS232 como porta SPI é lento e a programação do chip levará mais tempo do que um dispositivo STK500.
Etapa 1: Fazendo o Hardware
Para fazer o hardware que você precisa:
- Cabo de cerca de 1 metro com 5 fios ou mais
- Conector DB9 fêmea
- Cabeçalho do pino
- 3 resistências de 4,7 K
- 3 diodos Zener de 5,1 V
- Ferramentas de solda
Solde os resistores nos pinos 3, 4, 6 e 7 do conector DB9, solde o pino N dos diodos na outra extremidade dos resistores e solde a outra perna dos diodos no pino 5 do conector DB9. Solde os fios do cabo entre resistores e diodos e pinos 4 e 5 do conector DB9. Solde a outra extremidade dos fios do cabo na parte fêmea do conector do pino.
Olhar para o diagrama de circuito irá ajudá-lo muito ao fazer o hardware.
Observe que o pino RESET do microcontrolador deve ser conectado a + 5V por meio de um resistor de 10K em seu circuito se não houver um resistor pull-up no próprio microcontrolador.
Etapa 2: portas virtuais
Antes de usar o software WinSTK500, você precisa de um par de portas seriais virtuais. Existem muitos softwares de emulação de porta serial virtual como o Emulador de Portas Seriais Virtuais, com0com (espelho) e etc. Aqui eu usei o software com0com. Depois de instalar o com0com, crie um par de portas seriais virtuais como as da imagem.
Etapa 3: Instalando o WinSTK500
Baixe o WinSTK500 de https://www.dihav.com/winstk500/ e instale-o em seu PC.
Se você deseja acessar o WinSTK500 facilmente, execute o Atmel Studio e, no menu Ferramentas, selecione Ferramentas externas…, adicione uma nova ferramenta, defina o título para WinSTK500, selecione [Local de instalação] dihav / WinSTK500 / WinSTK500.exe como o comando e clique em OK. Agora você pode encontrar o WinSTK500 no menu Ferramentas.
Etapa 4: Conectando ao WinSTK500
Conecte seu MCU ao hardware e conecte-o à porta serial RS232. Execute o Atmel Studio, selecione WinSTK500 no menu Ferramentas, selecione CNCB0 como porta STK, selecione a porta serial do computador (geralmente COM1) como porta SPI e clique no botão Iniciar. Clique em Adicionar destino… no menu Ferramentas e adicione uma ferramenta STK500 na porta CNCA0. Escolha a programação do dispositivo no menu Ferramentas, selecione STK500 CNCA0 no menu suspenso Ferramenta, escolha o seu microcontrolador e use a interface do ISP e, a seguir, clique no botão Aplicar. O Atmel Studio será conectado ao WinSTK500.
Etapa 5: configurações do WinSTK500
Depois de se conectar ao WinSTK500, você pode ver 3 itens relacionados à ferramenta na parte superior dos itens localizados no painel esquerdo da janela Device Programming.
- Você pode alterar a frequência do relógio SPI nas configurações de interface, mas observe que o WinSTK500 é um dispositivo lento e só oferece suporte a 10-25 KHz, a frequência padrão é de cerca de 16 KHz, o que é recomendável não alterá-la.
- As informações da ferramenta são apenas algumas informações sobre a ferramenta.
- As configurações da placa são apenas algumas variáveis que não afetam o WinSTK500.
Existem também duas opções na janela WinSTK500:
- A redefinição de falha de comando define o comportamento do WinSTK500 quando o comando não é executado e geralmente é definido como Pino SCK. Se você tentou programar várias vezes e encontrou um erro de tempo limite e todas as conexões estão OK, tente alterar esta opção. Você também pode encontrar algumas informações sobre esta opção na folha de dados do seu microcontrolador.
- Se após conectar ao WinSTK500, Atmel Studio disser que o firmware do STK deve ser atualizado, aumente a versão do software para evitar esta mensagem.
Etapa 6: Programando Seu Microcontrolador
Depois de conectar seu microcontrolador ao Atmel Studio via WinSTK500, você pode programá-lo na janela de programação do dispositivo. Observe que, após a programação, o pino RESET não ficará alto, portanto, para executar o programa, o cabo de programação deve ser desconectado.
Etapa 7: o WinSTK500 pode programar AT89?
A diferença entre a programação de AVR e AT89 é a polaridade do pino RESET. Portanto, você deve usar outro hardware que coloquei seu diagrama de circuito aqui. Eu não testei, mas deve funcionar corretamente. Se você conseguiu e funcionou bem, diga a mim e aos outros leitores nos comentários.