Wie zu verlagern, Vektor-Tabelle, und ändern Sie ab addressin cortexm3 mit µvision(Keil)?

Ich bin mit STM32F107-cortex-m3-controller. Ich verwende uvision IDE für das Projekt. Ich habe eine Anwendung, die fehlerfrei läuft am Ausgangspunkt ich.e 0000 0x0800 angezeigt. Wenn ich eine änderung Ausgangspunkt, um 0x0800 angezeigt 4000 die Anwendung nicht richtig funktioniert. Ich habe änderungen vorgenommen, um die Vektor-Tabelle Position mit dieser Funktion als
NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x8004000) ich.e geändert SCB->VTOR = 0x8004000 an diesem Ort.
Aber auch nach dieser Unterbrechung ist nicht passiert. Sollte ich nichts machen, um dieses Projekt zu arbeiten?

Grüße
Suraj

Ich vermute, Sie versuchen zu sagen, dass die Vektor-Tabelle in Ihrer Anwendung ist neu-befindet sich auf 0x0800 angezeigt.0000 nach dem boot-up, und jetzt sind Sie versucht, es zu verschieben, um 0x0800 angezeigt.4000? Haben Sie sichergestellt, dass die Vektor-Tabelle ist tatsächlich in der Lage von Ihrem toolset an die neue Adresse? Und Sie sagen: "die Unterbrechung ist nicht passiert" - was genau bedeutet das? Eine Menge hat zu Recht zu gehen, in der zwischen einer peripheren behauptet ein unterbrechen und Sie mit Ihren ISR - stack-setup aktivieren, interrupts an die CPU, NVIC interrupt-Priorität, die richtige interrupt-Vektor installiert, periphere interrupt demaskiert, etc.
Als ich sah auf die map-Datei ,die Vektor-Tabelle befindet sich auf 0x0800 angezeigt 4000 sich. Ich denke, es ist eine Initialisierung Fehler. die überprüfung auf, dass
Dies ist nicht die Antwort auf deine Frage, aber ich würde vorschlagen, dass Sie einen globalen oder statischen array, das groß genug ist, um ein Duplikat der Vektor-Tabelle und zeigt den Vektor, um diese, anstatt die Adresse direkt. Der Grund für meinen Vorschlag ist, dass Ihr Programm wächst, es zuordnen können Variablen, überschreiben Sie die Vektor-Tabelle als Variablen zugeordnet. Eine andere Lösung ist das Bearbeiten der linker-Skript und reservieren Sie genügend Platz für eine Vektor-Tabelle gibt.

InformationsquelleAutor suraj | 2013-02-07

Schreibe einen Kommentar