Pouvez-vous utiliser l'Arduino en tant que programmeur AVR?
Pouvez-vous utiliser l'Arduino en tant que programmeur AVR?
Réponses:
J'utilise la solution méga-isp mentionnée ci-dessus - le croquis Arduino avrisp est ici
http://code.google.com/p/mega-isp/downloads/list
Je n'utilise pas le blindage qu'ils ont - j'ai composé un simple câble en utilisant deux prises d'en-tête double en ligne à 6 broches pour adapter le connecteur ISP de programmation sur votre Arduino. (Je n'avais pas deux douilles dil, j'ai donc utilisé une prise simple standard et super collé deux douilles à 3 broches ensemble.
Vous avez alors besoin d'un morceau de câble ruban ou d'un fil.
Connectez chaque broche sur une prise la correspondante sur l'autre, à l'exception de la broche 5 = Reset. Connectez une extrémité du câble à la broche 5 - c'est l'extrémité qui se connectera à l'AVR cible que vous souhaitez programmer. Connectez l'autre extrémité du fil de la broche 5 à un connecteur à broche flottante.
Pour utiliser connecter le câble à l'arduino en le plaçant sur le connecteur de programmation ISP et en connectant le câble flottant au numérique 10, connectez l'autre extrémité au connecteur ISP cible. Vous devez vous assurer que la broche 1 correspond.
Programmer avec avrdude en utilisant
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.
Je l'ai utilisé pour programmer Tiny2313 sans aucun problème.
Remarque: Le câble transportera 5 V pour alimenter la cible - si la cible est déjà alimentée, ne connectez pas la broche 2 du câble.
Cette solution fonctionne aussi très bien: méthode Kimrd Kosaka avrdude-serjtag
Si vous avez assemblé vos propres ordinateurs, vous pouvez avoir des câbles / connecteurs USB montés dans un boîtier de rechange qui viennent souvent avec de nouveaux moherboards. Détachez simplement l'extrémité USB et vous pouvez utiliser le connecteur de la carte mère comme connecteur ISP.
Un fichier de commandes comme celui-ci peut être utilisé: (Ceci est pour les puces 328, définira les fusibles pour un transfert à haute vitesse, puis téléchargera le chargeur de démarrage et définira les bits de verrouillage une fois terminé.
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
Oui, vous pouvez utiliser l'Arduino comme programmeur AVR!
Jetez un œil au projet méga-isp .
Si vous avez besoin d'une programmation haute tension (vous avez une puce autrement morte), vous pouvez essayer cette solution http://www.mightyohm.com/blog/2008/09/arduino-based-avr-high-voltage-programmer/
Les réponses de 2009 sont un peu dépassées maintenant que l'IDE Arduino standard inclut ArduinoISP qui était basé sur Mega-ISP mais est maintenant officiellement pris en charge par Arduino.cc.