LusoRobótica - Robótica em Português

Sistemas específicos => Arduino / AVR => Tópico iniciado por: filipe89 em 26 de Março de 2013, 21:23

Título: ICSP atmega328-PU
Enviado por: filipe89 em 26 de Março de 2013, 21:23
estou a tentar meter o bootloader num atmega328-PU via porta paralela segundo este esquema
http://www.arduino.cc/en/Hacking/ParallelProgrammer (http://www.arduino.cc/en/Hacking/ParallelProgrammer)
 mas está a dar-me o erro:
Código: [Seleccione]
avrdude: AVR device not responding
avrdude: initialization failed, rc=-1
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for ATMEGA328P is 1E 95 0F

estou a fazer alguma coisa mal?
Título: Re: ICSP atmega328-PU
Enviado por: tops72 em 26 de Março de 2013, 21:50
Eu com esse tipo de fichas nunca fiz mas com o ARV e FTDI que comprei esta semana ainda nao me correu nada bem,mas ainda nao tive muito tempo.

Se alguém tiver ai um bom tutorial para colocar o bootloader por AVR que deixe o link.
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 26 de Março de 2013, 21:52
experimentei com este cabo http://electronics-diy.com/avr_programmer.php (http://electronics-diy.com/avr_programmer.php) que já tinha feito à uns tempos para um AVR, e nada, dizia o erro 0x00
Título: Re: ICSP atmega328-PU
Enviado por: CBX em 26 de Março de 2013, 21:57
O teu micro é um 328-PU, tens selecionado o 328P-PU
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 26 de Março de 2013, 22:01
Como mudo para o s/ P??
Título: Re: ICSP atmega328-PU
Enviado por: CBX em 26 de Março de 2013, 22:04
não mudas, ou compilas o bootloader para esse micro ou usas o parâmetro "-F" para ignorar a verificação da assinatura, vai funcionar na mesma sem problemas porque o arduino não usa nenhuma das funções do picopower
Título: Re: ICSP atmega328-PU
Enviado por: tops72 em 26 de Março de 2013, 23:23
Se alguem tiver tb uma pcb ja feita em Eagle,tipo um clone do arduino,e se me quiser oferecer agradecia.
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 26 de Março de 2013, 23:30
não mudas, ou compilas o bootloader para esse micro ou usas o parâmetro "-F" para ignorar a verificação da assinatura, vai funcionar na mesma sem problemas porque o arduino não usa nenhuma das funções do picopower

esse -F é posto no atalho certo?
Título: Re: ICSP atmega328-PU
Enviado por: CBX em 26 de Março de 2013, 23:36
que atalho?
Título: Re: ICSP atmega328-PU
Enviado por: Hugu em 26 de Março de 2013, 23:40
Se alguem tiver tb uma pcb ja feita em Eagle,tipo um clone do arduino,e se me quiser oferecer agradecia.

layout da pcb de que pcb? do arduino? acho k no site do arduino.cc estao la os eagle files das boards...
eu ja tenho algumas pcbs feitas do arduino serial e algumas shields, tipo lol-shield, motor-shield, e posso mandar fazer de outras boards...
Título: Re: ICSP atmega328-PU
Enviado por: tops72 em 26 de Março de 2013, 23:46
Hugo algo tipo isto.

[url]http://api.ning.com/files/VHb649odKsR6AvXPiI5f4HI-OIHNGaiKnA96cRBgDwckwLCEYU97zI134*nfmwNeQPUFLCBp3cW5RB7FUXz3gNirZE8JoD7Q/DSCN2028.JPG
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 26 de Março de 2013, 23:49
que atalho?

atalho para o programa do arduino, pelo menos é com isso que estou a tentar meter o bootloader
Título: Re: ICSP atmega328-PU
Enviado por: CBX em 27 de Março de 2013, 00:16
não, faz isso na linha de comandos com o avrdude, poupas muito tempo e chatisses

@tops72: http://lusorobotica.com/index.php?topic=5809.0 (http://lusorobotica.com/index.php?topic=5809.0)
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 27 de Março de 2013, 00:35
:/ dá-me uma pequena ajuda,
comandos e onde é que o arduino grava o bootloader em .hex

