PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ERLEDIGT] ZerFusede ATMegas reparieren



Arkon
12.10.2011, 18:55
Nabend,

ich experimentiere im Moment mit der Kommunikation zwischen ATMega und PC. Dazu hab ich mir ein kleines Breadboard zusammen gesteckt. Um die Kommunikation zu verbessern habe ich einen Quarz mit 3,6864MHz verbaut (ein anderer Baudratenquarz war beim großen C um die Ecke grade nicht verfügbar). Diesen wie auf unzähligen Seiten beschrieben an PIN9 und 10 (XTAL1 und 2) des ATMEGA8 gekoppelt und beide Pins noch mit je einem 22pF gegen Masse gezogen.

Dann das AVR Studio V4 gestartet und einen ersten Check mit internem Taktgenerator gemacht. Ne LED leuchtet, ein Taster wird ausgewertet, die ISP-Verbindung steht und auch per UART ließen sich die ersten Zeichen empfangen. Dann wollte ich auf den externen Quarz umstellen und war von der Anzahl der Auswahlmöglichkeiten etwas überfordert. Die verschiedenen Einstellungen begutachtet und mich dann für "Ext. RC Osc. 3.0MHz - 8.0MHz; Start -up time :18 CK +64ms" entschieden und schwupp: Ausgesperrt.

Immer wenn ich mich jetzt eine HEX aufspielen will, den Chip löschen will, die Signatur auslesen will poppt mir die Fehlermeldung:
"ISP Mode Error

A problem occured when executing the command. Make sure you are using the correct....blablabla."

Verringern der ISP-Frequenz brachte nichts.

Jetzt meine Fragen an euch:

Was hab ich falsch gemacht?
Wie kann ich wieder auf den ATMega zugreifen?

dussel07
12.10.2011, 19:16
Was hast Du für einen Programmer?
"RC" ist falsch - sieh mal hier (http://halvar.at/elektronik/kleiner_bascom_avr_kurs/fuse_lock_bits_2/)
Am einfachsten wäre Du bastels dir den passenden RC-Oscillator und schließt ihn wie im Datenblatt beschrieben an.
20268

Arkon
12.10.2011, 19:30
Ich hab so nen geklonten USP-ISP-Programmer. Bei meinen Eltern liegt noch ein STK500 rum, dass ich mir mal gekauft habe aber nie wirklich benutzte.

Danke für den Link das erklärt einiges -_- Also wäre die richtige Einstellung "Ext. Crystal/Resonator High Freq.; Start-up time: ???"

dussel07
12.10.2011, 19:33
Richtig!
"Die Angaben "6 CK + 0 ms", "6 CK + 4 ms" und "6 CK + 64 ms" geben an, wie lange der µC dem Oszillator Zeit geben soll um sich einzuschwingen. Viele Oscillatoren brauchen ein wenig Zeit bevor diese im richtigen Takt schwingen. Damit in dieser Zeit keine zeitkritischen Dinge vom µC erledigt werden, wartet der µC die angegebene Zeit ab bevor das Programm gestartet wird. Wenn es nicht wichtig ist, dass der µC sehr schnell nach dem Anlegen der Spannung verfügbar ist, dann sollte man dem Oszillator die maximale Zeit zum Einschwingen geben. Wenn es wichtig ist, dass der µC so schnell wie möglich verfügbar ist, dann sollte man zuerst das Kapitel darüber im Datenblatt lesen bevor man die Einschwingzeit verkürzt. Die hiermit eingestellte Einschwingzeit gilt auch für das Aufwachen des µC, wenn man diesen vorher in einen Schlafmodus gesetzt hat. Dieser Absatz gilt für alle weiteren, hier aufgeführten Clock-Einstellungen und wird für die anderen Einstellungen nicht mehr gesondert erklärt." Zitat Gerold Penz

Hubert.G
12.10.2011, 19:39
Wenn du ein STK500 hast brauchst du doch keinen USB-Programmer mehr. Damit kannst du ISP- und HV-Programming.
Da ist ein verfusder Kontroller kein Problem mehr, da kannst du dir sogar den Reset-Pin abschalten.
Deine vorgeschlagene Einstellung ist richtig. Start-up Time ist die Zeit vom anliegen der Spannung bis zum Arbeitsbeginn des µC.
Längere Startzeiten können nützlich sein wenn noch anderer Bauteile vorhanden sind die etwas länger zum Starten brauchen.

BMS
12.10.2011, 19:50
Hallo,
wenn du weißt, dass du ihn auf ext. RC eingestellt hast, kannst du den Quarz vorläufig ausbauen
und noch einen Widerstand einbauen wie auf Seite 29 im Datenblatt. Passende Bauteilwerte sind
auf Seite 244 genannt (10kOhm, 22pF).
Dann sollte der Atmega laufen und du kannst ihn (ggf mit geringerer Übertragungsgeschwindigkeit)
wieder auf Quarz umprogrammieren. Dann musst halt wieder umbauen auf Quarz und dann sollte der
laufen ;) Umständlich, sollte aber funktionieren.
Grüße,
Bernhard

