搜索
bottom↓
回复: 6

ARM入门笔记——SDRAM测试

[复制链接]

出0入0汤圆

发表于 2011-11-13 01:17:20 | 显示全部楼层 |阅读模式
嵌入式硬件平台:TQ2440   
开发软件:gcc + gdb + vim  
软件环境:VM + ubuntu + SecureCRT + dnw  

nandflash启动,从setppingstone复制代码到sdram,然后跳转到sdram运行。

启动代码:
@*************************************************************************************
@文件:start.s
@描述:关看门狗,设置SDRAM相关寄存器,将程序复制到SDRAM,然后跳转到sdram执行
@时间:20111112
@*************************************************************************************

.equ   MemCfgBase,   0x48000000
.equ   SdramBase,   0x30000000       
  
.text
.global _start
_start:
   bl      DisWTD                          @关看门狗
   bl      SetupSdram                          @sdram相关13个寄存器设置
   bl      CpSetppingstone2Sdram          @复制代码到sdram
   ldr     pc, =OnSdram                  @跳转到sdram
OnSdram:
   ldr        sp,=0x34000000                  @设置栈 64m
   bl        main                          @跳转到main               
halt_loop:
   b        halt_loop
               
DisWTD:
   ldr        r0, =0x53000000
   mov        r1, #0x0
   str         r1, [r0]
   mov         pc, lr                             @返回
               
SetupSdram:
   ldr        r0, =MemCfgBase                   @存入起始地址
   adr     lr1,MemCfgVal                   @存入寄存器val表地址
   add        r3, r0, #52                @13*4 = 52
loopSetup:
   ldr        r2, [r1],        #4                @读val,并+4               
   str        r2, [r0],         #4                @写入寄存器,r0+4
   cmp        r0, r3                           @是否写完
   bne        loopSetup                                       
   mov        pc, lr                        @写完则返回
               
@复制代码到sdram
CpSetppingstone2Sdram:
   ldr        r0, =SdramBase                @存入Sdram起始地址
   mov        r1, #0x0                                 @
   mov        r2, #4*1024                @拷贝4k到sdram
loopCopy:
   ldr          r3, [r1],        #4
   str        r3, [r0],        #4
   cmp     r1, r2
   bne        loopCopy
   mov     pc, lr                        @返回

@建立13个寄存器val表
MemCfgVal:
.align 4                                @按照4的倍数对齐
   .long        0x22011112                        @BWSCON
   .long        0x00000700                        @BANKCON0        nor
   .long        0x00000700                        @BANKCON1
   .long        0x00000700                        @BANKCON2
   .long        0x00000700                        @BANKCON3
   .long        0x00000700                        @BANKCON4        dm9000
   .long        0x00000700                        @BANKCON5
   .long        0x00018005                        @BANKCON6        sdram 9bit 3clk
   .long        0x00018005                        @BANKCON7
   .long   0x008C07A3                        @REFRESH   (12mHz) enable CBR 2clk 7clk
   .long   0x000000B1                        @BANKSIZE         64M
   .long        0x00000030                        @MRSRB6        3clk
   .long        0x00000030                        @MRSRB7


修改原因:修改版式

阿莫论坛20周年了!感谢大家的支持与爱护!!

你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。

出0入0汤圆

 楼主| 发表于 2011-11-13 01:28:09 | 显示全部楼层
makefile:

CFLAG        := -Wall -O2 -g
obj        := start.o memary.o

memary.bin   :        $(obj)
        arm-linux-ld -Ttext 0x30000000 $^ -o memary_elf
        arm-linux-objcopy -O binary -S memary_elf memary.bin
        arm-linux-objdump -D -m arm memary_elf > memary.dis
%.o        :        %.c
        arm-linux-gcc $(CFLAG) -c $< -o $@
%.o        :        %.s
        arm-linux-gcc $(CFLAG) -c $< -o $@
.PHONY        :clean
clean:
        rm -rf *.o memary.bin memary_elf *.bin


memary.c :
使用流水灯的c文件就好
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=5191993&bbs_page_no=1&bbs_id=1032

工程文件
点击此处下载 ourdev_694634E5UKDA.zip(文件大小:13K) (原文件名:memary.zip)

出0入0汤圆

 楼主| 发表于 2011-11-13 01:36:03 | 显示全部楼层

(原文件名:memary.dis.JPG)

出0入0汤圆

发表于 2011-11-13 08:34:43 | 显示全部楼层
顶,有时间看看

出0入0汤圆

发表于 2011-11-13 15:35:16 | 显示全部楼层
很好。

出0入0汤圆

 楼主| 发表于 2011-11-13 16:33:13 | 显示全部楼层
终于有人顶贴了,前边还有三篇(点灯,按键,linux下建设arm开发环境),方便和我一样入门的同学。

出0入0汤圆

发表于 2013-5-8 10:03:44 | 显示全部楼层
正要学,就来了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-10-3 05:26

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表