Forum: Mikrocontroller und Digitale Elektronik ARM7 interrupthandler


von Riwedieb (Gast)


Lesenswert?

hi,

ich suche einen vectorred interrupt handler für nen ARM7 in Assembler,
der auch die register vor der ISR aufm stack sichert (was die beispiele
im forum leider nicht machen :-/). falls jemand sowas bei sich rumliegen
hat, bidde posten =)

von Dietmar (Gast)


Lesenswert?

@Riwedieb:

Suchen, ist immer gut. Manche suchen immer noch, in den Krümeln
wahrscheinlich :-)

Ja, den ARM Assembler muß man früher oder später doch bemühen, auch
wenn einem die Compiler-Hersteller das absolut nicht Glauben machen
wollen:

Zwangsläufig, für einige Spezialanwendungen, mußte ich selbst die in
ARM-Assembler geschriebenen Startup-Dateien (Philips, Keil)
modifizieren bzw. erweitern und ergänzen, z.B. für eine IAP-Anwendung
mit Fern-Update, bei der Stromausfall und Downloadfehler eine
Wiederholmöglichkeit des Flash-Download garantieren müssen.

Benutze mal die Befehle für Load- and Store Multiple File direkt an den
Interruptvektoren und dem Ende der Interruptroutine:

Nachdem alle Stacks mit vernünftiger Größe initialisiert sind, direkt
hinter dem Interruptvektor:

        STMFD SP!, {R0-R7, LR}

Sichert die Register R0-R7 und LR auf dem Stack des Betriebsmodus, in
dem man sich gerade befindet.

        LDMFD SP!, {R0-R7, LR}

Holt die Register wieder zurück.

Der FIQ-Mode hat eigene Register R8-R12, die man nicht sichern muß.

Gruß

Dietmar

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.