mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik dauernd im PWM-Interrupt??


Autor: Mirko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo.

Folgende Situation:

Es soll mit hilfe von PWM ein Sinussignal erzeugt werden.
PWM-Mode --> "center align", am Ende der Zählerperiode wird ein 
Interrupt ausgelöst und in der Interruptroutiene die Pulsbreite 
verändert.
Sieht schon mal alles passabel aus aber Sinus "zittert" zu sehr und an 
manchen Stellen der PWM sieht man, daß die Pulsbreiten variieren (sprich 
an der selben Stelle mal breiter mal schmaler). Vermute, daß dieses 
Zittern an der Variation von Pulsbreiten liegt. Außerdem ist das ganze 
schwer zu triggern und deswegen habe mir an einem Pin ein Triggerimpuls 
in der Sinusfrequenz ausgeben lassen. Habe zu meinem Erstaunen aber eine 
Frequenz von 100kHz festgestellt. D.h. doch, daß µC ständig in die 
Interruptroutine geht, oder?? Dies erklärt auch die variierenden 
Pulsbreiten an den selben stellen und daraus folgendes "Zittern" des 
Sinus, da sich die Pulse bei zu schnellem Interruptaufruf überlagern

Muß man da irgendwie Interrupt zwischendurch ausschalten, oder 
irgendwelche Bit setzen??

µC: AT91SAM7S256
Board: AT91SAM7S-EK
Umgebung: IAR

Autor: Mirko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das war der Übeltäter
/* It is forbidden to continue before updating of the PWM period */
        while(AT91C_BASE_PWMC->PWMC_ISR !=1);

jetzt ist die Triggerfrequenz OK

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.