Forum: Mikrocontroller und Digitale Elektronik Optiboot und AVRDude


von Stamsund (Gast)


Lesenswert?

Hi,

grundsätzlich sieht die Verwendung von Optiboot mit z.B. einem Arduino 
Nano ja so aus:

- mit AVRDude und dem 6poligen Programmieranschluss schreibe ich den 
Bootloader in den Flash (wenn er nicht schon vorhanden ist)

- mit AVRDude und der regulären USB/seriellen Schnittstelle schreibe ich 
mit Hilfe des Bootloaders mein Programm in den Flash, Optiboot kümmert 
sich dann um das Starten dieses Programmes

Meine Frage: kann ich von so einer MCU jetzt mit AVRDude und dem 
6poligen Programmieranschluss eine Art Image ziehen, welche dann sowohl 
den Bootloader als auch das Programm enthält? Sprich eine Komplettkopie, 
die ich dann auf einen anderen ATmega schreiben könnte, so dass dieser 
dann auch wieder den Bootloder UND das Programm hat?

Welche Parameter muss ich AVRDude mitgeben, damit es den kompletten 
Flash liest/schreibt und nicht nur den Bootloder/das Programm?

Danke!

von Alex (Gast)


Lesenswert?

AVRdude hat ne prima Anleitung - hab jetzt nicht alle Parameter zur 
Hand, aber das geht im wesentlichen so:

- alles Fuses auslesen
- Flash auslesen (AVRDide liest i.d.R. immer komplett...)
- falls nötig EEEPROM auslesen

- ausgelesene Fuses programmieren
- ausgelesenes Flash programmiern
- falls nötig ausgelesenes EEEPROM schreiben

Voraussetzung ist, dass kein Schreibschutz auf dem AVR ist...


Alexander

von Oliver S. (oliverso)


Lesenswert?

Die Option zum lesen ist -U (für Upload). Das schreibst du mit den dazu 
nötigen Angaben an Stelle der Downloadoption.

Näheres mit Beispielen hier:

https://www.nongnu.org/avrdude/user-manual/avrdude_6.html#Example-Command-Line-Invocations

Oliver

von Stamsund (Gast)


Lesenswert?

> - Flash auslesen (AVRDide liest i.d.R. immer komplett...)

OK, das wäre also die Standardfunktionsweise, sprich ich würde sowieso 
immer alle Daten bekommen.

Danke!

von Karl M. (Gast)


Lesenswert?

Hallo Forum,

um korrekt zu sein, wird bei diesem Vorgehen eine Bootloader bei meinem 
leeren AVR nicht funktionieren!
Stamsund schrieb:
> - mit AVRDude und dem 6poligen Programmieranschluss schreibe ich den
> Bootloader in den Flash (wenn er nicht schon vorhanden ist)
>
> - mit AVRDude und der regulären USB/seriellen Schnittstelle schreibe ich
> mit Hilfe des Bootloaders mein Programm in den Flash, Optiboot kümmert
> sich dann um das Starten dieses Programmes

Es müssen noch die zugehörigen Einstellungen an den Fuse Bits 
vorgenommen werden.

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.