Forum: Mikrocontroller und Digitale Elektronik AVR flasht AVRs


von Rage-Empire (Gast)


Lesenswert?

Hallo,

ich habe vor ein System mit mehreren AVRs aufzubauen. Jedoch ist es
mühsam nach einer Softwareänderung jeden der 4 AVRs einzeln zu flashen.
Deswegen habe ich mir gedacht, ob es nicht möglich wäre, daß ein AVR
beim erststart alle anderen flasht. Da ich einen Mega128 als Master
benutze, welcher mit sd-card bedient werden kann, wäre es praktisch,
wenn dieser diese Arbeit verrichten könnte. Die anderen AVRs sind
Tiny2313er. Jetzt meine Frage, hat das von euch schonmal jemand
versucht oder sogar umgesetzt? Was muß man dabei beachten? Soweit ich
weiß geht das über SPI, aber ist das auch in Bascom realisierbar?

von Niels H. (monarch)


Lesenswert?

Ich hab nen eigenen SPI-Progger fürn PC und Windows und Linux
geschrieben. Ist eigentlich ziemlich easy und der code müsste auch
leicht auf den Mega128 protierbar sein.

Du müsstest nur die IO-routinen, Datenquelle und Timings anpassen. Ein
bisschen hintergrundwissen, wie SPI funktioniert, wäre nicht schlecht,
ist aber auch in jedem ATMega-Dokument unter "Memory Programming" ->
"Serial Downloading" beschrieben.

http://www.monarch.de/Prommer.zip

von mthomas (Gast)


Lesenswert?

Ja, es ist im Prinzip ein SPI-Interface. Ausser dem Timing gibt es wenig
zu beachten, aber die Angaben finden sich im Datenblatt des zu
programmierenden Controllers. Guter Einstieg ist auch die AppNote 910.
Man muss bei mehreren Zielen nur sicherstellen, dass die grade nicht zu
programmierenden Controller nicht auf dem "Bus" dazwischenreden. Eine
Art Chip-Select kann man ueber die Reset-Anschluesse oder die
Takteingaenge implementieren.

Martin

von Rage-Empire (Gast)


Lesenswert?

Apropo Reset, muß ich mit dem auch was machen wenn ich flashen will,
oder einfach nur auf high?

von Niels H. (monarch)


Lesenswert?

Reset ist bei den AVRs low-aktiv. Der RESET muss wärend des flashens
aktiv sein, also low....

von Hannes L. (hannes)


Lesenswert?

Im jeweiligen Datenblatt gibt es ein Kapitel zum Thema "serial
downloading". Da ist alles ausführlich beschrieben, auch das mit dem
Reset.

...

von Rage-Empire (Gast)


Lesenswert?

Danke, werd mir das mal reinziehen. Was schick ich zum flashen
eigentlich, das Bin-File?

von Niels H. (monarch)


Lesenswert?

In aller Regel wird ein .hex-file generiert. Das ist eine ASCII-Datei,
die beschreibt, an welcher speicherstelle welches byte stehen muss.

Ein Hex-file parser ist in meinen quellen bei...

von Rage-Empire (Gast)


Lesenswert?

Ja, Hex-files habe ich auch. Ok, danke, werde das dann mal probieren,
obs so klappt, wie ich will

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.