Código: [Seleccione]
avrdude -c avrisp -p m328 -v -e -U flash:w:hexfilename.hex -U lock:w:0x0F:m??
Título: Re: ICSP atmega328-PU
Enviado por: CBX em 27 de Março de 2013, 00:56
para programar precisas da seguinte sintaxe:

-p -> o microcontrolador a programar
-c -> o teu programador
-P -> porta a que o programador está ligado
-F -> ignora a assinatura
-U -> grava "qualquer coisa"

em primeiro lugar tens de gravar os fuses manualmente, para o bootloader do uno é uma coisa do género:

avrdude -p m328 -c avrisp -P com5 -F -U lfuse:w:0xff:m -U hfuse:w:0xde:m -U efuse:w:0x05:m

para gravar o bootloader, na linha de comandos navegas até à pasta onde está o bootloader (ou alternativamente copias o ficheiro .hex para a raiz do disco, mais simples) ou especificas no "flash:w:hexfilename.hex" o caminho absoluto até ao ficheiro.

o código para gravar o bootloader é semelhante:

avrdude -p m328 -c avrisp -P com5 -F -U flash:w:hexfilename.hex
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 27 de Março de 2013, 01:10
já estava a espera de algo do género, não dá com porta paralela.
Título: Re: ICSP atmega328-PU
Enviado por: CBX em 27 de Março de 2013, 01:24
não dá porquê?
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 27 de Março de 2013, 01:29
diz:
Código: [Seleccione]
Can't set buffers for "lpt1"
EDIT:

Experimentei com um cabo que já tinha feito (https://lusorobotica.com/proxy.php?request=http%3A%2F%2F1.bp.blogspot.com%2F_B8Dh2WXNvg0%2FSpleeJeRIZI%2FAAAAAAAAC9k%2FCExjABYOHYc%2Fs400%2FRangkaian%2BDownloader.jpg&hash=624bf4a6eab0f5ee775e600248a2c2dec92fd718) com este esquema, mas deu-me not in sync: resp=0x00 depois de tirar o -F
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 27 de Março de 2013, 02:22
Coisa esquisita...

fui para o linux, mudei o ficheiro avrdude.conf, não consigo enviar o bootloader, mas já consegui enviar um  programa de blink, supostamente de 1000 uS mas ele faz para aí em 15 seg
Título: Re: ICSP atmega328-PU
Enviado por: Njay em 27 de Março de 2013, 06:27
Não vale a pena meter o -F, se ele funcionar tem que funcionar sem -F.
Com a porta paralela experimenta meter é -i 50
O cabo da porta paralela entre o PC e o ATmega não deve ter mais de 30 - 40cm. Aliás, no caso desse programador, menos ainda, o ideal era o AVR estar ali mesmo "em cima" da ficha.
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 27 de Março de 2013, 14:04
ontem ainda consegui passar um bootloader com o programa do arduino, não sei se influenciou se não, mas tinha ligado a porta série.

mas depois ao enviar um programa pela porta série dizia o erro not in sync: resp=0x43 entre outros.

Será que o bootloader ficou mal gravado por causa do comprimento do cabo?
Título: Re: ICSP atmega328-PU
Enviado por: dropes em 27 de Março de 2013, 16:20
Código: [Seleccione]
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for ATMEGA328P is 1E 95 0F

A única coisa que verifico aqui é o endereço detectado pelo avrdude ser diferente do micro.
Edita o ficheiro "avrdude.conf" e procura pelo "ATmega328P"
A seguir em "signature" altera o valor para 0x1e 0x95 0x0f ou 0x1e 0x95 0x14
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 27 de Março de 2013, 19:43
já tinha alterado.
acredito que tenha sido o bootloader mal gravado, hoje arranjei um arduino e vou tentar passar por ai
Título: Re: ICSP atmega328-PU
Enviado por: filipe89 em 27 de Março de 2013, 22:29
Com outro arduino foi só alterar o ficheiro para 0x1e 0x95 0x14 fazer o bootloader e voltar ao que estava