Arkon
12.10.2011, 20:10
Danke für die Tipps und Hinweise. Die Lösung von BMS hat auf Anhieb funktioniert und jetzt läuft der ATMega mit dem Takt des Quarzes. So wie es sein soll.

Vielen Dank an alle Helfer!

Besserwessi
12.10.2011, 21:58
Auch wenn man eine andere Taktquelle für RC oder external Crystal eingestellt hat, kann man immer ein externes Taktsignal anlegen und ggf. nutzen. Nur der interne Takt hat da noch Priorität vor. Beim STK500 sollte ein externer Takt schon vorgesehen sein.

Richard
13.10.2011, 03:47
Ich hab so nen geklonten USP-ISP-Programmer. Bei meinen Eltern liegt noch ein STK500 rum, dass ich mir mal gekauft habe aber nie wirklich benutzte.

Danke für den Link das erklärt einiges -_- Also wäre die richtige Einstellung "Ext. Crystal/Resonator High Freq.; Start-up time: ???"

Das STK500 kann HV Programmierung, damitkann man jeden AVR "wiederbeleben". :-) irgendwo habe ich zur Not auch eine Deutsche Anleitung dazu wenn es nötig ist.

Gruß Richard

Arkon
13.10.2011, 07:50
@Richard: Wenn du eine deutsche Anleitung findest wäre das super. Ich hab noch ein paar Megas in meiner Schublade liegen bei denen ich nicht weiß welche Fuses gesetzt wurden. Dann kann ich versuchen auch diese wieder in Gang zu bekommen.

Hubert.G
13.10.2011, 09:38
Ich arbeite auch nur mit der Deutschen Anleitung. War vor einiger Zeit mal im Net. Ist allerdings mit 1,6Mb zu groß als Anhang.

Richard
13.10.2011, 13:03
@Richard: Wenn du eine deutsche Anleitung findest wäre das super. Ich hab noch ein paar Megas in meiner Schublade liegen bei denen ich nicht weiß welche Fuses gesetzt wurden. Dann kann ich versuchen auch diese wieder in Gang zu bekommen.

Ich kämpfe gerade mit Driveonweb um das Login. :-( Irgendwie komme ich da nicht mehr rein? UbuntuON will auch nicht ggrrrr. :-( Sobald das wieder klappt kommt ein Link zur .PDF

Gruß Richard

Arkon
13.10.2011, 13:36
Handelt es sich denn um ein Tutorial zur HV-Programmierung oder um die inoffizielle Übersetzung des STK500 Manuals? Denn das zweite habe ich bereits gefunden und kurz überflogen.

Hubert.G
13.10.2011, 14:34
Ich habe die inofffizielle Übersetztung des STK500 Manuals, darin ist auch die HV-Programmierung beschrieben.