This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Stack Initialization with Cortex M3

Parents
  • Note: This was originally posted on 26th June 2009 at http://forums.arm.com

    Yes the value is 0x08100000 at beginning.
    This is done automatically, I used the example vector table:

    ExecFuncPtr exception_table[] = {
    #pragma import(__use_two_region_memory)
       (ExecFuncPtr)&Image$$ARM_LIB_STACK$$ZI$$Limit,
       (ExecFuncPtr)&__main, /* Initial PC, set to entry point  */
    NMIException,
    HardFaultException,
    MemManageException,
    BusFaultException,
    UsageFaultException,
    0, 0, 0, 0,    /* Reserved */
    SVCHandler,
    DebugMonitor,
    0,       /* Reserved */
    PendSVC,
    SysTickHandler,
    /* Configurable interrupts start here...*/
    InterruptHandler,
    InterruptHandler,
    InterruptHandler,   /* Some dummy default interrupt handlers */


    Are you sure that the (RAM) memory before 0x08100000 is actually, physically implemented ? It might be that when you push, you try to access memory that's actually not there and so it crashes..
Reply
  • Note: This was originally posted on 26th June 2009 at http://forums.arm.com

    Yes the value is 0x08100000 at beginning.
    This is done automatically, I used the example vector table:

    ExecFuncPtr exception_table[] = {
    #pragma import(__use_two_region_memory)
       (ExecFuncPtr)&Image$$ARM_LIB_STACK$$ZI$$Limit,
       (ExecFuncPtr)&__main, /* Initial PC, set to entry point  */
    NMIException,
    HardFaultException,
    MemManageException,
    BusFaultException,
    UsageFaultException,
    0, 0, 0, 0,    /* Reserved */
    SVCHandler,
    DebugMonitor,
    0,       /* Reserved */
    PendSVC,
    SysTickHandler,
    /* Configurable interrupts start here...*/
    InterruptHandler,
    InterruptHandler,
    InterruptHandler,   /* Some dummy default interrupt handlers */


    Are you sure that the (RAM) memory before 0x08100000 is actually, physically implemented ? It might be that when you push, you try to access memory that's actually not there and so it crashes..
Children
No data