LusoRobótica - Robótica em Português

Sistemas específicos => Arduino / AVR => Tópico iniciado por: SJD22 em 27 de Novembro de 2011, 02:27

Título: Erro em upload para ATMega1280
Enviado por: SJD22 em 27 de Novembro de 2011, 02:27
Boa noite,

estou a fazer o upload para o meu atmega1280 mas obtenho sempre o mesmo erro:

Código: [Seleccione]
avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x10000
         0x1d != 0x0c
avrdude: verification error; content mismatch

avrdude: safemode: Fuses OK

avrdude done.  Thank you.

O programa ocupa 55.5% da flash... se tirar algumas linhas e blibliotecas fico com 41.9% ocupado e já consigo uploadar para o processador.

O que se está a passar? dá ideia que não posso ocupar mais de 50% da flash... estranho! :(

Obg.
Título: Re: Erro em upload para ATMega1280
Enviado por: senso em 27 de Novembro de 2011, 02:47
Que versão do gcc estás a usar?
Estás a compilar mesmo para o 1280?
E a versão do avrdude?
Ele está mesmo a dar erro a partir do momento que lê o primeiro byte que tenta ler mais de 64K de flash.
Título: Re: Erro em upload para ATMega1280
Enviado por: SJD22 em 27 de Novembro de 2011, 02:53
Não faço ideia onde vejo a versao do gcc nem do avrdude... :)

Eu faço tudo em notepad e compilo em linha de comandos...

Estou a usar esta configuração no make file: CFLAGS += -Wall -gdwarf-2 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums

Sim, estou mesmo a compilar para o 1280.
Título: Re: Erro em upload para ATMega1280
Enviado por: senso em 27 de Novembro de 2011, 02:57
Algo tipo simplesmente escrever avr-gcc ou avr-gcc -v, e o avrdude é avrdude -v tambem.
E que programador estás a usar?
Nem todos suportam mais de 64Kbytes devido a bugs/poupança de espaço no código dos mesmos, por exemplo o usb tiny da ladyada não o suporta:
http://forums.adafruit.com/viewtopic.php?f=20&t=14752 (http://forums.adafruit.com/viewtopic.php?f=20&t=14752)
Título: Re: Erro em upload para ATMega1280
Enviado por: SJD22 em 27 de Novembro de 2011, 02:59
gcc version 4.3.3 (WinAVR 20100110)

Version 5.10, compiled on Jan 19 2010 at 10:45:23
Título: Re: Erro em upload para ATMega1280
Enviado por: senso em 27 de Novembro de 2011, 03:01
Vê o edit.
Título: Re: Erro em upload para ATMega1280
Enviado por: SJD22 em 27 de Novembro de 2011, 18:25
Tenho este programador: http://www.sparkfun.com/products/9825 (http://www.sparkfun.com/products/9825)

É o USB Tiny ISP.
Título: Re: Erro em upload para ATMega1280
Enviado por: senso em 27 de Novembro de 2011, 22:13
Note: This product is a collaboration with Limor Fried. A portion of each sales goes back to them for product support and continued development.
Ou seja é um programador by LadyAda, e por isso estás limitado a 64Kbytes de codigo, o melhor é mesmo comprar um Dragon.
Título: Re: Erro em upload para ATMega1280
Enviado por: SJD22 em 28 de Novembro de 2011, 12:00
Onde se pode comprar isso a bom preço?

Procurei na Sparkfun e nada...

Alguem aqui no forum tem um para venda?
Título: Re: Erro em upload para ATMega1280
Enviado por: senso em 28 de Novembro de 2011, 12:32
Na Mouser ou na Digikey.
Título: Re: Erro em upload para ATMega1280
Enviado por: SJD22 em 28 de Novembro de 2011, 22:14
É isto: http://pt.mouser.com/ProductDetail/Atmel/ATAVRDRAGON/?qs=bfm%2fOTQPtMSBdktIZaKRJg%3d%3d (http://pt.mouser.com/ProductDetail/Atmel/ATAVRDRAGON/?qs=bfm%2fOTQPtMSBdktIZaKRJg%3d%3d) ?
Título: Re: Erro em upload para ATMega1280
Enviado por: senso em 28 de Novembro de 2011, 22:16
Sim, é isso.
Título: Re: Erro em upload para ATMega1280
Enviado por: SJD22 em 28 de Novembro de 2011, 22:26
Vou mandar vir este e outro material... quem quiser coisas da Mouser diga-me até amanha.
Título: Re: Erro em upload para ATMega1280
Enviado por: SJD22 em 02 de Dezembro de 2011, 19:00
Já tenho um dragon e já o tentei usar para programar mas dá-me um erro:


Código: [Seleccione]
avrdude -p m1280 -c dragon_jtag -b 57600 -F -U flash:w:V1.hex
avrdude: ser_open(): can't set buffers for "lpt1"


Alguma vez apareceu isto a alguém?

Obg.
Título: Re: Erro em upload para ATMega1280
Enviado por: senso em 02 de Dezembro de 2011, 19:37
Eu uso o dragon dentro o AvrStudio, mas falta-te ai o -P que define qual é o interface a usar, se é COMx ou outra coisa, o defeito é lpt dai te dar esse erro, e o dragon fala com o serial a 115200, podes é alterar a velocidade a que ele faz o ISP, JTAG não sei como é que nunca usei, mas se usas AvrStudio é bem mais simples programar pelo mesmo do que andar com o avrdude.
Título: Re: Erro em upload para ATMega1280
Enviado por: SJD22 em 02 de Dezembro de 2011, 20:45

Ok, já meti "-P COM3" e já não tenho esse erro.

Estou a usar "-c dragon_isp" e agora o erro é:

avrdude: jtagmkII_recv_frame(): timeout
avrdude: jtagmkII_getsync(): sign-on command: status -1

Estranho ele falar em jtagmkII quando eu estou a usar ISP...