www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATMega 48 auf 125 kHz gesetzt, jetzt ist der ISP tot


Autor: Tine Schwerzel (tine)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe einen Mega 48 per Fuse auf den internen 125 kHz Oszillator gesetzt, 
jetzt tut er zwar noch ganz langsam sein Programm abarbeiten, lässt sich 
aber selbst mit 51 Hz ISP Frequenz nicht mehr ansprechen. Was tut man 
da? Der Mega ist als TQFP in einer Schaltung eingelötet, ISP ist der 
einzige Zugang....

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>auf den internen 125 kHz Oszillator gesetzt,

Einen Programmer benutzen, der <31,25 kHz kann.

Mfg Spess

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bit-Bang Programmer haben damit Probleme.

Ein STK500 oder AVR-ISP MK2 sollte es aber können.


Peter

Autor: Tine Schwerzel (tine)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich verwende den Dragon...

Autor: Andreas Ferber (aferber)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Siehe 
[[AVR_Fuses#Reaktivieren_bei_fehlerhaften_Taktquellen-Fuse-Einstellungen 
]].

In Kurzform: Quarz aus der Schaltung entfernen, externen Takt (z.B. von 
einem anderen AVR, der permanent einen Pin umschaltet) an XTAL1 anlegen, 
und neu programmieren.

Andreas

Autor: Andreas Ferber (aferber)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andreas Ferber schrieb:
> In Kurzform: Quarz aus der Schaltung entfernen, externen Takt (z.B. von
> einem anderen AVR, der permanent einen Pin umschaltet) an XTAL1 anlegen,
> und neu programmieren.

Grmpf, nein, bringt natürlich nichts bei Einstellung auf interne 
Taktquelle.

Andreas

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andreas Ferber schrieb:
> Grmpf, nein, bringt natürlich nichts bei Einstellung auf interne
>
> Taktquelle.

In deinem Link steht aber: "Retten kann man einen AVR bei jeder 
falschen Taktquellen-Fuseeinstellung (Clock statt Quarz etc.),

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... schrieb:
> Andreas Ferber schrieb:
>> Grmpf, nein, bringt natürlich nichts bei Einstellung auf interne
>>
>> Taktquelle.
>
> In deinem Link steht aber: "Retten kann man einen AVR bei *jeder*
> falschen Taktquellen-Fuseeinstellung (Clock statt Quarz etc.),

OK. Im Prinzip hast du recht.
Dann kriegen wir aber schön langsam amerikanische Zustände. Damit 
rechnet keiner, dass jemand freiwillig seinen Takt auf 125kHz absenkt.

Autor: Randy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Bit-Bang Programmer haben damit Probleme.

Nein, das ist nicht das Problem. Wie spess53 schon schrieb darf der ISP 
Takt nicht zu schnell sein, bei 125kHz Takt des uC muß man den 
Programmer bremsen. Wie das beim Dragon geht weiß ich jetzt nicht.
siehe auch:
Beitrag "Generelles Problem AVR mit 128kHz Oscillator ?"
Beitrag "AtMega88 mit 128khz ausgesperrt."

HTH
Randy

Autor: Bensch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> In deinem Link steht aber: "Retten kann man einen AVR bei jeder
falschen Taktquellen-Fuseeinstellung (Clock statt Quarz etc.),

Da steht FALSCHE Einstellung. Intern ist ja ok und muss nicht gerettet 
werden.

Übrigens ist es Unsinn zu sagen, der Quarz müsse bei angelegtem Takt 
entfernt werden. der beisst nicht.

Autor: kolisson (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe sowas mal mit bascom korrigieren können.
>die $crystal direktive in bascom ganz klein einstellen<

gruss klaus

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich hab jetzt mal den ATmega48 auf das STK500 gesteckt und 128kHz + 
CKDIV8 gesetzt (FE,D5,63), also wurstkäse.

Danach ging wie erwartet, das ISP nicht mehr.
Und das AVRStudio hatte mich sogar davor gewarnt.

Dann ISP-Frequency auf 1,2kHz gesetzt (Write nicht vergessen) und schon 
war der 48-er wieder da. Signatur stimmte, Fuses wieder zurückgestellt.


Peter

Autor: Tine Schwerzel (tine)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, es gibt interessante Neuigkeiten. Ich habe es jetzt nochmal mit 
meinem Asix Presto Programmer versucht, aber mit beiden das gleiche 
Ergebnis:

Man kann exakt 1 mal die Fuses auslesen, danach geht nix mehr und man 
muss den AVR Dragon/ Presto + die Schaltung neu starten. Selbst mit 100 
Hz ISP Frequenz ist nichts zu machen. Die Fuses intern standen auf:
-128 kHz int. Oscillator +0ms
-ckdiv 8
Also eine Taktrate von 16 kHz, eigentlich müsste alles kleiner 4 kHz ISP 
Frequenz tun. Macht es aber nicht.

Ich habe das Teil jetzt rausgedremelt und einen neuen reingelötet. Jetzt 
funktioniert alles perfekt inklusive dem 10 MHz externen Quarz.
Hat jemand eine Erklärung, warum der ISP so total tot war und weder mit 
extrem niedrigen Frequenzen noch mit verschiedenen Programmern zum Leben 
zu erwecken war?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tine Schwerzel schrieb:
> Selbst mit 100
> Hz ISP Frequenz ist nichts zu machen.

Warum denn 100Hz?

Wie gesagt, mit 1,2kHz geht es jedenfalls.
Zumindest mit dem STK500.


Peter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.