Forum: Mikrocontroller und Digitale Elektronik STK500 oder Schaltung "frisst" Mega48


von Werner J. (werner_j)


Angehängte Dateien:

Lesenswert?

Hallo,

ich hab nach langer Zeit mein STK500 mal wieder ausgepackt um für 'nen 
Bekannten ein paar Mega48 zu brennen.

Nachdem das STK mich dann erst mal 5 Stunden gezankt hat, bis es vom 
Studio (V4.18.684) erkannt wurde, Firmware war noch von 2001, hab ich 
nun das Problem, daß ich 'neue' Megas brennen kann, nachdem diese aber 
2-3 mal mit handlichen Code-Schnipseln neu beschrieben und getestet 
wurden, produzieren sie beim beschreiben Verify Fehler. Die CKSEL Fuses 
sind dann plötzlich auch verstellt und lassen sich nicht mehr ändern. 
Dabei ist es egal ob sie im STK per ISP oder HVVProg programmiert 
werden. Die Chip-Signatur lässt sich dann auch nicht mehr auslesen.

Im Anhang die Schaltung in der der Atmel werkelt.  Daran könnte es ja 
auch liegen. Port B sind 8 Ausgänge, Port D sind 8 Eingänge und Port C 
sind 4 Eingänge und 2 Ausgänge über die später mehrere dieser Chips 
zusammen werkeln sollen. Der ISP Port der Schaltung ist nicht bestückt. 
Programmiert wird im STK. Bei den Fuses wurde nur Ckdiv8 geändert, damit 
der Atmel auf 8 MHz interne Clk läuft. Alle andern wurden nicht 
angerührt.


Kann jemand helfen? Die AVRs hab ich eigentlich als unheimlich robust in 
Erinnerung, aber heute hat es 4 erwischt und ich hab keine Ahnung warum.

Gruß
Werner

von Frank K. (fchk)


Lesenswert?

Werner Just schrieb:
> Hallo,
>
> ich hab nach langer Zeit mein STK500 mal wieder ausgepackt um für 'nen
> Bekannten ein paar Mega48 zu brennen.
>
> Nachdem das STK mich dann erst mal 5 Stunden gezankt hat, bis es vom
> Studio (V4.18.684) erkannt wurde, Firmware war noch von 2001, hab ich
> nun das Problem, daß ich 'neue' Megas brennen kann, nachdem diese aber
> 2-3 mal mit handlichen Code-Schnipseln neu beschrieben und getestet
> wurden, produzieren sie beim beschreiben Verify Fehler. Die CKSEL Fuses
> sind dann plötzlich auch verstellt und lassen sich nicht mehr ändern.
> Dabei ist es egal ob sie im STK per ISP oder HVVProg programmiert
> werden. Die Chip-Signatur lässt sich dann auch nicht mehr auslesen.

Das hörst sich für mich so an, als ob das Netzteil für das STK500 etwas 
schwach auf der Brust ist, entweder was den Strom angeht, oder zu 
niedrige Eingangsspannung? Mit was fütterst Du es denn?

> Im Anhang die Schaltung in der der Atmel werkelt.

AVDD und AREF sind immer und grundsätzlich zu beschalten, egal ob Du die 
ADC nutzt.

fchk

von spess53 (Gast)


Lesenswert?

Hi

>Dabei ist es egal ob sie im STK per ISP oder HVVProg programmiert
>werden. Die Chip-Signatur lässt sich dann auch nicht mehr auslesen.

Bist du sicher, bei HV-Programmierung alles korrekt verdrahtet zu haben?
Kann aber auch sein, das deine Stromversorgung etwas schwach auf der 
Brust ist.

MfG Spess

von Peter D. (peda)


Lesenswert?

Frank K. schrieb:
> AVDD und AREF sind immer und grundsätzlich zu beschalten

AREF entweder offen lassen oder 100nF gegen GND.

Auf keinen Fall an AVCC, deshalb auch den AREF-Jumper im STK500 ziehen!


Peter

von Werner J. (werner_j)


Lesenswert?

Hallo,

als Netzteil verwende ich ein 10W Ansmann Steckernetzteil, eingestellt 
auf 12V soll es 900mA können. Ich bastel mir gleich 'nen Kabel fürs 
Labornetzteil und probiere es damit nochmal.

AVCC: Wer lesen kann ist klar im Vorteil :-(. Brücke nach VCC rüste ich 
nach.
AREF: bleibt unbeschaltet

Ich melde mich ob der Spuk damit vorbei ist.

Gruß

Werner

von Werner J. (werner_j)


Lesenswert?

Hallo,

versorge ich das STK mit den Labornetzteil ändert sich zumindest an den 
bereits 'gefressenen' Megas nichts. Weder im ISP noch im HVV Modus 
lassen  sich die Chips programmieren oder die Fuses setzen.  Ein neuer 
hingegen funktioniert in beiden Modi problemlos.

Dann werde ich mal die AVCC Brücke nach VCC nachrüsten und gucken ob der 
neue dann überlebt.

Gruß
Werner

von Werner J. (werner_j)


Angehängte Dateien:

Lesenswert?

Hallo,

der Spuk ist leider nicht vorbei :-((

Der Reihe nach
STK ans Labornetzteil angeschlossen rund. Anzeige, rund 100mA dauer beim 
Proggen ein Peak bis zu 700mA.
Brücke AVCC an VCC nachgerüstet

dann...

STK500 im PP/HVSPProg Mode
Mega48 Fuse CLKDIV8 gelöscht. (SPIEN & Brown out disabled & 8MHz intern 
+ 65 ms sind gesetzt)
Fuse verify: OK
Hex-File programmiert: Hex-File: Jorgo-Test3.hex
verify:OK
Schaltung getestet: verhält sich so wie erwartet, OK

Programm erweitert
neues Hex-File programmiert: Hex-File: Jorgo-Test4.hex
verify:OK
Fuse ausgelesen: OK
Hex-File zurückgelesen: Jorgo-Test4out1.hex
Schaltung getestet: OK

Programm erweitert
neues Hex-File programmiert: Jorgo-Test5.hex
verify: fail; Ox0000 is OxFF shoud be Ox19 Anm: doch, der Mega 48 steckt 
richtig rum im richtigen Sockel!
Hex-File zurück gelesen: Jorgo-Test5out1.hex

Fuse ausgelesen:
SPIEN gelöscht, dafür SELFPRGEN gesetzt
Fuses Neu setzten
Verify Error: write E2 DE E3, read FF FF FF (SPIEN gelöscht, SELFPRGEN 
gelöscht, Brown out disabled, externer Clock 8 MHz)

Chip Signatur ausgelesen: OxDE OxD2, OxC5
Warning: Signatur does not match selected device

Chip trotzdem mal in die Schaltung eingesetzt: Keine Funktion, 
Stromaufnahme bei über 150 mA!

Zurück ins STK
Test: Chip erase
OK
Hex-File programiert: gleiche Fehlermeldung
Fuses gesetzt: gleicher Fehler
Chip Signatur auslesen: 0xFF OxFF OxFF !
Hex-File zurück gelesen: Jorgo-Test5out2.hex

Nochmal mit vorletztem Hex-File: Jorgo-Test4.hex
Gleiche Fehlermeldung
Zurücklesen: Jorgo-test4out2.hex

Wie man sieht, bis Test4 war alles OK.
Ab Test5 hat der Speicherinhalt nichts mehr mit dem programmierten File 
zu tun, wobei ab dem Chip erase alles auf OxFF steht und dann auch nicht 
mehr veränderbar ist.

Zum Schluß dann noch überprüft, ob V-Target und AVCC mit den im Programm 
angezeigten 5,1 und 5,0V übereinstimmen. Laut Multimeter beide 4,96 V


Noch jemand eine Idee?

Gruß
Werner

P.S.
Ich hab heute noch ein paar weitere Megas bekommen, diesmal Mega48P.
Weiß jemand auf die schnelle wo der Unterschied zwischen dem Mega48 und 
dem Mega48P ist. Beim ersten durch scrollen des Datenblatts ist mir 
nichts aufgefallen.

von Ben _. (burning_silicon)


Lesenswert?

Die 0xFF entstehen gerne mal durch Fehler bei der Datenübertragung, 
nicht durch defekte AVRs. Kannst Du ausschließen, daß die Übetragung die 
Ursache ist?

von Sepp (Gast)


Lesenswert?

Ist das Flachbandkabel OK?
Hier könnte die Ursache für die Übertragungsfehler liegen.
Das FB-Kabel kann durchaus, wenn es ohne Zugentlastungsbügel
am Stecker verpresst ist, einen "Wackelkontakt" bekommen,
der nicht so leicht zu finden ist.
Versuche es mal mit einem "neuen" Kabel.
So ein Wackler hat bei mir auch schon den einen oder anderen
ATMEGA geschrottet. Mit einem Zugentlastungsbügel hatte ich bisher
keine Kabelseitig bedingten "Wackler".
Auch die Stecker haben nur eine begrenzte Lebensdauer.

von Werner J. (werner_j)


Lesenswert?

Hallo,

ich kann das nur soweit ausschließen, als daß das Problem sowohl bei SPI 
Programmierung wie auch bei PP/HVSP auftritt und ich unmittelbar nach 
einen 'defekten' Chip einen Neuen korrekt brennen kann, ohne an den 
Flachbandkabeln irgend etwas verändert zu haben.

Ich schau auf jeden Fall ob ich morgen noch 6 und 8 polige 
Buchsenleisten auftreiben kann.

Weiß jemand ob Digital IOs der AVRs ähnlich wie manche CMOS Chips 
empfindlich auf Spannungen reagieren, die zwischen den definierten Logik 
Pegeln liegen? (Stichwort: parasitärer Thyristor) Dann könnte es sein, 
daß Port D durch den extrem hochohmigen Abschluß geschädigt wird.
Obwohl, dann müsste er schon in der Schaltung ausfallen.

Gruß Werner

von Jonathan S. (joni-st) Benutzerseite


Lesenswert?

Hallo,

die IOs von deinem ATMega48 sollten durch eine Spannung zwischen den 
Logikpegeln eigentlich nicht geschädigt werden. Für die geschrotteten 
ATMegas fällt mir aber keine Erklärung ein... Du kannst vielleicht mal 
versuchen, ein anderes STK500 zu nehmen...

Gruß
Jonathan

von Ben _. (burning_silicon)


Lesenswert?

Hmm... komisch, verstehe ich irgendwie nicht woran das liegen soll. Auch 
daß die Dinger hinterher 150mA in der Schaltung ziehen. Ziehen die nicht 
ansprechbaren auf dem STK500 auch schon 150mA? Die müßten dabei eine 
deutliche Erwärmung erfahren.

Im Extremfall schick mir mal 1-2 von den defekten zu ich hab hier 
jemanden der auch ein STK500 hat. Dann kann ich mir das mal selber 
anschauen.

von Peter D. (peda)


Lesenswert?

Werner Just schrieb:
> Chip trotzdem mal in die Schaltung eingesetzt: Keine Funktion,
> Stromaufnahme bei über 150 mA!

Wenn der AVR alleine schon 150mA zieht, ist er mit Sicherheit hin. Mehr 
als 12mA dürfen es nicht sein (siehe Datenblatt).

Da das STK500 kaum die Ursache ist, wird es wohl Deine Schaltung sein.
Floatende Eingänge stören nicht.
Was aber garnicht geht, sind Eingänge, die vor oder nach VCC an Spannung 
liegen. Da gehören dann Schutzwiderstände in Reihe (etwa 10k).

Ich vermute stark, daß Dein Netzteil spinnt und den armen AVR 
zerbröselt.
In meinen Schaltungen mache ich oft Suppressordioden parallel zu VCC, 
z.B. 1SMB5.0, P6KE6V8. Aufpassen, einige Hersteller bezeichnen die 
Betriebsspannung (5V), andere die Z-Spannung (6,8V).


Peter

von Werner J. (werner_j)


Lesenswert?

Hallo,

Peter Dannegger schrieb:
> Ich vermute stark, daß Dein Netzteil spinnt und den armen AVR
> zerbröselt.

ich vermute Du hast recht.

Ich habe heute Zuhaue mit einem 2ten Netzteil den ganzen Tag gebastelt 
ohne das  etwas passiert ist. Das andere Netzteil hatte ich im Institut 
gelassen.

Werde mir morgen mal genauer anschauen was das betreffende Netzteil beim 
ausschalten macht. Wenn es an ist liefert es saubere 5V, das hatte ich 
schon getestet. Aber irgend etwas in die Richtung muss es gewesen sein.

Danke an alle die mir mit Tipps zur Seite gestanden haben.

Gruß
Werner

von Werner J. (werner_j)


Lesenswert?

Hallo,

heute als erstes das Speicheroszi ans Netzteil geklemmt.
Einschalten -> 5V
Ausschalten -> Peak auf 42V, dort 0.5s verbleibend, anschließend in ca. 
1s exponentiell abklingend auf 0V.

Das Netzteil wird daher für schuldig befunden, der Zerstörung mehrerer 
Atmels und der Änderung meiner Haarfarbe nach Grau in unzähligen Fällen.


Grüße und Danke!

Werner

von Ben _. (burning_silicon)


Lesenswert?

Tolles Netzteil. Würd ich direkt die Platine rausreißen, in die 
Teilespender-Kiste packen und den Rest wegschmeißen.

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.