路过,请问斑竹几个问题,谢谢!
下面是HEAD.S里面的一段代码
@ copy vivi to RAM
ldr r0, =VIVI_RAM_BASE //(DRAM_BASE + DRAM_SIZE - VIVI_RAM_SIZE)
mov r1, #0x0 
mov r2, #0x20000 
bl nand_read_ll 
tst r0, #0x0 
beq ok_nand_read 
当steppingstone把head.s文件的代码拷贝后就在steppingstone里面运行,运行到
上面的代码时就是调用stage2的c文件的一个函数来拷贝整个vivi到ram,
// nand_read_ll(unsigned char *buf, unsigned long start_addr, int size)
// ro = buf , r1 =start , size = r2=128k 
这里就有个矛盾了,因为以main函数为入口点的stage2 的c文件是以0x33f00000基址编译的,因此无论 nand_read_ll(unsigned char *buf, unsigned long start_addr, int size)是否已经在steepingstone里面都是无法正确运行的,那么怎么能调用 nand_read_ll(unsigned char *buf, unsigned long start_addr, int size)这个函数来拷贝vivi到ram呢???
还有以下问题:
@ Start of executable code 
ENTRY(_start) //入口点
ENTRY(ResetEntryPoint)
arm的文件不是一个文件只能最多有一个入口点?????
请指教。
[align=right][color=#000066][此贴子已经被作者于2006-12-31 13:43:01编辑过][/color][/align]

 
					
				
 
			
			
			
						
			 我要赚赏金
 我要赚赏金 STM32
STM32 MCU
MCU 通讯及无线技术
通讯及无线技术 物联网技术
物联网技术 电子DIY
电子DIY 板卡试用
板卡试用 基础知识
基础知识 软件与操作系统
软件与操作系统 我爱生活
我爱生活 小e食堂
小e食堂

