Forum: Mikrocontroller und Digitale Elektronik MSP430G2231 PWM mit TimerA CCR0 - EQU0?


von W.E. (Gast)


Lesenswert?

Ich möchte ein PWM-Signal erzeugen lassen, aber komme mit dem TI Family 
Guide leider nicht weit.
http://www.ti.com/product/msp430g2231

Der 16-bit Timer hat auf diesem Chip 2 Compare Units (CU) und diese 
verschiedene Modi. Bei einem Match der CU mit dem Timer gibt es ein 
internes Signal EQU.
Eine textuelle Beschreibung finde ich nicht, es gibt nur 
Timing-Diagramme, die die Output-Modi abbilden und dort EQUx Events bei 
Timer-Register (TAR) == Compare-Register-Wert x zeigen.

Verstehe ich diese Abbildungen richtig, dass eine PWM mit variablem 
Duty-Cycle nicht möglich ist, ohne beide CRs zu nutzen, da TAR bei MAX 
(0xFFFF) keine Wirkung auf den Ausgang hat!? D.h. im Toggle mode gibt es 
immer ein 50% Rechteck.

Aber selbst, wenn man beide Compare-Register für eine PWM einsetzt, kann 
eigentlich nur die 2. (1) genutzt werden, da die Units ihre jeweiligen 
Register für die Output-Aktion nutzen, der erste (0) aber in allen als 
MAX genutzt wird, und demnach bei Erreichen beide Aktionen ausgeführt 
werden, was dann offenbar zu einem 1-Takt-Puls führt.

Oder gibt es doch einen Weg, um die Capture Unit 0 für Hardware-PWM zu 
nutzen?

von W.E. (Gast)


Lesenswert?

Noch ne Frage: Nachdem ich das Launchpad auf P1.2 umgesteckt habe, sehe 
ich mit CCR0=255 und CCR1=255 im Up-Mode und Output Mode 7 einen 
Low-Puls - kann man das vermeiden?

von Suche (Gast)


Lesenswert?

Mmmmhhhh, ich verstehe die Frage nicht wirklich. Aber bei OUTMODE7 
bestimmst du mit CCR0 die Frequenz und mit CCR1 das Verhältnis.

Es gibt tonnen von Beispielen im Netz:
http://www.msp430launchpad.com/2010/07/timers-and-clocks-and-pwm-oh-my.html
https://github.com/wendlers/msp430-pwm-servo-sample/blob/master/src/main.c
http://mitchtech.net/msp430-launchpad-pwm/
...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.