Fuse und Lock Bits

Gast #329455
Lesenswert?

Hi,

ich hab heute die ersten Versuche mit nem ATtiny 12 unternommen.
Mein Programm hat sofort funktioniert und danach wollte ich alle 6 IO
Pins benutzen, vorher hab ich 4 benutzt. Dafür wollte ich den Internen
Power-On-Reset aktivieren, bzw den externen abschalten, wie es im
Datenblatt stand.
Zum Programmieren benutz ich AVR-Studio und Pony Prog.
Bei Ponyprog hab ich auf ein Symbol geklickt, welches "Write Fuse &
Lock bits" heißt.
Bei Ponyprog waren zu dem Moment wo ich darauf geklickt hab, alle Haken
weg. Was laut google-recherchen invertiert ist.
Demnach hab ich warscheinlich alle Bits gesetzt, oder?
Löschen konnte ich den Chip noch, aber nichts anderes.
Also sind wohl die Lock-Bits gesetzt und es ist mir unmöglich das
rückgängig zu machen.

Hab ich das soweit richtig durchschaut?

Mfg
 S. Engel
Gast #329458
Lesenswert?

Oh man, wieder einer der nur wild drauf los programmiert und keine
Ahnung hat, was er da gerade macht.

HALLO!!! Erst denken, dann proggen!

BTW, kann sein, dass du deinen Tiny nicht mehr so einfach wieder flott
kriegst. Und kauf dir ein gutes Brenn-Gerät.
Gast #329459
Lesenswert?

> HALLO!!! Erst denken, dann proggen!

Nobody's perfect. Ich finde, sich bei den Fuses oder Locks zu
verhauen, ist keine Schande. Haken entspricht "0" also gesetzt
widerspricht ja zunächst mal etwas der konventionellen Denkweise...

Und was ist gegen Pony-Prog (gerade für nen Beginner) einzuwenden?


Zur zukünftigen Vermeidung von Probs mit Fuse Bits hilft:

http://www.mikrocontroller.net/forum/read-4-57883.html#new

Dennis
Gast #329460
Lesenswert?

Die, die sich am lautesten über die Fehler anderer aufregen, haben meist
ihre eigenen Fehler noch nicht verdaut ;-)

Lernen über Try&Error ist doch mitunter ganz sinnvoll. Grundlagenwissen
sollte natürlich auch nicht fehlen.
Gast #329461
Lesenswert?

Danke für die flotten antworten.
(die von xXx ignorier ich einfach - no comment!)

Also liegt mein Problem nicht an den Lock-Bits sondern daran das ich
durch den internen reset das ding nicht mehr mit dem einfachen ISP
interface brennen kann.

Im Datenblatt steht: "If the RSTDISBL Fuse is programmed, then the
programming hardware should apply +12V to PB5 while the ATtiny12 is in
Power-on Reset. If not, the part can fail to enter programming mode
caused by drive contention on PB0 and/or PB5."

Ich Versteh das so, das ich, um den Tiny neu zu brennen 12V an PB5
(/reset) anschließen muss. Dürfen die 12V nur so lange anliegen, wie
der ATtiny die Power-on-reset funktion durchführt?

Mfg
 raDon
Gast #329462
Lesenswert?

Ohne es zu wissen würde ich sagen: Mit seriellem Programmieren krigst du
den nicht mehr hin. Das geht glaub ich nur noch mit parallelem Proggen.
Wobei bei Parallel/Seriell nicht die Schnittstelle am PC gemeint is,
sondern der Anschluss am MC.
Schau dir da das Datenblatt nochmal genau an. Wenn's nicht mehr geht,
dann warn's alt ein paar Euro Lehrgeld. Das zahlt man immer wieder mal
in irgendeiner form.

Sebastian
Gast #329463
Lesenswert?

Afaik sind die 8-Pin-Tinys nicht parallel programmierbar (wie sollen die
Daten auch über 6 IO-Pins reinkommen?). Das mit den 12 V scheint OK zu
sein, eine andere Möglichkeit gibts meines Wissens nicht...
Gast #329464
Lesenswert?

> Bei Ponyprog hab ich auf ein Symbol geklickt,
> welches "Write Fuse & Lock bits" heißt.
> Bei Ponyprog waren zu dem Moment wo ich darauf
> geklickt hab, alle Haken weg.

Ja, PonyProg ist da etwas umständlich. Man muss nämlich erst diesen
Dialog öffnen, dann auf Read klicken, die Fuses einlesen, das
entsprechende Bit abändern, dann auf Write klicken. Dazu sind die
Schaltflächen noch etwas komisch angeordnet. Wenn ich Dich richtig
verstanden habe, hast Du den Read-Schritt vergessen.

Trotzdem ist Deine Wortwahl noch etwas durcheinander (Fuses "setzen",
etc.). Ich zitiere mal den entsprechenden PonyProg-Dialog (trotz den
komischen Englischs sicherlich verständlich):

