Hallo zusammen,
ich arbeite mit dem LPC2468 auf einem Eval Board von Embedded Artists
und habe folgende zwei Fragen.
1. Frage: Ich debugge mit Eclipce+OpenOCD+gdb. Da möchte ich mir den
Speicherbereich der Special Function Register (0xE000 0000 - 0xFFFF
FFFF) anschauen. Aber das funktioniert nicht. Wenn ich darauf zugreifen
will, spielt der Debugger verrückt und stürzt ab. Wenn ich meinen Stack
anschauen will (so um Adresse 0x4000 0000) funktioniert das problemlos.
Ansosnsten ist mit dem Debugger auch alles supi. Kann es eventuell sein,
dass der JTAG Controller nicht drauf zugreifen darf? Gibt es irgendeine
Möglichkeit dass ich mir die SFRs anschauen kann, ohne sie in Variablen
zu speichern?
2. Frage: Und die ist eigentlich viel interessanter! Ich möchte einen
UART Interrupt verwenden. Ich habe alles nach den Codebeispielen von
Keil eingerichtet. Außerdem habe ich selbstverständlich Funktionsaufrufe
und ein paar einfache Anweisungen in meiner main-Endlosschleife. Nun zum
Phänomen der Sache:
Egal wann der Interrupt physikalisch eintritt, wird die ISR erst beim
nächsten Funktionaufruf aufgerufen. Das habe ich mit Hilfe meines
Debugegrs heraus bekommen.
Wenn ich die Funktionsaufrufe herausnehme, muss erst zweimal ein
Interrupt auftreten, bevor die ISR bedient wird. Die folgenden
Interrupts werden dann einfach ignoriert.
Wie bekomme ich die Interruptbehandlung sicher aaufgebaut? Fehlt
eventuell noch was im StartUp Script (liegt im Anhang) oder welche
Register müssen beschrieben werden?
Vielen Dank schon mal für eure Hilfe im voraus
Eric