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
-
Boa noite,
estou a fazer o upload para o meu atmega1280 mas obtenho sempre o mesmo erro:
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.
-
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.
-
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.
-
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)
-
gcc version 4.3.3 (WinAVR 20100110)
Version 5.10, compiled on Jan 19 2010 at 10:45:23
-
Vê o edit.
-
Tenho este programador: http://www.sparkfun.com/products/9825 (http://www.sparkfun.com/products/9825)
É o USB Tiny ISP.
-
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.
-
Onde se pode comprar isso a bom preço?
Procurei na Sparkfun e nada...
Alguem aqui no forum tem um para venda?
-
Na Mouser ou na Digikey.
-
É 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) ?
-
Sim, é isso.
-
Vou mandar vir este e outro material... quem quiser coisas da Mouser diga-me até amanha.
-
Já tenho um dragon e já o tentei usar para programar mas dá-me um erro:
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.
-
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.
-
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...