记得以前在使用ADS的时候,程序仿真是可以选择FLASH和ARM ,最近买了个EASYARM8962的开发板,刚拿来实验了一下,程序直接就下载到FLASH中了,心里感觉不爽,后面通过联系了下周立功公司的技术支持,这里还要感谢何工的支持啊.下面就把别人讲的和自己实验得到的简单描述一下
我使用的是EasyARM8962,它的RAM区域是0x20000000到0x200010000.大小为64K.
下面以GPIO的实验为例,我们先配置一个脚本文件(LED.ini),我把该文件放在该工程的obj 目录下,其脚本文件如下:
FUNC void Setup (void)
{
SP = _RDWORD(0x20000000); // 应用程序入口地址。
PC = _RDWORD(0x20000004); // PC指针为应用程序入口地址基础上加4。
_WDWORD(0xE000ED08, 0x20000000); // 参数1为中断向量表的地址,参数2为应用程序入口地址。
}
LOAD LOAD .\OBJ\LED.axf INCREMENTAL // 要载入对应工程编译产生的.axf文件。 很重要,一定要找对路径。
Setup(); // 启动函数。
g,main // 从主函数开始运行。
接下来就是KEIL 工程选项中的一些设置了
图中,IROM1:0x20000000为RAM的起始地址,空间大小为0xE000;IRAM1:起始地址为0x2000E000,空间大小为0x2000,这两个地址大小可以根据你程序的大小更改,但一定不能重合。
图中,在“Initialization File”选项框中点省略好按钮,在弹出的对话框中选择LED.ini脚本文件,注意要选择正确路径。其他的相信就不用我多说了,这样就可以使程序在RAM中运行了
阅读(6165) | 评论(0) | 转发(0) |