AnsweredAssumed Answered

Value of "__initial_sp"

Question asked by n.serina on Dec 11, 2017
Latest reply on Dec 11, 2017 by Clive One

Hello ,

I am new to ARM cortex M processors and while doing some coding on my board using KEIL  i found that

at location 0x0000_0000 my debugger shows the value "0x2000_0660" . Thats the value of the MSP loaded.

but i really dont understand how linker arrived at that value using __initial_sp

i checked in the startup file and found this

; Amount of memory (in bytes) allocated for Stack
; Tailor this value to your application needs
; <h> Stack Configuration
; <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
; </h>

Stack_Size EQU 0x00000400

AREA STACK, NOINIT, READWRITE, ALIGN=3
Stack_Mem SPACE Stack_Size
__initial_sp

How this turns out to be __initial_sp = 0x2000_0660 ???

Outcomes