2799|0

71

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

初学者提问!关于arm中断向量表问题。 [复制链接]

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的内容相匹配才是,请问是哪里不对呢,我应该从哪里着手?
此帖出自ARM技术论坛
点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表