Forum: Mikrocontroller und Digitale Elektronik ATmega32U4 On-chip Boot Program


von BlaBla (Gast)


Lesenswert?

Ich stehe gerade auf dem Schlauch. Der ATmega32U4 hat doch einen fest 
eingebauten Bootloader ("On-chip Boot Program" laut Datenblatt) für das 
Flashen mittels Flip oder im AtmelStudio 7 über DFU. Kann dieser 
On-chip-Bootloader absichtlich oder unabsichtlich überschrieben werden? 
Oder steht mir dieser jederzeit über das Prozedere HWB und Reset zur 
Verfügung. Egal was ich jemals drauf geflasht habe.

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Chip Erase. Schon issa wech.

von BlaBla (Gast)


Lesenswert?

Oh. Wo bekomme ich den Original On-chip-Bootloader wieder her?

von pegel (Gast)


Lesenswert?

https://www.microchip.com/wwwproducts/en/atmega32u4

Documents -> Software Libraries/Firmware

In der zip gibt es einige davon.

von BlaBla (Gast)


Lesenswert?

Genau, das war es!! Vielen Dank.

Beitrag #6272279 wurde von einem Moderator gelöscht.
von BlaBla (Gast)


Lesenswert?

Im Dokument doc7769.pdf habe ich dann folgendes gefunden:

1. After programming my device using the JTAGICE MKII or the AVRISP, I 
cannot start the bootloader anymore?

When you use the JTAGICE MKII or AVRISP, the first instruction performed 
is the full chip erase. This instruction erases the whole of the flash 
memory and deletes the bootloader. You have to load the bootloader HEX 
file again using the JTAGICE MKII or the AVRISP to be able to use flip 
software to program the device.

von c-hater (Gast)


Lesenswert?

Ben B. schrieb:

> Chip Erase. Schon issa wech.

Jepp.

Da hätten sie gerne eine Extra-Fuse analog zu EESAVE spendieren können, 
finde ich.

Das hätte aber wohl die Kosten um mindestens 0.0001 cent/part erhöht. 
Und natürlich die Lock-Bits weitestgehend nutzlos gemacht. Ich denke, 
das war der eigentliche Grund, warum es diese naheliegende Fuse nicht 
gibt...

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Hm das dürfte eher ein methodisches Problem sein, da ein chip erase auch 
die EESAVE-Fuse zurücksetzt. Sprich selbst der EEPROM-Inhalt wird 
gelöscht wenn ich mich recht erinnere. Die Lockbits werden auf jeden 
Fall zurückgesetzt.

: Bearbeitet durch User
von c-hater (Gast)


Lesenswert?

Ben B. schrieb:

> Hm das dürfte eher ein methodisches Problem sein, da ein chip erase auch
> die EESAVE-Fuse zurücksetzt.

Nein, das zu verhindern, ist genau, was EESAVE tut...

von c-hater (Gast)


Lesenswert?

c-hater schrieb:

> Nein, das zu verhindern, ist genau, was EESAVE tut...

Das war auch noch falsch. Wahr ist:

1) ChipErase ändert KEINE Fuse. Never ever.
2) Die EESAVE-Fuse ist genau dafür da, dass auch den EEROM-Inhalt nicht 
durch ein ChipErase gelöscht wird.

von wendelsberg (Gast)


Lesenswert?

c-hater schrieb:
> Da hätten sie gerne eine Extra-Fuse analog zu EESAVE spendieren können,
> finde ich.
>
> Das hätte aber wohl die Kosten um mindestens 0.0001 cent/part erhöht.
> Und natürlich die Lock-Bits weitestgehend nutzlos gemacht. Ich denke,
> das war der eigentliche Grund, warum es diese naheliegende Fuse nicht
> gibt...

Ja allerdings.

Aber dann muesste ein zusaetzliches Lockbit die Funktion "Auslesen" im 
Bootlader verhindern.

Und da wird es unuebersichtlich.

wendelsberg

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.