打印

初学者提问!关于arm中断向量表问题

[复制链接]
1670|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
iconwong|  楼主 | 2008-1-24 13:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
cpu:at91rm9200 

加载u-boot后,用ads来单步调试我的裸机程序,发现0x00000000地址如下:

00000000 [0xea000007]  b    0x24
00000004 [0xeafffffe]  b    0x4
00000008 [0xeafffffe]  b    0x8
0000000c [0xeafffffe]  b    0xc
00000010 [0xeafffffe]  b    0x10
00000014 [0xeafffffe]  b    0x14
00000018 [0xe51fff20]  ldr   pc,0xfffff100 ; = #0x00200218
0000001c [0xeafffffe]  b    0x1c
00000020 [0x00105448]  andeqs  r5,r0,r8,asr #8
00000024 [0xe59f1130]  ldr   r1,0x0000015c ; = #0xfffffc00
00000028 [0xe3e00000]  mvn   r0,#0
0000002c [0xe5810064]  str   r0,[r1,#0x64]
00000030 [0xe3e00001]  mvn   r0,#1
00000034 [0xe5810004]  str   r0,[r1,#4]
00000038 [0xe3e00000]  mvn   r0,#0
0000003c [0xe5810014]  str   r0,[r1,#0x14]
00000040 [0xe3a00000]  mov   r0,#0
00000044 [0xe5810030]  str   r0,[r1,#0x30]
00000048 [0xe3a00001]  mov   r0,#1
0000004c [0xe5810000]  str   r0,[r1,#0]
00000050 [0xe59f0108]  ldr   r0,0x00000160 ; = #0x0000ff01

而0x20000000的内容如下:
__ENTRY [0xea000009]  b    InitReset
undefvec [0xeafffffe]  b    undefvec
swivec [0xe59ff010]  ldr   pc,SWI_Addr ; = #SWI_Addr
pabtvec [0xe59ff010]  ldr   pc,PrefetchAddr ; = #PrefetchAddr
dabtvec [0xe59ff010]  ldr   pc,DataAbortAddr ; = #DataAbortAddr
rsvdvec [0xeafffffe]  b    rsvdvec
irqvec [0xe51fff20]  ldr   pc,0x1ffff100 ; = #0xffffffff
fiqvec [0xeafffffe]  b    fiqvec
SWI_Addr [0x20007860]  dcd   0x20007860 `x. 
PrefetchAddr [0x200000e8]  dcd   0x200000e8 ... 
DataAbortAddr [0x200000ec]  dcd   0x200000ec ... 
InitReset [0xe59f10dc]  ldr   r1,0x20000110 ; = #0x20008514
20000030 [0xe3c11003]  bic   r1,r1,#3
20000034 [0xe1a0d001]  mov   r13,r1
20000038 [0xe59f00d4]  ldr   r0,0x20000114 ; = #0x2000448c
2000003c [0xe1a0e00f]  mov   r14,pc
20000040 [0xe12fff10]  bx    r0
20000044 [0xe28f004c]  add   r0,pc,#0x4c ; #0x20000098
20000048 [0xe890007e]  ldmia  r0,{r1-r6}
2000004c [0xe321f0d3]  msr   cpsr_c,#0xd3
20000050 [0xe3c11003]  bic   r1,r1,#3


按理说0x00000000地址的内容应该和0x20000000的内容相匹配才是,请问是哪里不对呢,我应该从哪里着手?

相关帖子

沙发
阿南| | 2008-1-25 19:22 | 只看该作者

重新将0x20000000的代码写入0x0的flash中,在查看一下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

21

帖子

2

粉丝