www.mikrocontroller.net

Forum: Projekte & Code PWM per Software


Autor: Michael (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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ß !

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.