Stack Pointer befindet sich im Flash unter 0x08000000 Wo ist das Stack Pointer Register? Ich habe gehört, dass es einen gibt, aber ich habe die Beschreibung und den Standort SP nicht gesehen.
Ich glaube SP ist bei ARM immer R13. Bin aber nicht sicher ob es da ausnahmen gibt... Was meinst du mit "Addresse vom Stack Pointer Register"? Das ist ein core register... https://developer.arm.com/documentation/dui0552/a/the-cortex-m3-processor/programmers-model/core-registers
Da die Cortex-M ohne Stack nicht funktionieren (wegen Autostacking) wurde _stack_end_ auf Adresse 0 gelegt, noch vor dem Programmstart auf Adresse 4 https://wiki.segger.com/Arm_Cortex-M_interrupts Die Stackpointer holen sich _stack_end_ dort ab. Die Stackpointer sind immer R13 denn nur das gibt es mehrfach für die verschiedenen Betriebszustände: https://developer.arm.com/documentation/ddi0439/b/Programmers-Model/Processor-core-register-summary Bei den Cortex-A ist stattdessen der Programmstart noch auf Adresse 0 https://www.riscosopen.org/wiki/documentation/show/Hardware%20Vectors
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.