最近开始用KEIL实验smartarm2200开发板,已经能在ram中运行程序,lcd上显示画面,但还有一些不理解,请高手解答,谢谢
cpu是2200,带64kram,无flash,使用keil自带的startup启动文件,程序写入ram后能运行,但我单步运行发现startup并没有运行。去掉startup文件,下载后无法运行。
1:请问:startup到底有没有用?,我在汇编中找不到,可是没有又不行,为什么?
2:按照教材的说法,reset后从00开始,但是2200没有flash,ram是从0x40000000开始的,也就是说00是没有的,那么没有00如何开始?
3:如果对于第二个问题的答案是地址映射,那么也就是说,一开始的几个跳转地址必须放在映射的首地址上,我用的是ram中调试,可是我在0x40000000没有发现那几个跳转地址,为什么?
4:如果我想从外部flash启动,那么该怎么办?将boot01改变,remap改变,可是
boot01改变可以理解,remap的值放在哪里了呢?如果在flash中,remap不可能起作用,放在ram中掉电了也不行?
请高手出来解答!!谢谢! |