微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > FS2410 开发板上的内存搬移实验

FS2410 开发板上的内存搬移实验

时间:11-10 来源:互联网 点击:

2)或011(CL=3)

/* 文件 sdram.c */

/* 作用 循环点亮开发板上的 D9、D10、D11、D12 四个发光二极管 */

#define GPFCON (*(volatile unsigned long *)0x56000050) /* GPFCON 端口地址为0x56000050 */

#define GPFDAT (*(volatile unsigned long *)0x56000054) /* GPFDAT 端口地址为0x56000054 */

int main()

{

int i,j;

while(1) {

for (i = 0; i <4; ++i) {

GPFCON = 0x1<(8+i*2); /* 如何设置此二寄存器使二极管发光,前一*/

GPFDAT = 0x0;/* 篇随笔(FS2401 发光二极管循环点亮) */

/* 里有介绍*/

// for delay

for(j=0;j<50000;++j) ;

}

}

}

# Makefile

# 编译上述三个代码文件, 并链接生成的目标文件,

# 再将目标文件(ELF格式)转换成二进制格式文件

sdram:head.s memory.s sdram.c

arm-linux-gcc -c -o head.o head.s

arm-linux-gcc -c -o memory.o memory.s

arm-linux-gcc -c -o sdram.o sdram.c

# -Ttext 0x30000000 会使目标文件里 ldr pc, =main 指令里的 pc 加上

# 0x30000000 这个基地址,而 #0x30000000 正是我们要将代码搬到 SDRAM 的

# 起始地址, 更多细节请参考 arm-linux-ld -Ttext 的用法

arm-linux-ld -Ttext 0x30000000 head.o memory.o sdram.o -o sdram_tmp.o

arm-linux-objcopy -O binary -S sdram_tmp.o sdram

clean:

rm -f *.o

rm -f sdram

三、编译、烧写、测试

Make 一下就会生成我们要的文件 sdram, 将其通过 JTAG 烧入 Nand Flash 即可,Reset

一下开发板, 欣赏您的实验成果吧

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top