Da ich an einigen AVR-Mikrocontroller-Projekten arbeite, bei denen sich mehrere Prozessoren Takte teilen, wollte ich eine solide, zuverlässige Schaltung erstellen, um nach dem Wechseln der AVR-Sicherungen einen Takt bereitzustellen, nur für den Fall. ;)
Ich habe einen Pierce-Oszillator mit 4,096 MHz erstellt und er gibt ein anständiges Signal und eine nahezu perfekte Frequenz mit einer sehr guten vertikalen Neigung zu den Rändern, aber er hat viele nicht quadratische Wackeln:
Hier meine Schaltung:
Und seine Umsetzung auf echtem Veroboard:
Die Frage ist: Was kann ich tun, um die meisten oder alle "spitzen" Signalkomponenten zu entfernen, wenn das Signal hoch ist? Gibt es zusätzliche Komponenten, die ich hinzufügen könnte, um dies zu verhindern und dennoch eine brauchbare Rechteckwelle zum Takten eines AVR zu haben, der von einer externen Uhr abhängig ist?
Ein Pierce XTAL-Oszillator ist eine lineare negative Rückkopplung mit 180 Grad Phasenverschiebung und 180 Grad Inversion, was zu einer stabilen AC-gesättigten Oszillation führt.
Die negative DC-Rückkopplung R wirkt als Tiefpassfilter, so dass sie den Eingang für einen Ausgang mit 50 % Tastverhältnis selbst vorspannt.
Sie haben einen Schmitt-Trigger-Relaxationsoszillator gezeigt, der auf der Hysterese zwischen zwei Schwellenwerten beruht, um einen astabilen Relaxationsoszillator zu erzeugen. Außer Sie haben eine TTL-Teilenummer anstelle von CMOS. Hmm.
Das Problem ist also, dass Sie in einem Pierce-Oszillator keine Hysterese verwenden können.
Es muss ein linearer Inverter sein.
Oft wird empfohlen, UB- oder ungepufferte Inverter zu bevorzugen, um Resonanzen bei Obertönen durch die hohe Verstärkung zu vermeiden, obwohl dies mit einem seriellen R am Ausgang gedämpft werden kann, um als LPF zu fungieren.
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Leider gibt es einige Websites mit falschen Informationen über diese Schaltung und ihre Funktionsweise. Diese Seite ist ein Beispiel, das den Schmitt-Trigger zeigt. Das ist völlig falsch und kein uC verwendet intern einen Schmitt-Trigger für externe Resonatoren.
Mach es richtig. Zeigen Sie alles im Schaltplan, einschließlich der Stromversorgung ALLER Chips. Digitale Chips wie dieser benötigen eine Bypass-Kappe zwischen ihren Stromversorgungs- und Erdungsstiften so nah wie möglich am Chip. Eine 1-µF-Keramik würde gut funktionieren.
Die Tatsache, dass die Spitzen der Wellenformen unordentlich, aber die Unterseiten sauber sind, ist ein unmittelbarer Hinweis darauf, dass die Unordnung tatsächlich von der Stromversorgung herrührt.
Denk darüber nach. Wenn der digitale Ausgang hoch ist, ist er im Grunde über einen FET von höchstens einigen 100 Ω mit Vdd verbunden. Wenn am Ausgang Mist ist und nichts geladen wird, dann kommt dieser Mist von Vdd. Hmm. Wie kam das an der Umgehung bei dieser Frequenz vorbei? Oh, schau, es gibt keine Bypass-Kappe! Das hätte wirklich ein ziemlich offensichtlicher Denkprozess sein sollen.
Ein zusätzliches Problem ist, dass Sie 74LS-Teile verwenden, um den Kristall anzutreiben. Ein 1-MΩ-Rückkopplungswiderstand wird bei einem 74LS-Wechselrichter nicht viel bewirken. Die daraus resultierenden harten Kanten verursachen einen erheblichen Oberwellengehalt aus dem Kristall, der so stark klingelt, dass er die Stromversorgung verschmutzt, was durch die Entscheidung unterstützt wird, die Bypass-Kappe wegzulassen. Es sieht so aus, als ob Ihr Geräusch die 4. Harmonische ist, die mit ziemlicher Sicherheit vom Kristall verursacht wird.
Verwenden Sie einen CMOS-Inverter mit symmetrischen Eingangspegeln (nicht TTL), fügen Sie die Bypass-Kappe hinzu, und alles sollte deutlich sauberer sein.
Benutzer16222
TomServo
τεκ
Benutzer16222
TomServo
Tony Stewart EE75
TomServo
Tony Stewart EE75
TomServo
Tony Stewart EE75