toni_m schrieb:
> ich habe hier einen Atmega88A und würde ihn gerne mit einem 4MHz Quarz
> betreiben. Habe den Quarz dazu, über zwei 22pF Kondensatoren an GND, an
> XTAL1 und XTAL2 gehangen. Nachdem ich ins Datenblatt geschaut habe, habe
> ich folgende Fuse-Einstellung im Atmel-Studio gewählt:
> SUT_CKSL auf EXTXOSC_3MHZ_8MHZ_16KCK_14CK_65MS
> Diese Einstellung ist offensichtlich falsch, da ich den Controller
> danach nicht mehr erreichen konnte
Das ist ein Fehlschluß.
> Ich würde jetzt gerne wissen welche Fuse-Einstellung die Richtige ist.
Das ist nicht so einfach zu beantworten, denn das von dir benutzte
Setting ist eigentlich korrekt. Wenn man grobe Schaltungsfehler mal
ausschließt (das solltest du allerdings überprüfen!!!), ist das, was
offensichtlich nicht korrekt ist, ist die Größe der verwendeten
Bürdekapazitäten. Die müssen ziemlich genau zum Quarz passen, wenn der
von dir konfigurierte LowPower-Oszillator ordentlich anschwingen soll.
Du hast zwei Möglichkeiten:
1) Du konfigurierst statt auf LowPower auf "FullSwing". Dann wird das
mit einiger Wahrscheinlichkeit sofort laufen. Aber: Die Kapazitäten sind
nach wie vor falsch (suboptimal), was überlange Startzeiten und eine
geringere Stabilität des Oszillators im Betrieb zur Folge hat. Außerdem
schluckt der Oszillator natürlich im "FullSwing"-Betrieb erheblich mehr
Strom. Dieser Sachverhalt ist ja gerade der Grund dafür, warum es
überhaupt noch was anderes als "FullSwing" gibt.
2) Du wählst die Bürde-Kapazitäten so, daß sie tatsächlich zum Quarz
(und den physikalischen Eigenschaften deines Aufbaus bezüglich der
parasitären Kapazitäten) passen.
Ich würde in jedem Fall Variante 2 bevorzugen.
Selbst wenn die Stromaufnahme keine Rolle spielt, kann man dann nämlich
trotzdem zu Gunsten kürzerer Anschwingzeiten und besserer Stabilität für
den "FullSwing"-Modus konfigurieren. Soll heißen: bei korrektem
physischem Aufbau geht schlicht beides und beides läuft im Rahmen der
Anforderungen bestmöglich.