二. IAR下将程序拷贝到RAM中运行的方法 1. 利用关键字__ramfunc
IAR中提供了关键字来声明将某个函数放在RAM中运行。该函数用关键字__ramfunc声明后,编译器将这段程序和其他的需要初始化的变量一起放在一个具有读/写属性的区域(SECTION),系统启动时自动和其他的需要初始化的变量一起被从ROM拷贝到RAM。使用__ramfunc关键字的缺点就是,不能指定具体的RAM位置。
在定义为__ramfunc的函数中调用非__ramfunc函数,会出现下面的警告:“Warning[Ta022]: Possible rom access (array) from within a __ramfunc function ”
而且在ramfunc的函数中调用不是ramfunc的函数会降低执行速度。