Anforderungthoralt hat geschrieben:Ich habe das mal ausgerechnet. Zur Theorie: Wir haben den freien Pin am Controller PD4 (OC1B). Das legt uns auf Timer1 (16 Bit) fest, welcher zum Glück auch in der Firmware noch nicht benutzt wird. Vernünftigerweise wird der im Fast-PWM-Modus betrieben, dabei zählt er von 0x0000 bis zum frei wählbaren Endwert, welcher sich in OCR1A befindet. Wenn der Wert OCR1B erreicht wird, dann wird der Ausgang PD4 (OC1B) zurückgesetzt, bei Erreichen des Endwertes (OCR1A) wird er wieder gesetzt.dg1vs hat geschrieben:* Einstellung des Tastverhältnisses von 0-100% in min. 1 Promille-Schritten
Nehmen wir einmal an, der Timer wird ohne Vorteiler mit dem Takt 16 MHz gefüttert. Unsere kleinste PWM-Frequenz wäre also 16 MHz / 65535 (wegen des 16-Bit-Timers) = ca. 244 Hz. Wir müssten also, um kleinere Zykluszeiten zu erreichen, einen Vorteiler (/8, /64 oder /256) vor den Timer schalten, was kein Problem ist, damit kommen wir auf 30.5, 3.8 und 0.95 Hz. Untere Grenze wird also 1 Hz sein. Das ist zwar nicht ganz so langsam, wie wir es vom AD9833 gewohnt sind, aber ich denke, das wird schon reichen.
Die obere PWM-Frequenz ist zunächst einmal etwas enttäuschend. Wenn wir von einem PWM-Teiler = 1000 ausgehen (Endwert = 1000), was nach Karstens Forderung

Hi Thoralt,dg1vs hat geschrieben:von mindestens 1-Promille-Schritten nötig ist, dann kommen wir nur auf bescheidene 16 MHz / 1000 = 16 kHz. Das stellt mich ehrlich gesagt nicht zufrieden, hier hätte ich gern mehr. Wenn man stattdessen mit 1-Prozent-Schritten zufrieden wäre, kann man bis zu 160 kHz hochgehen. Möglich, aber sicher aufwändig, wäre hier ein Kompromiss, welcher bis 16 kHz mit 0.1 % Auflösung arbeitet und darüber automatisch auf 1 % Auflösung umschaltet. Oder man ignoriert das Problem, erlaubt die Einstellung im 0.1-%-Raster, aber ab 16 kHz wird der Teilerwert halt so klein, dass die tatsächlichen PWM-Werte nicht mehr genau den gewählten Werten entsprechen (die werden dann genauso wie die Frequenz quantisiert).
Soweit die Theorie. Ich bin momentan dabei, die o. g. Fakten in der Firmware auszuprobieren.
völlig richtig, die Frage ist doch, was will ich machen. In meinem Hinterkopf gibt es eine "echte" Anforderung, die in Richtung "Stromauflösung" in einer Spule geht. Mehr geht leider nicht an Ausage, aber in dem Umfeld, geht es um den Frequenzbereich von 1-25 kHz PWM.
Auf der anderen Seite, bleibt die Frage, wo brauche ich 160 kHz PWM?