-         

Ergebnis 1 bis 3 von 3

Thema: Cortex M3 Programcounter Adressen

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.11.2007
    Ort
    Berlin
    Beiträge
    523

    Cortex M3 Programcounter Adressen

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo zusammen,
    ich arbeite mit der IAR Embedded Workbench und da ist mir eine Unstimmigkeit aufgefallen. Vermutlich habe ich wohl irgend etwas an der Prozessorarchitektur nicht verstanden.
    Dazu habe ich mal einen Screenshoot angefügt.

    Im Memory Fenster erscheint die Adresse B5 03 00 00 also die Adresse 0x03B5
    Im Dissassembler Listing steht bei __iar_programm_start die Adresse 0x3B4
    Im Mapfile steht bei __iar_programm_start die Adresse 0x000003B5

    an welcher Adresse steht denn nun der Code ??

    Danke im Voraus für Eure Bemühungen
    Siro

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    23.03.2006
    Alter
    28
    Beiträge
    54
    Hallo

    Lies einmal das Kapitel über die Interrupt vector table im Datenblatt durch. Das hilft dir glaubich weiter.

    mfg

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.11.2007
    Ort
    Berlin
    Beiträge
    523
    Diese Antwort hat mir nicht wirklich weitergeholfen....

    Habe aber trotzdem eine Erklärung dafür gefunden:
    Auf Seite 684 im Datenblatt UM10360 steht folgendes:

    Remark: Bit[0] of any address you write to the PC with a BX, BLX, LDM, LDR, or POP instruction must be 1 for correct execution, because this bit indicates the required instruction set,
    and the Cortex-M3 processor only supports Thumb instructions.

    Deshalb werden in der Interrupt-Vectoren-Tabelle alle Adresesen +1 eingetragen.

    mfg. Siro

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •