|
RomBaseAddr EQU 0
RomEndAddr EQU &20
RamBaseAddr EQU &100
RamEndAddr EQU &200
AREA text, CODE, READONLY
SFR_BASE EQU 0x3ff ;0x3ff0000
SRAM_BASE EQU 0x3f8 ;0x3f80000
;EXPORT InitMemory
InitMemory
ldr r0, =SYSCFG
ldr r1, =SDRAM_ITF :OR: SFR_BASE<<16 :OR: SRAM_BASE<<6 :OR: CACHE_ALL :OR: CACHE_EN
;这是怎么运行的.
str r1, [r0]
ldr r0, =CLKCON
ldr r1, =0
str r1, [r0]
ldr r0, =EXTACON0
ldr r1, =0x0fff0fff
str r1, [r0]
ldr r0, =EXTACON1
ldr r1, =0x0fff0fff
str r1, [r0]
ldr r0, =EXTDBWTH
ldr r1, =0xffff556
str r1, [r0]
adr r0, MemCfgPara
ldmia r0, {r1-r11}
ldr r0, =ROMCON0
stmia r0, {r1-r11}
mov pc, r14
MemCfgPara
DCD RomBaseAddr<<10 :OR RomEndAddr<<20 :OR: &60 ;&10840060
;DCD怎么分配 是怎么理解的?
;这个 &10840060 地址怎么计算出来的,我怎么都算不到
DCD &10842060
DCD &10842060
DCD &10842060
DCD &10842060
DCD &10842060
DCD RamBaseAddr<<10 :OR: RamEndAddr<<20 :OR: &398 ;&10000398
DCD &10040398
DCD &10040398
DCD &10040398
DCD &ce2983fd
EXPORT RemapMemory
RemapMemory
adr r0, RemapMemPara
1.ldr r1, =SDRAM_ITF :OR: SFR_BASE<<16 :OR: SRAM_BASE<<6 :OR: CACHE_ALL :OR: CACHE_EN
;这是怎么运行的理解的?
2. DCD RomBaseAddr<<10 :OR RomEndAddr<<20 :OR: &60 ;&10840060
;DCD怎么分配 是怎么理解的?
3这个 &10840060 地址怎么计算出来的,我怎么都算不到是这个结果
望版主给予帮助.那个ADS的HELP文档也找不到 |
|