Forum: Mikrocontroller und Digitale Elektronik Interruptvektor Capture-Compare Priorisierung bei MSP430


von MSP430 (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe eine frage zu dem obigen Timer.
Er stammt vom MSP430 und ich frage mich, welche Bewandnis es damit auf 
sich hat, dass die Interruptquelle Nr.49 mit

TA1CCR0 sowie das CCIFG0

gegenüber der Interruptquelle Nr.48 mit

TA1CCRi und CCIFGi --- i aus [1, 2] exponiert behandelt wird...?


Warum wird das TA1CCR0 nicht mit in den "normalen" Interruptvektor mit 
aufgenommen?

mfg

von ich (Gast)


Lesenswert?

z.B.:

CCR0: soll alle 5ms ein Interrupt auslösen
CCR1: soll alle 10ms ein Interrupt auslösen

Durch die höhere Priorität von CCR0 ist gewährleistet, dass zu den 
Zeitpunkten bei denen beide Interrupts gleichzeitig ausgelöst werden, 
der CCR0 Interrupt zuerst bearbeitet wird.

von MSP430 (Gast)


Lesenswert?

danke,

nochmal zum Verständnis hinterher:

Das CCR0-flag wird gesetzt, sobald der Wert des TA1R-Registers mit 
demjenigen des CCR0-Registers übereinstimmt, also der TA1CCR0 gesetzt 
wird?
...und das CCIFG0 wird wiederum gesetz, wenn der Timer wieder auf Null 
zurück gesetzt wird, richtig?


Wenn ich nun also den Up-Mode verwende, dann fallen aber doch beide 
Zeitpunkte zusammen, und ich müsste in diesem Interrupt nur das CCIFG 
auswerten, richtig?
dies wiederum würde dazu führen, dass nur der Vektor TA1IV ausgewertet 
werden müsste, richtig?

mfg

von MSP430 (Gast)


Lesenswert?

Die Frage ist nach wie vor aktuell.

...und es kommt noch eine weitere oben drauf:

Angenommen ich nutze den Continuous Mode und addiere in jeder ISR immer 
einen konstanten Wert in mein CC-Register, so dass irgendwann der 16-Bit 
Wert erreicht wird.

Was passiert beim Überlauf?
Ist es dann so etwas wie eine Modulo(2^16-1)-Addition, oder bleibt das 
CC-Register dann bei FFFF stehen?

mfg

von Doku (Gast)


Lesenswert?

Steht alles im Family Guide, mit Bsp. und allem was man so braucht.

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.