PWM per Software

Gast #8341
Lesenswert?

Das Programm 'pwm1.c' erzeugt gleichzeitig 8 PWM-Signale an PortA eines 
8515, und läßt sich auf alle AVRs anpassen. Jeder Kanal wird mit 101 
Schritten aufgelöst: 0 - 100, wobei bei 0 der jeweilige Ausgang auf 0V 
bleibt. Als Zeitgeber dient Timer0, der ohne Vorteiler mit CPU-Takt 
betrieben wird. Bei 8MHz Takt wird alle 32us ein Interrupt ausgelöst; 
bei 100 Schritten pro PWM-Intervall beträgt die Ausgangsfrequenz 
312,5Hz. Durch Reduzierung der Auflösung wird die Ausgangsfrequenz 
proportional erhöht: z.B. 10 Schritte -> 3,1kHz !
Das Programm läßt sich noch vielfach optimieren; in der vorliegenden 
Form wird der Prozessor mit ca. 65% belastet. Viel Spaß !
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren