Hallöchen Ich möchte mit einem ATMega88 einen konstanten Takt mit 134kHz am Ausgang OCR1A erzeugen. Dazu verwende ich den Timer1 im Fast PWM-Mode mit ICR1 als TOP ( mode 14 ). Als Quarz kommt einer mit 20 MHz zum Einsatz. OCR1A wird auf den halben Wert von ICR1 gesetzt. Es funktioniert auch soweit. Aber leider habe ich auf dem Takt einen starken Jitter. Am beiliegenden Oszibild kann man erkennen, dass ich bereits 10 Takte nach den Trigger einen Jitter von 50% habe !! Der Quarz liefert aber laut Oszi konstant 20.00 MHz. Ich programmiere mit Bascom und der uC steckt auf einem STK500 ( Ich setzte die Konfiguration des Timer händisch, da Bascom den benötigten Modus nicht unterstützt ) Konfiguration : ==================== Ocr1ah = 0 Ocr1al = 68 Icr1h = 0 Icr1l = 136 Tccr1a = &HF2 Tccr1b = &H19 Tccr1c = &H00 Der Timer 1 ist ja in Hardware ausgeführt. Warum habe ich dann auf dem Takt so einen starken Jitter ???? hmg Mandi
Hallo, irgendjemand erklärt mir irgendwann mal, warum jeder zum Erzeugen eines TAKTES den PWM-Mode benutzt... Atmel hat doch den CTC-Mode extra für sowas eingebaut. Sorry, aber ist mir einfach schon zu oft aufgefallen, daß PWM irgendwie eine Funktion für alles zu sein scheint. Versuche es mal im CTC-Mode, geht aber wohl nicht genau auf, 20MHz ist durch 134kHz nicht ohne Rest teilbar. Gruß aus Berlin Michael
Hallöchen Nehme nicht den CTC weil der duty cycle nicht bei 50% ist. Ist der CTC_Modus vom Jitter besser als ein PWM-Modus ? hmg Mandi
Äh, sieht nach einem typischen Beispiel aus für "Wer viel misst, misst viel Mist".... Trigger doch mal auf den unteren Kanal. Und wieso schlabbert der Takt oben im rechten Bereich?
@Mandi: CTC und keine 50% Duty Cycle? Der zum Timer gehörende OC-Ausgang wird bei jedem Erreichen des Vergleichswertes invertiert. Das ist wie ein nachgeschaltetes FlipFlop. Wenn du den Vergleichswert nicht änderst, sollten exakt 50% herauskommen. Meine ATMega48 machen das jedenfalls so. Gruß Jadeclaw
Bensch wrote: > Trigger doch mal auf den unteren Kanal. Und wieso schlabbert der Takt > oben im rechten Bereich? Der untere Kanal ist eine Vergrößerung des oberen rechten Bereichs. @ Mandi Nice Wie sieht denn das Signal aus, wenn Du die Zeit kleiner einstellst und nicht vergrößerst?
Hallöchen So wie es aussieht verträgt das STK500 keine 20 MHz. Auf einen anderen kleinen Board hat es funktioniniert. Danke für Eure Hilfe. hmg Mandu
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.