Hallo Andreas,
Die Hardware-PWM des Timers 0 des ATMega8 wird im "Phase Correct Mode". Die beiden Register der PWM-Kanäle werden jeweils mit dem PWM-Wert und dem invertierten PWM-Wert geladen. Um die Invertierung des einen PWM-Kanals auszugleichen, wird dieser Ausgang als invertierter Ausgang konfiguriert. Durch diese etwas komplizierte Konfiguration ergibt sich an den beiden PWM-Pins eine phasenverschobene, symmetrische PWM, welche jedoch nur bis zu Hälfte ausgesteuert werden darf. Die beiden PWM-Signale haben also stets dasselbe Pulspausenverhältnis, jedoch um 180° verschoben. Ist das eine Signal gerade in der Low-Phase, ist das andere gerade in der Hi-Phase und vice versa. Das geht natürlich nur solange, bis die PWM 50 % überschreitet, da sich danach die Signale überlagern und es keine gemeinsame Lo-Phase mehr gibt.
Jedes PWM-Signal wird nun einer Halbbrücke zugeführt, welches auch bereits die Pulsweite des Transformators vorgibt. Weiteres werden beide Signale UND-verknüpft und mithilfe dieses Signals alle MOSFETs geöffnet (Treiber werden abgeschaltet). Dadurch ergibt sich das für einen Gegentaktwandler typische Signal, siehe Wikipedia ( Gegentaktflusswandler )
Der Magnetisierungsstrom, der im Kern gespeichert ist, fließt in der "Pause-Phase" (alle MOSFETS offen) über die Sekundärseite in den Zwischenkreiskondensator, und wird somit nicht vernichtet. Betreibt man die einzelnen PWM-Kanäle mit einem Tastverhältnis von über 50 %, so werden beide PWM-Pins nie mehr Low und die Treiber werden nicht mehr abgeschaltet. Zwar funktioniert der Wandler dadurch nach wie vor, jedoch besteht die Pause in diesem Fall nicht mehr aus dem Öffnen der MOSFETS, sondern aus dem schließen der beiden oberen. Dadurch wird der Magnetisierungsstrom des Trafos kurzgeschlossen und langsamer abgebaut.
Beste Grüße,
Roland.
Lesezeichen