Forum: Mikrocontroller und Digitale Elektronik Vector Table - Vector Jump Table


von Michael (Gast)


Lesenswert?

Hi Leute, kann mir einer den zusammenhang von der "vector address" und 
"jump table address" erklären? Sprich wenn z.B. ein Interrupt des Timer2 
kommt, wo er dann nacheinander hin springt?

Ich steh grad aufm schlauch..

Hier auf Seite 140:

http://www.eng.uwaterloo.ca/~tnaqvi/downloads/DOC/HC12/evbusermanual.pdf

Danke schonmal!

von Michael (Gast)


Lesenswert?

Vielleicht sollte ich meine Frage präzisieren.

Gesetz dem Fall man will einen Timer2-Interrupt verarbeiten und schreibt 
die ISR dafür an die Speicheradresse 0x800: Wo muss ich diese Adresse 
dann hinschreiben? An die "Vector Address" oder an die "Jump Table 
Address"?

MfG

von Hc Z. (mizch)


Lesenswert?

> Sprich wenn z.B. ein Interrupt des Timer2
> kommt, wo er dann nacheinander hin springt?

Es handelt sich um einen 68HC12.  Der holt sich die Adresse der 
Interrupt-Routine aus der Vektortafel und setzt (nach Abstacken und 
I-Flag setzen) direkt auf dieser Adresse die Ausführung fort.

Anders als z.B. beim AVR springt er also nicht auf eine feste Adresse, 
auf der dann ein jmp-Befehl steht, sondern holt sich die Adresse und 
macht ohne zwischengeschalteten jmp dort weiter.  (Und das I-Flag im 
Statusregister hat umgekehrte Bedeutung.)

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.