[x] Checked items means programmed (bit = 0)
[ ] UnChecked items means unprogrammed (bit = 1)
Gast #329465
Lesenswert?

> Haken entspricht "0" also gesetzt widerspricht ja zunächst mal
> etwas der konventionellen Denkweise...
> Und was ist gegen Pony-Prog (gerade für nen Beginner) einzuwenden?

Genau das.

> Afaik sind die 8-Pin-Tinys nicht parallel programmierbar (wie
> sollen die Daten auch über 6 IO-Pins reinkommen?). Das mit den 12
> V scheint OK zu sein, eine andere Möglichkeit gibts meines Wissens
> nicht...

Es gibt bei den kleinen AVRs deshalb statt des "parallel programming"
das "high voltage serial programming". Da reicht es aber nicht,
einfach 12V auf den Reset-Pin zu legen. Sowohl das Protokoll als auch
die Pinbelegung sind ganz anders. Wer den Reset ausschaltet, kommt mit
ISP nicht mehr ran. Es geht nur noch das HV-Programming.
Gast #329467
Lesenswert?

Also wenn ich das richtig verstehe, um bei nem ATtiny mit 8 pinnen, 6
I/O Pins, alle 6 zu benutzen hab ich mit low-budget mitteln nur eine
chance. Also ein definitiv funktionierendes programm schreiben,
fusebits setzen und fertig.
Danach was zu ändern ist nur mit teuren brennern möglich.

@xXx: Dein Beitrag war sowas von kontraproduktiv. Den hab ich
ignoriert, bis jetzt eben. Und wild drauf losprogrammieren ist bei mir
auch nicht. Durch schule und privates interesse hab ich ein solides
Grundwissen. Und das Programm hab ich innerhlab von 5 minuten
geschrieben ohne vorlage und es hat auf anhieb funktioniert.
Gast #329468
Lesenswert?

> Danach was zu ändern ist nur mit teuren brennern möglich.

Man kann sich auch selbst ein HV-Programmiergerät bauen. Das geht auch
mit relativ geringem Aufwand. Wenn's wichtig ist, daß es nur ein
Achtbeiner ist, dürfte sich das lohnen. Sonst nimm halt den
Nächstgrößeren.

> Und wild drauf losprogrammieren ist bei mir auch nicht.

Ich glaube, er meinte, daß du den Reset mal ausgeschaltet hast, um
einen Pin freizubekommen, ohne dich vorher über die Konsequenzen zu
informieren.

> Und das Programm hab ich innerhlab von 5 minuten geschrieben ohne
> vorlage und es hat auf anhieb funktioniert.

Naja, das ist aber schon das, was man als "mal so drauf los
programmieren" bezeichnen könnte ;-)
Gast #329470
Lesenswert?

Hmm, dann werd ich wohl zum ATtiny 2313 wechseln müssen.
Kostet ja nur 15 cent mehr als der ATtiny 12.

Eine frage noch: Könnte ich den ATtiny 12 mit nem professionellen
brenner wieder auf "kaufzustand" bringen?
So das ich den wieder mit nem ISP kabel brennen kann?

Mfg
 raDon
Gast #329471
Lesenswert?

>Könnte ich den ATtiny 12 mit nem professionellen brenner wieder auf
"kaufzustand" bringen
Mit dem STK500 sollte das gehen.
Es müsste sogar einen "Bastel"-Programmer geben, der das kann. Wie
das geht, ist im Datenblatt unter "Memory-Programming/High-voltage
Programming" beschrieben.
Gast #329476
Lesenswert?

Nun noch ein Schlusswort: Jetzt läuft er wieder.

Lösung: Galeb III (schreibt sich der so?!). Ein Arbeitskollege hatte
ihn heute mitgebracht und hat bei meinem TINY die Fuse Bits
zurückgesetzt.

@ Rolf Magnus: Super link. der HV Programmer für 8 Pin AVR ist sehr
einfach aufzubauen. Nen paar Transistoren und Widerstände und ich kann
auch zu Hause den internen Reset nutzen.

Danke nochmal für die Hilfe
Mfg
 raDon
Gast #329477
Lesenswert?

Hi, noch was.

hab den Tropfen gefunden (der mein Fass zum überlaufen brachte)

Ich hab als Grundlage für die Hardware ein Tutorial benutzt, welches
sich auf PonyProg200 2.06 bezog. ich hatte aber eine ältere Version
installiert. (Die neuen sind alle als BETA ausgezeichnet)

In der neuen Version hat eine Schaltfläche die Funktion Fuse Bits Menü
aufrufen, wo man diese lesen und schreiben kann.
In der alten Version brennt PonyProg sofort die aktuell eingestellten
Fuse Bits, was natürlich in die Hose gehen kann, wie beschrieben. :)

Also obacht bei der alten Version von PonyProg.

Mfg
   raDOn

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren