Forum: Mikrocontroller und Digitale Elektronik ATmega8L - kein Zugriff mehr - Reseteingang?


von Andreas Tekautz (Gast)


Lesenswert?

Hallo zusammen!

Nach einem Tag unermüdlicher Nachforschungen bin ich jetzt immer noch 
nicht durch Erfolg belohnt worden, jetzt stell ich die Frage mal an 
euch.

Ich programmiere meinen mega8L über die serielle und ponyprog. Es 
funktioniert alles prima, ausser ich greife in irgendeiner Weise die 
CKSEL-bits an. Ich verwende dzt. für die Tests den internen 
Taktgenerator mit 1MHz wollte aber auch mal höhere Takfrequenzen testen 
und hab mal auf 2MHz gestellt. Mein Blink-Testprogramm läuft nach wie 
vor und blinkt jetzt auch brav mit der doppelten Frequenz, allerdings 
habe ich keinen Zugriff mehr auf den AVR über die serielle. Ponyprog 
quittiert jeden Versuch mit der gefürchteten "Device missing or unknown 
device (-24)" Fehlermeldung.
Ich hatte das Problem schon einmal, allerdings war mir da noch nicht 
bewusst, dass es sich beim Auslesen der Security- und Configuration Bits 
um inverse Logic handelt. Der AVR reagierte gar nicht mehr und lief auch 
nicht mehr. Die Lösung bestand im Anschluss eines Quarzes, da ich ihn 
scheinbar auf externe Taktversorgung umgestellt hatte. Nach dem 
richtigen Zurückstellen auf den internen Takt mit 1MHz war alles wieder 
gut.
Jetzt läuft der AVR mit internen 2MHz, aber ich kann ihn nicht mehr 
programmieren oder etwas auslesen.

Die Resetleitung reagiert aber nicht mehr, d.h. wenn ich pin1 auf Masse 
ziehe läuft der AVR fröhlich weiter. Kann es sein, dass ich 
versehentlich den Reseteingang umprogrammiert habe? Kann ich mir 
eigentlich nicht vorstellen..

Hat da irgendjemand Erfahrung und einen Lösungsansatz?

Für Hilfe bin ich sehr dankbar.
lg andi

von Klaus (Gast)


Lesenswert?

Hallo Andreas,

könnte es sein, das Du den SPI Modus abgeschaltet hast? Vermutlich auch 
den Reset Eingang, da er darauf nicht reagiert. Bei mir musste ich 
damals auf parallele Programmierung ausweichen (STK500). Danach gings 
wieder wie gewohnt.

Kann natürlich auch sein, das die Portpins defekt sind.

HTH,
Klaus

von Andreas Tekautz (Gast)


Lesenswert?

Hi Klaus,

danke mal für deine Antwort.. ich muss das überprüfen, aber ich denke 
nicht, dass ich den SPI deaktiviert habe, auch nicht den reset.
Leider kann ich das ja nicht überprüfen, weil ich den Chip nicht mehr 
auslesen kann. Es würde mich schon sehr ärgern auf Parallelbetrieb 
umzusteigen, wenn auch nur temporär, ich hab noch keine Hardware dafür..

Das einzige was ich gemacht habe ist die zwei Bit im CKSEL umzustellen 
um ihn auf 2MHz zu takten.

Der reset ist aber definitiv tot.

lg andi

von Klaus (Gast)


Lesenswert?

Hallo Andreas,

ich wollte damals auch nur den Takt auf extern umstellen ;-(
Der Effekt war genau, wie Du ihn beschreibst.

Wenn der Prommer andere Controller erkennt, funktioniert diese Seite ja 
schon mal.

Feststellen ob der Chip noch funktioniert kannst Du aber nur im parallel 
Mode, also schmeiss das Teil mal noch nicht weg, vielleicht kommst Du 
mal an einen solchen Programmer dran.

Typisches Henne - Ei Problem =8-o

Ciao,
Klaus

P.S. kennt jemand eine Bauanleitung für einen parralell / High Voltage 
Programmer?

von Andreas Tekautz (Gast)


Lesenswert?

hi klaus,

danke für deinen input, aber dass der controller noch funktioniert weiss 
ich ja, da das programm noch läuft. nur die serielle kommunikation und 
der reset gehen nicht mehr. auch beim hochfahren passiert mal ca. eine 
halbe bis sekunde nichts, dann läuft er an.
alles seit dem umstellen des taktes.

freundlichst,
andi

von Klaus (Gast)


Lesenswert?

Hallo Andreas,

da hab ich mich wohl missverständlich ausgedrückt, ich meinte natürlich 
"...um festzustellen ob das programmieren des chips noch 
funktioniert..." musst Du ihn wohl an einen parallel programmer 
anschliessen.

Ciao,
Klaus

von Bertolt Mildner (Gast)


Lesenswert?

Schaltung + Software für einen relativ einfachen par. Mode Programmer 
gibt es hier: http://elm-chan.org/works/avrx/report_e.html#AVRXP

Allerdings bekommt man den NJM2352D (step-up Regler??) wohl nicht 
wirklich leicht. Ich würde einfach ein 12V Netzteil und nen 7805 nehmen. 
Für die angegebenen Transistoren gilt IMHO das gleiche -> durch 
Standard-Typen ersetzen (?).

von Andreas Tekautz (Gast)


Lesenswert?

hallo leute,

danke für die tipps, dann werd ich wohl in den sauren apfel beissen 
müssen und mir einen parallelen programmierer zusammenbauen.
ich werd meine ergebnisse natürlich kundtun.

lg andi

von Andreas Kutschbach (Gast)


Lesenswert?

Ja ich kann dieses Problem mit dem Mega8
nachvollziehen. Habe mir schon zwei davon
genau so ausgeknipst: Die Ursache ist, wie
schon irgendwo angedeutet folgende:
Der Mega 8 hat recht wenige I/O Pins, deshalb
haben die cleveren Leute von Atmel das Teil
mit der Option ausgestattet, den Reset-Pin als
PORT-Pin zu nutzen. (das stellt man mit dem
Fuse Bit "reset-disable" ein.) Jetzt
hat man einen Port Pin mehr, aber ein Reset-
Pin weniger. Das geht solange gut, bis man
wieder lesen/schreiben will: Zum Programmieren
über ISP ist nämlich der Prozi in Reset-Zustand
zu versetzen. Und das übernimmt Ponyprog ganz
allein. ...Wenns denn ein Reset gibt !

Summasummarum: Der MEGA8 hat einen
"Selbstzerstörungsknopf" für den seriellen
Programmiermodus.

MfG

von Klaus (Gast)


Lesenswert?

Hallo,

hab gerade bei einem anderen Chip die gleiche Erfahrung gemacht (ATTiny 
12, seriell Programmiert mit App. note 910). Nach ändern der Taktes -> 
kein Zugang mehr über low Voltage seriell Mode. Mit STK500 und High 
Voltage seriell Mode (der TTiny12 hat keinen par. Mode) lässt sich alles 
umstellen.

Kann aber auch ein problem des AppNote910 Brenners sein.

Beim suchen nach einem anderen Parallelmode und High Voltage Programmer 
bin ich noch auf folgende Seite gestossen:

http://ssanos.tripod.com/thepageofsanos/id7.html

Den werde ich mir mal ansehen.

Für mich heisst das erst mal Finger weg von den Fuse Bits ;-)

Ciao,
Klaus

von Andreas Tekautz (Gast)


Lesenswert?

hallo!

das interessante an meiner geschichte ist ja, dass ich keine bits 
angerührt habe die etwas zerstören könnten, auch die umprogrammierung 
des reset schliesse ich aus. allerdings halte ich es für möglich, dass 
es durch mein doch schon etwas älteres protoboard manchmal zu wacklern 
kommen könnte und dadurch ein programmierfehler entstand.
ich werde (hoffentlich bald), wenn ich wieder zeit habe, einen 
parallelen programmierer bauen und hoffe damit den kleinen wieder 
gesprächiger zu machen ;)

lg andi

von geloescht (Gast)


Lesenswert?

Dieser Beitrag wurde auf Wunsch des Autors geloescht.

von Andreas Tekautz (Gast)


Lesenswert?

sowieso, erst auslesen, dann bei bedarf das ändern was man glaubt, dass 
nötig ist.. ;)

lg andi

von DerInder (Gast)


Lesenswert?

Hallo,
ich hab ein ähnliches Problem mit meinem Mega8 wie Andreas, deshalb will 
ich mir den par-Progger von http://elm-chan.org (s.o.) aufbauen.
Das Problem sind allerdings die Bauteile. Die Transistoren kann man ja 
scheinbar durch Standard-Typen mit Widerständen ersetzen. Den 
Step-Up-Regler lasse ich weg und verwende eine externe 12V Spannung. Nur 
für die Diode 1SS319 weiss ich noch keinen Ersatz. Kennt einer von euch 
einen Austauschtyp ?
Ich hoffe das ich mit meinen Schaltungsvorstellungen nicht total daneben 
liege. Hat jemand Erfahrungen mit dem Teil?

Gruß
-=jens=-

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Ich habe jetzt mal eine idiotensiche... ähhhhm einsteigertaugliche ;-) 
Anleitung zum gefahrlosen Aktivieren des Quarzoszillators und des 
Brown-Out-Detektors geschrieben.
http://www.mikrocontroller.net/tutorial/io-basics.htm

von Klaus (Gast)


Lesenswert?

Hi,

ich hatte mit meinem ATMeaga128 ein ähnliches Problem.
Ich wollte die Fusebits mit dem Kommandozeilen tool stk500 
programmieren, um den 103 Modus auszuschalten. Ich habe auch nur dieses 
Fusebyte umprogrammiert.
Leider werden dann die beiden anderen Fusebytes auf 0xff gesetzt... (ich 
frage mich, welchen Sinn es hat die Möglichkeit anzubieten einzelne 
Fusebytes zu manipulieren, wenn dabei die anderen beeinflusst werden)
Glücklicherweise konnte ich den µC mit einem externem Quarz retten. 
Jetzt bin ich wieder etwas schlauer und mache den Fehler kein zweites 
mal :-)

Gruß,
 Klaus

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.