Você pode usar o Arduino como um programador AVR?
Você pode usar o Arduino como um programador AVR?
Respostas:
Eu uso a solução mega-ISP mencionada acima - o esboço avrisp do Arduino está aqui
http://code.google.com/p/mega-isp/downloads/list
Eu não uso a blindagem que eles possuem - criei um cabo simples usando dois soquetes de conector de duas pinos de 6 pinos para encaixar o conector ISP de programação no seu Arduino. (Como eu não tinha dois soquetes dil, usei uma linha padrão padrão e colei dois soquetes de 3 pinos juntos.
Você precisa de um pedaço de cabo de fita ou algum fio.
Conecte cada pino em um soquete o correspondente no outro, com exceção do pino 5 = Reset. Conecte uma extremidade do cabo ao pino 5 - essa é a extremidade que será conectada ao AVR de destino que você deseja programar. Conecte a outra extremidade do fio 5 do pino a um conector de pino flutuante.
Para usar, conecte o cabo ao arduino colocando-o sobre o conector de programação ISP e conectando o fio flutuante ao digital 10, conecte a outra extremidade ao conector ISP de destino. Você precisa garantir que os pinos 1 correspondam.
Programar com avrdude usando
avrdude -P com7 -p t2313 -c avrisp -b 19200 -U flash: w: fred.hex
where
com7 - the com port that the Arduino based programmer is on
t2313 - the type of AVR you wish to program (m328 for ATMega328).
fred.hex - the name of the hex file you wish to progam into the target.
Eu usei isso para programar Tiny2313 sem problemas.
Nota: O cabo carregará 5v para alimentar o alvo - se o alvo já estiver energizado, não conecte o pino 2 do cabo.
Esta solução também funciona muito bem: Kimio Kosaka método avrdude-serjtag
Se você montou seus próprios computadores, pode haver cabos / conectores USB montados em caixas sobressalentes que geralmente vêm com novas placas de moher. Basta desligar a extremidade USB e você pode usar o conector da placa-mãe como o conector ISP.
Um arquivo em lote como este pode ser usado: (Isto é para os chips 328, definirá os fusíveis para transferência em alta velocidade e, em seguida, carregará o gerenciador de inicialização e definirá os bits de bloqueio quando terminar.
avrdude -c diecimila -P ft0 -p m328p -B 4800 -U lock:w:0x3F:m -U efuse:w:0x05:m
-U hfuse:w:0xDA:m -U lfuse:w:0xFF:m
avrdude -c diecimila -P ft0 -p m328p -U flash:w:ATmegaBOOT_168_atmega328.hex -U
efuse:w:0x05:m -U hfuse:w:0xDA:m -U lfuse:w:0xFF:m -U lock:w:0x0F:m
Sim, você pode usar o Arduino como programador AVR!
Dê uma olhada no projeto mega-isp .
Se você precisar de programação de alta tensão (você tem um chip morto), tente esta solução http://www.mightyohm.com/blog/2008/09/arduino-based-avr-high-voltage-programmer/
As respostas de 2009 estão um pouco desatualizadas, agora que o Arduino IDE padrão inclui o ArduinoISP, que foi baseado no Mega-ISP, mas agora é oficialmente suportado pelo Arduino.cc.