1、ldr r13,=0x1000


对于ldr r13,=0x1000的解释
有“=”号表示ldr是一个伪指令。
ldr r13,=0x1000     //表示把立即数0x1000送入r13,0x1000=4KB代表bootloader结束处 

r13是stack pointer,因为后面要跳到LedMain,这个function是用c写的,所以必须要事先分配stack,否则c程序没法运行。给r13赋值就是分配stack,对跑马灯来说只要是可用内存就行,并不在乎具体地址在哪。

其实只要记住一条,C是基于栈的语言,没有栈是无法运行的,而且栈是从高地址处向低地址处的,所以是从0x1000~0x0。

(将0x1000改成sdram的地址 0x30000000~0x34000000也行,只是不要覆盖到RO Base的地址)


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/redxu/archive/2010/12/15/6077084.aspx

相关文章:

  • 2022-02-06
  • 2021-07-10
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-20
  • 2022-12-23
猜你喜欢
  • 2021-08-28
  • 2021-06-09
  • 2021-07-26
  • 2021-11-23
  • 2021-11-25
  • 2022-12-23
  • 2021-12-22
相关资源
相似解决方案