Programando o bootloader em Arduino Nano

Comprei meu segundo Arduino Nano v3.0 na Deal Extreme, Arduino Nano – DX , como sempre rapidamente desempacotei o bichinho para fazer um teste rápido… Para minha tristeza, ele não funcionou!! Depois de algumas pesquisas na Internet, descobri que muito provavelmente ele veio sem o bootloader instalado! Será que perdi meu rico dinheirinho ?

Depois de pesquisar alguns sites, em especial um da SparkFun, consegui um bom procedimento para carregar o bootloader. Para quem nao sabe, o bootloader é o programa inicial que roda no controlador Atmel, o procesador do Arduino, que habilita o Placa a se comunicar com o IDE para que seja programado.

O que voce precisa?
– Arduino a ser programado
– USBAsp ( programador Atmel – SPI )
– Cabo entre o USBAsp e Arduino
– IDE Arduino

Felizmente eu já havia comprado um programador UsbASP , o que me facilitou bastante. Existem também opções de se usar um outro Arduino para fazer o papel do USBAsp, descrito no próprio site da SparkFun. Este é o link para o artigo.

O USBAsp também pode ser comprado no Deal Extreme.

Aqui vai o procedimento que executei:

O primeiro passo é conectar o cabo entre o Arduino e o UsbASP

usbasp_pinout

Este é o pinout do USBAsp

Prog_ICSP_atmel_pinout

nano-pinout

Este é o pinout do Arduino Nano.

Um cabo entre o USBAsp deveria ficar assim:

CaboUSBASP-Adruino

Mosi é o pino 1 do Conector SPI do UsbASP e Miso é o pino 1 do Conector SPI do Arduino, a contagem dos pinos é de cima para baixo e da esquerda para a direita.

1 2
3 4
5 6

No windows será necessário instalar um driver, eu baixei o meu deste link

Se tudo for feito corretamente, basta conectar o USBAsp na interface USB e utilizar o proprio IDE do Arduino para carregar o Bootloader ( Já existe esta opção na IDE versão 1.0.1 )

Inicie a IDE, certifique-se que a placa está correta, na opção Board, e depois vá na opção Tools e Burn Bootloader, seleciona o dispositivo usbasp, e voí-lá! Durante o procedimento a luz laranja do Arduino Nano Ficará acesa indicando que o Arduino está recebendo o bootloader.

Após este procedimento fui na Ide, e fiz um pequeno programa “Hello Wolrd!”, que executou com sucesso! Pronto para mais projetos!

// the setup routine runs once when you press reset:
void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600);
}

// the loop routine runs over and over again forever:
void loop() {
Serial.println(“Alo Mundo!”);
delay(1000); // delay
}

Se voce abrir o monitor da serial deve ver a mensagem na tela.

Abraço!