Forum: Mikrocontroller und Digitale Elektronik Mit TimerA mehrere Ausgänge steuern |MSP430FR5739


von Jo T. (trilli)


Lesenswert?

Hallo Leute,
folgendes, ich steuer mit dem TimerA beim Microcontroller den Ausgang 
P1.0 (TA0.1), benutze dabei den Interrupt und gebe damit einen 
bestimmten Binärcode aus.
Kann ich jetzt mit dem TimerA noch weitere Pins steuern, in dem ich ein 
anderes Vergleichsregister benutze? Kann ich dann den Outmode für diesen 
Ausgang verändern, oder würde dann auch meine Ausgabe über den Pin1.0 
verändert werden Zb. auf P1.1 TA0.2? Welches Regiter muss ich dann 
setzen? Es soll dann einfach ein konstantes Rechtecksignal mit Outmod7 
ausgeben werden.

Ich hätte das ganze sonst mit dem TimerB gemacht funktioniert ja 
genauso.

Vielen Dank im Voraus!

von outmode (Gast)


Lesenswert?

Wenn du den Timer Interrupt nutzt, nutzt du nicht den Outmode! In der 
Timer ISR kannst du jeden beliebigen Portpin manipulieren, oder noch 
ganz andere Sachen machen. ;-)

Für einen einfachen Rechteckausgang, PWM, oder ein Kram nimmt man den 
Outmode.

Beitrag "Re: MSP430G2553 PWM Duty Cycle mit Poti einstellen"

von Jo T. (trilli)


Lesenswert?

also für den binärencode habe ich outmod_0 und toggle dann immer im 
interrupt das OUT-Bit so wie ich es brauche.
ich versteh aber nicht, wie ich mit dem gleichen Timer andere pins 
steuern kann, ohne dass ich mir dadurch meine erste funktion 
"zerschieße". für die 2. funktion, ein eionfaches rechtecksignal 
bestimmter frequenz würd ich dann einfach den outmode7 nutzen wollen

: Bearbeitet durch User
von Clemens L. (c_l)


Lesenswert?

Jo T. schrieb:
> für den binärencode habe ich outmod_0

Mit outmod_0 ist es sinnlos, das Timer-Ausgabe-Bit zu benutzn; du 
könntest genausogut jeden anderen Pin über PxOUT setzen.

Wenn du Modus 1 oder 5 (Set oder Reset) nimmst, dann wird das 
Ausgabe-Bit beim Erreichen des CCR-Werts automatisch geändert, ohne dass 
die Verzögerung des Interrupt-Handlers dazukommt. (Du brauchst aber 
immer noch den Handler, um Set oder Reset für das nächste Bit zu 
setzen.)

> ich versteh aber nicht, wie ich mit dem gleichen Timer andere pins
> steuern kann, ohne dass ich mir dadurch meine erste funktion
> "zerschieße".

Mehrere CCRs des selben Timers funktionieren normalerweise nur, wenn 
alle Signale die selbe Frequenz haben.

Mit einem Timer im Continuous Mode ist es auch möglich, verschiedene 
Frequenzen zu erhalten, aber dann muss in jedem Interrupt das jeweilige 
CCR angepasst werden.

Aber solange du noch freie Timer hast, solltest du sie nutzen.

: Bearbeitet durch User
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.