Sei sulla pagina 1di 3

Como fazer upload de programas para um

ATmega na protoboard usando um Arduino


O sketch ArduinoISP vem incluído na IDE do Arduino, e pode ser
usado para gravar programas no seu standalone ou montagem com
ATmega.
Você pode usar um Arduino como intermediário para enviar programas para o seu ATmega na protoboard, e
é mais simples do que parece.

Já vimos anteriormente como identificar a configuração do ATmega, como instalar bootloader e como fazer
upload de programas por meio de um conversor USB–Serial. Agora chegou a vez de unir técnicas que vimos
em 2 desses artigos anteriores para explorar a capacidade de um sketch muito especial: o ArduinoISP, criado
por Randall Bohn.

O ArduinoISP vem na coleção de exemplos instalada junto com a IDE do Arduino. Abra-o no menu File |
Examples | ArduinoISP, e transfira-o para o seu Arduino Uno do mesmo modo como transferiria qualquer
outro programa para ele.

A conexão física é simples, e já vimos anteriormente (no artigo sobre como identificar a configuração do
ATmega) uma praticamente igual, pois também fazia uso do protocolo SPI. Basta conectar, pino a pino:

Pino no Arduino Pino no ATmega


10 RST (1)
11 (MOSI) 11 (17)
12 (MISO) 12 (18)
13 (SCK) 13 (19)
5V VCC (7) e AVCC (20)
GND GND (8 e 22)

Os números entre parênteses indicam o pino físico do ATmega, que é aquele marcado em letras brancas
sobre o corpo do chip, que você pode ver no diagrama de pinagem alguns parágrafos acima.

Como fazer upload de programas


Com o sketch ArduinoISP já transferido para o seu Uno, e as conexões físicas realizadas como descrito
acima, é hora de configurar a IDE, assim:

 em Tools / Programmer, selecione “Arduino as ISP”

 em Tools / Board, selecione a placa que corresponde à configuração do seu ATmega na protoboard
(se ele estiver com a configuração que eu descrevi no artigo sobre bootloaders, será o “Lilypad
Arduino w/ ATmega328”)

 em Tools / Port mantenha selecionado a porta à qual está conectado o seu Uno

Agora abra no editor o programa que deseja enviar para o seu ATmega na protoboard, e use um pequeno
truque: ao invés de simplesmente pressionar o botão de upload na janela da IDE, mantenha apertada a tecla
Shift ao pressioná-lo.

Você verá que, enquanto o Shift estiver pressionado, a tradicional função “Upload” vai se transformar em
“Upload using Programmer”:
E, neste caso, o “Upload using Programmer” significa: “envie o código para o meu ATmega externo, usando
o Uno como intermediário”.

É só isso. Configure tudo corretamente, e dê um shift+click onde normalmente daria um click. Seu programa
será compilado e instalado no ATmega externo, com uma ajuda importante do Uno que fica de intermediário
;-)

Minha preferência pessoal é usar a alternativa do artigo anterior, fazendo o upload de programas por meio de
um conversor USB–serial como o da foto acima, mas acredito que seja apenas uma questão de conveniência:
ele está permanentemente configurado, independe de fazer algum upload prévio, e não exige procedimento
especial na operação da IDE.

Por outro lado, para usar o procedimento que eu prefiro é necessário possuir esse acessório, e é bom dispor
de alternativas que dispensem essa dependência e a substituam por outra mais simples de satisfazer ;-)

Potrebbero piacerti anche