3861|3

73

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

问个三星arm的菜鸟问题,恳请先辈回答 [复制链接]

三星4510b的代码 地址中为啥地址有个基址?3ff0000

#define SFR_BASE 0x3FF8000
#define INTPND      (*((volatile unsigned long *) (SFR_BASE + 0x4004)))  
手册上如 INTPND写的是 0x4004

另外在初始化内存时下列代码是啥意思。先辈能帮我注释并解释一下不?
;*******************************************************
; SDRAM System Initialize Data       
;*******************************************************
        LDR        R0, =0x3FF0000 + 0x3010
        LDR        R1, =0x05503003
        LDR        R2, =0x04000060   
        LDR        R3, =0x60
        LDR        R4, =0x60
        LDR        R5, =0x60
        LDR        R6, =0x60
        LDR        R7, =0x60
        LDR        R8, =0x14010380
        LDR        R9, =0x0
        LDR        R10,=0x0
        LDR        R11,=0x0
        LDR        R12,=0xce3383f0
        STMIA        R0, {R1-R12}
       
        LDR        R0,=0x3FF300C
        LDR        R2,=0x3FF3008
        LDR        R1,=0x0fffffff
        STR        R1,[R0]
        STR        R1,[R2]
                 LDR R3,=0x3ff5000
         LDR R4,=0xff
         STR R4,[R3]
此帖出自ARM技术论坛

最新回复

SFR_BASE 0x3FF8000 ,是特殊功能寄存器起始物理地址,所有的SFR物理地址都是在此基础上加偏移地址,比如INTPND的物理地址就是SFR_BASE + 0x4004   详情 回复 发表于 2008-8-22 10:41
点赞 关注
 

回复
举报

91

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
你这个INTPND是不是寄存器? 他的地址是不是0x3FF8000+0x004?  你查下手册
下面那段代码可能是入栈,或者保存东西,最后面的应该是对某寄存器读写吧,没弄过4510,不清楚,你查下手册这些地址是什么东西就清楚了
此帖出自ARM技术论坛
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
ARM7的空间不是一个连续的地址空间。arm7系统的系统一般把内存空间分成几个段。每个段有不同的外接信号可以控制同一类物理设备。每个段也可以看成是不同的设备接口。有些ARM系统还可以改变段的起始地址。这叫从映射(REMAP)。你看到的基址3ff0000应该是一个外设备(广义的外设,RAM,ROM,…)的起始地址。
LDR R0, =0x3FF0000 + 0x3010
LDR R1, =0x05503003
LDR R2, =0x04000060   
LDR R3, =0x60
LDR R4, =0x60
LDR R5, =0x60
LDR R6, =0x60
LDR R7, =0x60
LDR R8, =0x14010380
LDR R9, =0x0
LDR R10,=0x0
LDR R11,=0x0
LDR R12,=0xce3383f0
STMIA R0, {R1-R12}
是把R1-R12地址的数据输出到R0指定的地址去。也就是0x3FF0000 + 0x3010 =0x3FF3010去。具体这个地址控制的什么自己看手册了。
此帖出自ARM技术论坛
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

4
 
SFR_BASE 0x3FF8000 ,是特殊功能寄存器起始物理地址,所有的SFR物理地址都是在此基础上加偏移地址,比如INTPND的物理地址就是SFR_BASE + 0x4004
此帖出自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
快速回复 返回顶部 返回列表