• Welcome to LusoRobótica - Robótica em Português.
 

Sanguino

Started by c3dr1c, 27 de March de 2012, 13:26

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

c3dr1c

Oh claro que nao deu.... Da o tal erro. Enfim tou farto disto. Começo a pensar que estraguei o chip com algum descuido...

Senso posso te enviar isto para tu veres o que se passa? :P
"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke

zedlav

Bem tenho pena que tenhas desistido :-[.  Podes-me mostrar o comando que estás a executar?
não falta este argumento  -b 19200
Desculpa não te conseguir ajudar com avrdude. Talvez o pessoal do forum esteja disposto a iniciar um projecto lowcost software e programador usb (at90usb162) para fazer-mos a nosso próprio programador isp.

c3dr1c

Quote from: zedlav on 28 de March de 2012, 16:46
Bem tenho pena que tenhas desistido :-[.  Podes-me mostrar o comando que estás a executar?
não falta este argumento  -b 19200
Desculpa não te conseguir ajudar com avrdude. Talvez o pessoal do forum esteja disposto a iniciar um projecto lowcost software e programador usb (at90usb162) para fazer-mos a nosso próprio programador isp.

Tou a usar este: avrdude -c avrisp -p m644p -P COM3 -U hfuse:r:high.txt -U lfuse:r:low.txt

Epa ja tentei tanta coisa que nem sei que faça mais... Sinceramente acho que devo ter estragado o chip.
Mas sem esse argumento ele nao assume automaticamente o baudrate do windows?

Nao tens de pedir desculpa nenhuma... E o que tiveste a fazer foi ajudar ;D Eu é que agradeço muito pela tua ajuda e pelo teu tempo dispendido neste topico. Muito obrigado.
"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke

zedlav

Se ainda consegues gravar o bootloader no atmega644p pelo arduino isp então ele não está estragado. Possivelmente está é a correr a 8mhz e o bootloader está programado para 16mhz. Se o arduino-ide consegue gravar tambem tu consegues está a falhar alguma coisa aqui pelo meio.

Este tem o baudrate configurado pode ser disso.

avrdude -c avrisp -p m644p -b 19200 -P COM3 -U hfuse:r:high.txt -U lfuse:r:low.txt


vê isto http://code.google.com/p/mega-isp/wiki/AvrispArduino



c3dr1c

Ok entao ainda n vou desistir. Mais daqui a pouco ja tento, que agora tenho a cabeça cheia disto :P Ja digo alguma coisa
"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke

c3dr1c

Fogo tinhas toda a rasão... com esse parametro ja funciona :D
Finalmente alguma boa noticia... Ves como ajudas e bem :P eheheh



Vou tratar dos ficheiros para ler os fuse bits

Thanks

"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke

c3dr1c



Supostamente falta alguma coisa pois os ficheiros têm so la escrito:
ÿ  = low
Ü  = high


Eheheh ja tou bem mais animado :D
E ja percebo alguma coisa de avrdude loool
"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke

senso

É binário, e o windows está a interpretar isso como caracteres unicode, abre com um editor hexadecimal ou simplesmente não metas ficheiros que ele escreve os valores em Hex na consola.
Avr fanboy

c3dr1c

#53
Quote from: senso on 28 de March de 2012, 18:48
É binário, e o windows está a interpretar isso como caracteres unicode, abre com um editor hexadecimal ou simplesmente não metas ficheiros que ele escreve os valores em Hex na consola.

avrdude -c avrisp -p m644p -b 19200 -P COM3 -U hfuse:r -U lfuse:r

supostamente seria o codigo acima ou nao? Quer dizer, é nao, porque da me erro :P

EDIT:
bem de qualquer maneira, num conversor ai na web...

low = ÿ = %FF
high = Ü  = %DC

extended = ý = %FD
"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke

CBX

deveria ser algo deste género (estes são para um mega8):

-U lfuse:w:0xee:m -U hfuse:w:0xd9:m


usa esta calculadora:

http://www.engbedded.com/fusecalc

c3dr1c

#55
Eu bem gostava de usar. Tenho é de dominar aqueles parametros todos primeiro, que nao pesco grande coisa... :P


Ja agora, acham que devo experimentar a fazer upload de um programa no arduino IDE po 644 com o baudrate a 19200?
Acho que nao experimentei com esse baudrate...

Como dava o mesmo erro no avrdude, que no arduino IDE, antes de usar o parametro para definir o baudrate...
"O único modo de descobrir os limites do possivel é aventurarmo-nos um pouco para além deles em direcção ao impossivel."

Uma das Três Leis de Arthur C. Clarke

zedlav

Os fuse bits estão correctos. Alguém me sabe responder o arduino(ide) quando grava o bootloader ele compila antes de flashar? Se for esse o caso então vais ter de instalar com o avrdude o bootloader hex que vem no zip do sanguino. Quando compilei aqui a source do bootloader deu-me um hex bem diferente do que vem no zip mas não me dei ao trabalho de ver porquê.

CBX

só precisas de mexer nos low fuses, vais à página 32 da datasheet, tens lá tudo explicado

senso

Quote from: zedlav on 28 de March de 2012, 19:32
Os fuse bits estão correctos. Alguém me sabe responder o arduino(ide) quando grava o bootloader ele compila antes de flashar? Se for esse o caso então vais ter de instalar com o avrdude o bootloader hex que vem no zip do sanguino. Quando compilei aqui a source do bootloader deu-me um hex bem diferente do que vem no zip mas não me dei ao trabalho de ver porquê.

Penso que não, e o Arduino já tem o avrdude, assim como todo o avr-gcc e mais umas utilidades tipo sed e companhia, até porque o ide do Arduino usa o avrdude para falar com os bootloaders.
Avr fanboy

zedlav

Bem nesse caso só para tirar as duvidas eu flashava o bootloader ATmegaBOOT_644P.hex mas via comando(avrdude). Se não desse na mesma então aí passava á parte de ler a flash e comparar com o hex file ou binario este ultimo é melhor porque é igual ao que vai sair do avrdude para ser comparado.