Fusebits in ATMega88 mit Avrdude

#355755
Lesenswert?

Hallo, hier bin ich wieder mit einem Problem.
Diesmal zu einem Thema, das hier schon oft besprochen wurde, aber für
meinen speziellen Fall habe ich noch nichts genaueres gefunden. (Oder
ich bin zu dumm dazu).
Zuerst alle meine Daten:
Avrdude 1.4C (Versionsnummer mit Hex-Editor ermittelt)
Avrdude.conf V 1.36 (kann man direkt lesen.
ICprog-AVR 1.1 (USB) von IN-CIRCUIT.
Mit der Befehlszeile "avrdude -p ATMEGA88 -P COM3 -b 38400 -c avr910
-U hfuse:w:0x30:m" wollte ich den Watchdog programmieren, also die
Hfuse von 0x20 auf 0x30 schreiben. Avrdude meldete, daß ein Fehler
aufgetreten ist und das Byte 0x10 gelesen wurde (Watchdog programmiert
und SPIEN disabled)- das war's dann für ISP.
Ich habe schon 3 88ziger auf diese Weise erschossen. Das Dumme ist, daß
die Dinger eingelötet sind.
Ich müßte nun dringend das Bit CKDIV8 ändern, dazu doch 0x1d in lfuse
schreiben, oder?
Vielleicht passt die Version des Avrdude und/oder die .conf nicht zu
meinem ICprog. Ich habe schon mit anderen Versionen aus dem Internet
probiert, kriege die aber nicht zum Laufen. Entweder kennt er die
Device nicht oder die .conf ist corrupt. Einmal habe ich mit AVProg
probiert - mit "Advanced" die Prozessordaten gelesen - läßt das Flash
schreiben, aber bei den Fusebits - auch getötet.
Vielleicht kann mir da auch wieder jemand helfen. Besten Dank dafür
schonmal.

Gruß
Wilfried
#355758
Lesenswert?

Hallo alfsch,
hab' ich auch schon mal probiert. Ist auch schiefgegangen mögl. wegen
Avrdude. Ist der o.g. Fusebitrechner auch für alle Programme gültig? In
manchen Programmen sind die Bit's doch invertiert (hab' ich gelesen).

Hallo HanneS,
sorry, aber der Betreff hat mich nicht angesprochen für mein Problem.
Das zeigt mir aber, man sollte alles lesen. Aber die Zeit.....
Die zerfusten sind leider unbrauchbar. Ich habe die Beine
abgeschnitten, weil mir der Erhalt der Platine (selbstgeäzt, ohne
Lötstopp) wichtiger war als ein neuer Atmel. Tut mir zwar auch weh,
aber den Schmerz nuß man aushalten können.

Danke für die Antworten bis jetzt.
Vielelcht kann noch jemand über die Erfahrung mit Avrdude berichten.

Wilfried
#355759
Lesenswert?

> Ist der o.g. Fusebitrechner auch für alle Programme gültig?

Du solltest dich auf die Informationen in den Datasheets zu den
jeweiligen AVRs stützen und dabei alle Fuses im Auge behalten.

Wenn du (mit Stift und Papier) von allen Fuses den Auslieferungszustand
und den gewünschten Zustand ermittelt und notiert hast, dann sollte es
kein Problem sein, festzustellen, ob das von dir genutzte ISP-Programm
deiner Logik entspricht oder deiner Meinung nach invertiert ist. Aus
Sicht der Datasheets (auch aus historischer Sicht) ist nunmal eine
"gesetzte Fuse" eine "0" und eine "ungesetzte Fuse" eine "1".
Wie die einzelnen ISP-Programme das umsetzen, weiß ich nicht, ich
benutze sie nicht alle.

Verlass' dich also nicht auf irgendwelche Fusebitrechner, sondern auf
deinen eigenen Verstand. Geh systematisch heran, dann gibt es auch
keine Missverständnisse. "Mal probieren" oder anderes unüberlegtes
Herumeiern bringt hier nix.

...
#355760
Lesenswert?

Stimmt!
Drum verwende ich ja nicht nur mein eigenes Gehirn, sondern die des
Forums dazu.
Mich verwirrt nur, daß Avrdude beim Lesen der Fusebits als Ergebnis für
die hfuse die Zeilen
:01000000DF20
:00000001FF
bringt, und das interprtiere ich als 0x20, denn dieser Wert kommt raus,
wenn man die Bits im Datenblatt invertiert (1101 1111). Im
Fusebitrechner kommt 0xDF. Da ich schon BEIDE Versionen probiert habe
und dann 2 88er weggeworfen habe, bin ich natürlich seeeeehhhhr
verunsichert. Ich glaube, ich werde mir einen Testadapter besorgen,
damit Atmel nicht zu reich wird.

Viele Grüße

Wilfried

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