Ich suche eine möglichkeit die Hardware PWM funktion bei einem Atmel AVR mit einem Externen Interrupt zu synchronisiren. Also wenn an dem Interrupteingang sich der Pegel ändert soll die PWM Funktion bei 0 Loslaufen also High Pegel am ausgang und dann bei dem Zählerstand x wieder auf Low gehen.... Wenn ich jetzt allerdings das Timerregister einfach überschreibe mit 0 setzt der Controller einen Zyklus lan die PWM aus...... Für Lösungen bin ich dankbar.
Wenn ich dich richtig verstehe möchtest du die PWM wie einen Timer nutzen. Falls dem so ist würde ich an deiner Stelle einfach einen Timer benutzen und diesem per Interrupt ein Flag mitteilen. MfG
Stefan schrieb: > einfach überschreibe mit 0 > setzt der Controller einen Zyklus lan die PWM aus...... Schreib mal den Maximalwert rein (255 bei 8bit-Timer) zum Testen.
Stefan schrieb: > Wenn ich jetzt allerdings das Timerregister einfach überschreibe mit 0 > setzt der Controller einen Zyklus lan die PWM aus...... Siehe Datenblatt/Manual zum uC: Das Compare-Register wird im PWM-Betrieb erst mit dem Timer-Übergang von 255->0 neu geladen. Vermutemal, phasensynchrone PWM für Phasenanschnitt? BTDT.
Das das im Datenblatt steht, weiß ich selber :-) das mit dem 255 reinschreiben muss ich noch mal testen, hatte das zwar schon mal probiert wenn ich mich richtig erinnere aber irgendwie führte das auch nicht wirklich zu dem ergebnis.... nee keine Phasenanschnittsteuerung, soll krafftstoff und zzp bei einen Benzinmotor steuern.
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.