Forum: Mikrocontroller und Digitale Elektronik avrdude: Lockbits beim ATTiny2313 setzen?


von Satz K. (satz_k)


Lesenswert?

Hi,

ich habe hier einen ATTiny 2313, bei dem ich nach erfolgreichem Flashen 
gerne die Lockbits setzen möchte, so das keiner mehr die Firmware 
auslesen oder (und das ist das wichtiger) überschreiben kann.

Da ich mich damit unter Umständen selber abschießen und aussperren kann, 
frage ich lieber noch mal doof nach: wie kann ich mit avrdude beim 
ATTiny 2313 diese Lockbits richtig setzen, so dass der Flash vor 
Zugriffen von außen geschützt ist, aber der Code noch korrekt 
funktioniert?

Und macht es Sinn, zusätzlich auch noch die SPIEN-Fuse zu setzen? Wenn 
ja: vor oder nach den Lockbits?

Danke schon mal für die Hilfe :-)

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Satz K. schrieb:

> ich habe hier einen ATTiny 2313, bei dem ich nach erfolgreichem Flashen
> gerne die Lockbits setzen möchte, so das keiner mehr die Firmware
> auslesen oder (und das ist das wichtiger) überschreiben kann.

Gegen Löschen (was einem Überschreiben ja zwangsläufig vorangeht) (*)
kannst du sie natürlich nicht schützen, denn ein device erase ist
der einzige Weg, einmal gesetzte Lockbits wieder zu löschen.

> Da ich mich damit unter Umständen selber abschießen und aussperren kann,
> frage ich lieber noch mal doof nach: wie kann ich mit avrdude beim
> ATTiny 2313 diese Lockbits richtig setzen, so dass der Flash vor
> Zugriffen von außen geschützt ist, aber der Code noch korrekt
> funktioniert?
1
avrdude -c … -p attiny2313 -U lock:w:0xfc:m

> Und macht es Sinn, zusätzlich auch noch die SPIEN-Fuse zu setzen?

Die ist immer gesetzt, und über ISP kannst du sie auch gar nicht
löschen.  Das geht nur mittels HVPP.

(*) Im Prinzip kann man natürlich auch auf einen nicht gelöschten
Flash schreiben, aber man kann dabei nur Bits von 1 auf 0 ändern.
Aber es ist richtig, eins der beiden Lockbits (LB1) ist nur dafür
da, dies zu verhindern.  Das zweite verhindert dann auch das
Auslesen.

: Bearbeitet durch Moderator
von Satz K. (satz_k)


Lesenswert?

Japp, funktioniert - Danke!

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.