Forum: Mikrocontroller und Digitale Elektronik AVR PWM-Timer zurücksetzen


von Hartmut G. (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

für eine Ersatzwaschmaschinensteuerung teste ich gerade folgende 
Variante, um mit dem AVR (noch: Mega 2561, wird: 644) die 
Phasenanschnittsteuerung für den Trommelmotor zu realisieren:

Gemäß Atmel Application Note liegt die Netzspannung hochohmig am 
INT0-Eingang. Dabei lösen beide Flanken einen Interrupt aus. Der 
Interrupt soll später u.a. die Ventile, Pumpen, etc. schön im 
Nulldurchgang ein- und ausschalten sowie per Phasenanschnitt den Motor 
regeln.

Für letzteres löscht die Interrupt-Routine nur den Timer 0, den ich im 
Fast-PWM Mode 3 als Triggertimer für den Triac vorgesehen habe. Ein 
voller Timerdurchlauf dauert >10ms, d.h. bei 8MHz Takt mit Prescaler 
1024 im grünen Bereich.

Das ganze funktioniert soweit auch gemäß angehängtem Code, jedoch nur, 
wenn ich in der Interrupt-Routine den Timer 0 auf 255 setze. Setze ich 
den auf 0 bleibt der PWM-Ausgang stumm. Warum? Was habe ich übersehen?

Gruß & Danke
Hartmut

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
Noch kein Account? Hier anmelden.