LusoRobótica - Robótica em Português

Sistemas específicos => Arduino / AVR => Tópico iniciado por: siralex em 17 de Fevereiro de 2010, 00:51

Título: Duvida de newbie
Enviado por: siralex em 17 de Fevereiro de 2010, 00:51
Depois de procurar e não encontrar nada peço a vossa ajuda. Não encontrei nada que de explicasse como fazer  mas também não encontrei nada da dizer que não era possível.
Tenho dois duemilanove, um já tem sketch compilado e gravado, preciso de copiar para o outro para ficar com o mesmo código nos dois.
Não tenho acesso ao código para alem do que já esta gravado no arduino.
No fundo a minha duvida é como posso fazer download do arduino para o Mac?

Obrigado
Alex
Título: Re: Duvida de newbie
Enviado por: LordNelthon em 17 de Fevereiro de 2010, 11:53
Não te posso dar certezas mas acho que não é possível acederes ao código que está no arduino, o que lá está é o código compilado. Será muito difícil aceder-lhe, agora pode é haver sistemas que copiem o que está no atmega para outro mas isso já não sei.
Título: Re: Duvida de newbie
Enviado por: Tyran em 17 de Fevereiro de 2010, 19:44
hmm talvez usando a opção de arduino como ISP seja possível fazeres o download do hex... pesquisa por isso...
Título: Re: Duvida de newbie
Enviado por: tcustodio em 17 de Fevereiro de 2010, 20:22
Sim, é possível descarregar da memória flash do atmega o seu conteúdo, e programá-la no outro atmega, mas para isso é preciso um programador ISP, ou então o método de Bit-Bang do FTDI, mas acho que é um assunto que tem pano pra mangas...
Título: Re: Duvida de newbie
Enviado por: TigPT em 17 de Fevereiro de 2010, 20:58
Exacto, visto que o código já está programado no arduino através de um bootloader, creio que a única maneira de o colunar sem o código fonte é com um programador de AVRs por ICSP.
Título: Re: Duvida de newbie
Enviado por: Njay em 17 de Fevereiro de 2010, 23:41
O protocolo que o bootloader do arduino usa, o protocolo do STK500, suporta leitura das memórias (FLASH, EEPROM), e eu já vi no código do bootloader do arduino que eles implementaram o comando de leitura.

Agora como usar isto... provavelmente dá para usar o avrdude.exe (aplicação de linha de comando do WinAVR que já vem com a instalação do ambiente do arduino e que é usado para gravar os sketchs), mas isso já vais ter que "fuçar" sozinho...

O avrdude.exe tá em

arduino-001x\hardware\tools\avr\bin

e a documentação do mesmo em

arduino-001x\hardware\tools\avr\doc\avrdude\avrdude.pdf

O programmer-id para o arduino deve ser o avrisp e o comando de acesso às memórias o -U. Depois é sacar de um arduino e gravar no outro. É melhor treinares antes num outro arduino porque podes enganar-te e apagar qualquer coisa ou até mesmo mexer nos bits fusíveis (fuses) ou de bloqueio (lock) e já só recuperas o chip com um programador "mais a sério".
Título: Re: Duvida de newbie
Enviado por: siralex em 18 de Fevereiro de 2010, 16:14
Obrigado a todos, vou "fuçar" a ver no que dá.
 8)
Alex