Forum: Mikrocontroller und Digitale Elektronik falsche signature bytes


von Gast (Gast)


Lesenswert?

Hallo Freaks,

dann und wann programmiere ich mit dem "STK500" und
"mySmartUSB" von myAVR meine Mikros. Manchmal aber geht garnichts
mehr weil die drei "signature bytes" zerschossen wurden. Da ich nichts
konkretes über dieses Problem sowohl im Internet als auch in
eurem Forum gefunden habe und die Dinger nun nicht gerade die Welt 
kosten, habe ich mich entschlossen alle zerschossenen AVRs in den Müll 
zu werfen.

Frage: Wie ist es überhaupt möglich die "signature bytes" beim 
programmieren zu verändern wenn doch in den Datenblättern behauptet wird 
dass diese Bytes nur auslesbar sind bzw. wie kann man diese selbständige 
Änderungen vermeiden? Sind meine Programmer defekt?

Für praktische Hinweise wäre ich dankbar!
Gruß, Gast

von Rumpelstilz (Gast)


Lesenswert?

Signaturbytes zerschossen... Da ist was gar nicht gut. Eine Moeglichkeit 
ist eine Gleichtaktspannung, kann auch Wechselspannung zwischen dem PC, 
resp Programmer und dem Target sein. Dies kann geschehen falls das 
Netzgeraet zum speisen der Schaltung und der PC nicht am selben Strom 
betrieben werden. Falls man hier den GND der Schaltung mit einem 
1.5-Quadrat Draht mit dem PC, resp STK500 verbindet waere das behoben.

Ein gutes Layout mit den passenden Kondensatoren wirkt Wunder. Ein GND 
Plane untendran ist Pflicht.

Falls das alles gut ist, kann's eigentlich nur noch ein loetfehler sein.

von Gast (Gast)


Lesenswert?

Masseverbindungen sind OK.
Target ist der STK500 selbst, d.h. programmiert wird nur auf dem Board.
Mich würde interessieren "wie" die signature bytes zerschossen werden!
Statische Ladungen? Defektes Programmiergerät?
Aufgefallen ist mir dass nur die kleinen AVRs betroffen sind (ATtiny's, 
Atmega8,AT90S....) nicht aber die Atmega16,32,128 usw.
???

von Spess53 (Gast)


Lesenswert?

Hi

Bist du sicher, das die Signaturbytes wirklich weg waren (sind). Bei zu 
hoher ISP-Frequenz werden z.B. die Signaturbytes als 0... gelesen. Als 
Fehlermeldung wird nur die fehlende Übereinstimmung ausgegeben. Die 
üblichen Fehlermeldungen, wie beim Programmieren, fehlen. Bei richtiger 
Einstellung werden die Signaturbytes wieder richtig gelesen.

MfG Spess

P.S. Mir sind noch keine Signaturbytes abhanden gekommen.

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


Lesenswert?

Naja, die Signaturebytes sind letztlich auch nur paar Flash-Zellen.
Gerade früher, als noch viel mit eher wackeligen Parallelport-ISP-
Adaptern gefummelt wurde, konnte es bei ,,falschen Bits'' schon mal
passieren, dass man sich die Sig-Bytes löscht (diese Möglichkeit ist
sogar in der uralten Appnote AVR910 erwähnt), ich habe noch einen
AT90S1200 rumliegen, bei dem ich sie mir irgendwie auf 3 x 0x00
programmiert habe.

Heutzutage habe ich das aber nicht wieder erlebt.  Vermutlich sind
die Bitfolgen, mit denen man diese Programmierung einleitet, auch
aufwändiger geworden, sodass man sie nicht mehr so schnell ,,aus
Versehen'' durch ein paar gekippte Bits erreichen kann.

von Spess53 (Gast)


Lesenswert?

Hi

@Jörg: Ich wollte das auch nicht kategorisch ausschließen. Mir ging es 
nur darum, das Gast seine AVRs nicht unnötigerweise in die Tonne drückt.

MfG Spess

von Analog (Gast)


Lesenswert?

Vielleicht ist der Kontroller einfach zerschossen, da kommt dann bei der 
Signatur auch nix plausibles mehr raus. Passiert total oft, wenn 
Peripherie am SPI hängt und diese Schittstelle auch noch zum 
Programmieren verwendet wird. Also meiner Meinung nach - auf falscher 
Fährte.

von Gast (Gast)


Angehängte Dateien:

Lesenswert?

Hi, danke für euer Beileid,

also es sind wirklich die signature bytes die fehlerhaft sind: entweder 
sind sie 0x00 oder 0xff. Vor allem wenn das erste Byte nicht stimmt ist 
der Ofen definitiv aus!
Meistens steckt der Mikro im STK500 und über die Portverbindungen zur 
Zielware (s.Bild).

Mir scheint ihr habt weniger dieses Problem, woraus ich schließen kann 
dass was mit dem STK500 nicht ganz in Ordnung ist!

Auf jedem Fall erstmal schönen Dank für eure Bemühung.

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


Lesenswert?

Gast wrote:

> Vor allem wenn das erste Byte nicht stimmt ist
> der Ofen definitiv aus!

Wenn's rein nur die Sigbytes zerschossen hat, kann der Rest deshalb
trotzdem noch normal funktionieren.

von Gast (Gast)


Lesenswert?

Hi Jörg,
ja sicher, aber wenn z.B Byte 1, also $000:$1E falsch ist (z.B. $00, 
$ff) dann erkennt meine Software "AVR Studio" den Chip nicht mehr als 
ein Atmel-Produkt und kann somit nicht mehr programmiert werden - 
jedenfalls nicht mit dieser Software. Es frustiert mich auch zu wissen 
dass der Chip an sich noch in Ordnung ist! Leider aber sind diese Bytes 
nicht programmierbar, jedenfalls nicht von uns Sterblichen - ich bin 
überzeugt die Firma Atmel ist durchaus in der Lage diese Dinger zu 
Reprogrammieren...

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


Lesenswert?

Du kannst auch mit AVRDUDE programmieren.  Musst ihm aber die Option
-F mit auf die Reise geben, damit er die signature ignoriert.

von Sebastian (Gast)


Lesenswert?

Nur nebenbei: AVRDUDE ist in der Lage, die Signatur auf Wunsch zu 
ignorieren, und funktioniert mit vielen gängigen ISP-Adaptern. Ist 
vielleicht einen Versuch wert.

von Sebastian (Gast)


Lesenswert?

Oh, da war jemand schneller.

von Gast (Gast)


Lesenswert?

Hi,

ich werde versuchen AVRDUDE zu installieren (unter Windows-XP). Ich 
hatte früher irgendwie Schwierigkeiten bei der Installation und deshalb 
noch nicht installiert.
Danke für die vielen Tips. Wenn ich Erfolg oder Neuigkeiten haben 
sollte, melde ich mich wieder.

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


Lesenswert?

AVRDUDE ist bei WinAVR dabei.  Das dürfte für dich der einfachste
Weg sein, zu einer Installation zu gelangen.

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.