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

Code execution on Reset for ARM: info required

I want to write a program in assembly where my code is resident from location, say, 0x20000. On reset, code execution should start from location 0x20000. Kindly let us know how to write the initial code.

I tried the following:


AREA ARMex, CODE, AT 0x00000000
ENTRY

start
    B here
 org 0x20000

 here: MOV    r0, #10
    MOV     r1, #3
    ADD    r0, r0, r1
END
  

Parents
  • If you look at the ARM7 TDMI-s memory mapping it has 256 KB on chip Non volatile Memory from 0x0000 0000 to 0x0000 3FFF.It has 16 KB on chip static RAM from 0x4000 0000 to 0x4000 1FFF.

    If I am storing my program at location starting from 0x4000 0000 ,I would like to know how I can make my program to start its execution from the address 0x40000000 rather than 0x00000000 which it does normally when I start execution.

    Remember I want my program to start its execution automatically at 0x40000000 without giving a branch orjump at 0x00000000.

    looking forward to hear.

Reply
  • If you look at the ARM7 TDMI-s memory mapping it has 256 KB on chip Non volatile Memory from 0x0000 0000 to 0x0000 3FFF.It has 16 KB on chip static RAM from 0x4000 0000 to 0x4000 1FFF.

    If I am storing my program at location starting from 0x4000 0000 ,I would like to know how I can make my program to start its execution from the address 0x40000000 rather than 0x00000000 which it does normally when I start execution.

    Remember I want my program to start its execution automatically at 0x40000000 without giving a branch orjump at 0x00000000.

    looking forward to hear.

Children