msp 430 PWM verschoben

Gast #2554742
Lesenswert?

Hallo,

versuche grade 4 PWM Signale zu erzeugen die jeweils um 90 Grad 
verschoben sein müsse.

Außerdem muss der Duty Cicle verstellbar sein. Benutze den MSP 430 F2 
2619. Habe 2 Timer zu Verfügung und habe leider kein erfolg.

Jedes Signal dient dazu einen Hochsetzsteller anzusteuern.


Hat jemand eine Idee?
Angehängte Dateien:
Gast #2555030
Lesenswert?

Als Ansätze, wenn die Referenz/Comparepunkte an einem Timer nicht 
ausreichen kann man diese meist wiederbenutzen, indem ein Interrupt auf 
die Comparepunkte gesetzt wird und den Inhalt dieser Register 
austauscht.
Beispiel: Initial sind die Comparezeiten A, B und C gesetzt. Bei 
Erreichen der Marke A erzeugt die Hardware einen Pin-Toggle und einen 
Interrupt. Dieser kann während weitergezählt wird die Comparezeit A 
gegen D tauschen.

Das hat natürlich den Nachteil von deutlich gesteigerter Last für den 
Prozessorkern, da er die zusätzlichen Interrupts schnell genug bedienen 
muss.

Alternative bei Architekturen, wie dem MSP430 ist, Zyklen zählen. Da die 
Ausführungszeit konstant gehalten werden kann zwischen der 
Initialisierung zweier Timer und diese sich in der gleichen Taktdomäne 
gewählt werden kann ist es auch möglich Zwei Timer mit einem konstanten 
Versatz zu starten. Kann man zusätzlich einen Startwert vorgeben, der 
nicht als Resetwert für den Timer doubelt, können sie sogar synchron 
gestartet werden und du kannst die Compare-Möglichkeiten beider Timer 
nutzen.

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