PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Massenhaft AVRs flashen - wie?



stefan_Z
14.05.2008, 12:50
Hi!

Ich muss für ein Projekt mehrere Dutzend Mega32 flashen - und das wahrscheinlich mehrmals, weil die Firmware sich weiterentwickeln wird.

Was genau gemacht werden soll:
0 - Löschen (später nötig wegen Lockbits)
1 - Fusebits von Default auf eigenes Setting ändern
2 - Code reinflashen / verify
3 - Lockbits setzen

Das alles jedes mal von Hand in PonyProg zu machen erscheint mir relativ kompliziert - gibts nicht eine Möglichkeit, diese Schritte zu automatisieren?
Am liebsten mit ner Platine, wo ich immer direkt 10 Stück anklemme und der Rechner flasht die nacheinander (gleichzeitig geht wohl eher nicht, nehme ich an!?)

Eine Win-Software mit Klicki-Bunti-Interface wäre natürlich am coolsten, aber ein Script für PonyProg oder Unix/Linux (OS X mit AVRdude z.b.) würde auch gehen.

schnoffi
14.05.2008, 13:05
Auch Hi,
Google mal durch.Es gibt Unternehmen, die haben sich auf so etwas spezialisiert.
Das wird aber erst ab 500Stk. interessant. Aber hole Dir doch mal ein Angebot

Gruß

stefan_Z
14.05.2008, 13:28
Hmm nee das soll schon hier vor Ort passieren - aber kann ja eigentlich nicht soo schwer sein, oder?
Ich hatte mal ne Appnote bei Atmel gesehen, aber find sie ums Verrecken nicht mehr.
An sich müsste es ja nur ein Script sein plus ein 10-fach-ISP, der per Schieberegister VCC jedesmal weiterschaltet....

Besserwessi
14.05.2008, 17:26
Auch unter Windows kann man ein Script für AVRDude schreiben. Ist nicht wesenlich mehr als der Komandozeilenaufruf. Muß man dann nur noch per Doppelklick starten.

Ein Programmierer für Mehrere Controller wird schwierig, aber man könnte 2 unabhängige Programierer anschließen: einer Programmiert gerade, am anderen wird gewechselt.

stefan_Z
15.05.2008, 12:42
Hmm OK, also mit PonyProg kann man scripten, allerdings nur innerhalb von Pony selber: http://www.lancos.com/e2p/ponyprog2000.html#s4
Aufgerufen wird das dann über die Kommandozeile von Windows (Wirklich? Bin totaler Win-DAU) - und könnte man nicht über die Kommandozeile dann auch nen Befehl an die RS232 schicken, um per kleiner AVR-Schaltung ein Schieberegister weiterzustellen? An dem SR würde dann pro Pin VCC oder GND eines Chips hängen. Macht das Sinn?

drew
15.05.2008, 14:16
Hallo,
schau Dir die Beschreibung von AVRDude durch, da sind alle Parameter angegeben, die Du brauchst um von DOS aus auf zu rufen. Daraus ein bat zu machen ist dann nicht mehr schwer.

Nachdem es sich "nur" um mehrere Dutzend Kontroller handelt würde ich noch nicht mit einer automatischen Umschaltung arbeiten. Das ist mehr Aufwand, als 'zig mal umschalten.

wkrug
15.05.2008, 14:30
Hmm OK, also mit PonyProg kann man scripten, allerdings nur innerhalb von Pony selber:
Ich hab als Anwender schon mal mit so einem Script gearbeitet.
Selber geproggt hab ich noch keins.
Man schließt den zu Proggenden Controller an den PC an und startet Ponyprog mit der Angabe des Script Files.
Daraufhin wird der Controller komplett geproggt - sehr viel schneller gehts kaum.

Die Programmiergeschwindigkeit ist auch vom verwendeten Programmer abhängig. Mit dem AVR USB MK2 gehts mit den richtigen Einstellungen sehr schnell. Ich würde ind deiner Ziel Applikation auf jeden Fall eine ISP Schnittstelle vorsehen, dann brauchst Du den Controller zum Proggen nicht mal auszubauen.
Die Fuses brauchen ja nur einmal richtig eingestellt werden, das seh ich jetzt nicht wirklich als Problem.

stefan_Z
16.05.2008, 00:38
Jo, ISP ist natürlich drin - bin ja nicht irre ;-)
Aber z.B. die LockBits jedes mal von Hand setzen ist so doof - wozu hab ich denn nen Computer?

Besserwessi
16.05.2008, 08:18
Bei AVRdude kann man die Lochbits und fuses auch über ein Script setzten.

chr-mt
16.05.2008, 11:41
Hi,
du kannst auch eine Batch Datei für die STK500.exe schreiben.
Damit lassen sich auch die Fusebits einstellen.
Kannst also alles in einem Rutsch programmieren.

Gruß
Christopher

dremler
16.05.2008, 12:20
enweder du baust dir ein steckbrett dazu was dann alle nacheinander durchschaltet un die programmierung halt 10 mal gestartet wird...

oder du nimmst solche prüfpins...ichhab dazu mal was gesehen..mal sehn ob ich das wieder finde...

Karni
03.06.2008, 14:30
http://www.elhof.de/html/ppm3.html

der kann das auch, und sogar ganz gut... ;-)

Problem ist halt der Preis, evtl

Grüße