www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AT91SAM7S256 Interrupt bei PWMC


Autor: Johannes Baier (bender)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich arbeite mit einem AT91SAM7S256 Evaluation Board und der IAR 
Workbench. Im Anhan ist ein Oszi-Bild zu finden, welches mein Problem 
erläutert.

Im aktuellen Fall habe ich den PWM Channel auf 512 von 1024 Schritten, 
also halb an, halb aus. Der PWM Interrupt ist auf Pegel eingestellt. Man 
sieht ein kleines Gezapel im Signal. Die Interrupt-Routine gibt (unter 
anderem) einen kleinen Peak aus um zu prüfen wann er kommt.

1) Man sieht, dass der Interrupt zweimal kommt.
   Warum? Eventuell von dem Gezapel?

2) Warum überhaupt das Gezapel?
   Am Anfang des High-Pegels klar: Einschwingen.
   aber "vor dem runtergehen"?

3) laut Atmel soll man Pegel keine Flanken-Interrupte beim PWM 
verwenden.
   Wieso?


Eventuell hat jemand etwas ähnlich schon mal gesehen bzw. weis 
Antworten?

Autor: Johannes Baier (bender)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Manchmal steht man wie ein Ochs vor dem Berg.
Ich habe meine Antworten wieder gelöscht, da ich selbst auf die Lösung 
des Problems gekommen bin:

Aufgrund des PWM-Bugs, dass man nicht auf 0 fahren darf habe ich den 
einen PWM immer auf 2 stehen lassen. Das spuckt mir ordentlich in die 
Suppe, daher das Gezappel. Problem ist das meine Last so wenig 
Induktivität hat, als das Sie über diese Mikrosekunden der 
Stromlosigkeit drüber weg bügelt.


Fragen bleiben trotzdem:
1) kennt jemand eine Alternative zum Umgehen des Bugs AUSSER eben den 
Duty Cycle nicht auf Null zu stellen?

2) Es gibt von Atmel eine App-Note die die PWM-Signal Erzeugung mit dem 
TC erläutert. Kann ich ja prinzipiell auch machen. Gibt es dort 
irgendwelche Nachteile


P.S.: Ich liebe Peripherie-Features an Controllern, die nicht richtig 
funktionieren ;)

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.