当前位置:首页 > 单片机 > 单片机
[导读]接口设计:对SDRAM初始化对内存控制器初始化memsetup:mov r1,#MEM_CTL_BASEadrl r2,mem_cfg_valadd r3,r1,#52ldr r4,[r2],#4str r4,[r1],#4cmp r1,r3bne 1bmov pc,lr复制代码到SDRAM,将SRAM中的4K数据全部复制到SDRA

接口设计:





对SDRAM初始化

对内存控制器初始化

memsetup:
mov r1,#MEM_CTL_BASE
adrl r2,mem_cfg_val
add r3,r1,#52
ldr r4,[r2],#4

str r4,[r1],#4

cmp r1,r3

bne 1b

mov pc,lr

复制代码到SDRAM,将SRAM中的4K数据全部复制到SDRAM,
SRAM起始地址为0x00000000,SDRAM的起始地址为0x30000000
copy_steppingstone_to_sdram:
mov r1,#0

ldr r2,=SDRAM_BASE

mov r3 ,#4*1024

ldr r4,[r1],#4

str r4,[r2],#4

cmp r1,r3

bne 1b

mov pc,lr
align 4

存储控制器13个寄存器的设置值
mem_cfg_val:long 0x22011110

BWSCON:long 0x00000000

BANKCON0 long 0x00000700

BANKCON1 long 0x00000700

BANKCON2 long 0x00000700

BANKCON3 long 0x00000700

BANKCON4 long 0x00000700

BANKCON5 long 0x00000700

BANKCON6 long 0x00018005

BANKCON7 long 0x00018005

REFRESHlong 0x008e07a3

BANKSIZE long 0x000000b2

MRSRB6 long 0x00000030、

MRSRB7 long 0x00000030

NAND FLASH配置寄存器初始化

MemCfgInit();//设置NAND FLASH的配置寄存器

void MemCfgInit(void)
{
//rCLKCON |= 0xffff0;
//enable nand flash control, initilize ecc, chip disable,
rNFCONF = (1<<15)|(1<<12)|(1<<11)|(7<<8)|(7<<4)|(7);
}


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