首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

flash的读写

论坛里已经有很多例子贴出来了,可以搜索一下。
另外,FLASH的读与RAM的读没有什么区别。
海纳百川  有容乃大
直接赋值就可以了。
海纳百川  有容乃大
什么动不了?不能赋值?
海纳百川  有容乃大
我这有个基于CodeWarrior的例子,希望对你有所帮助:

typedef void (*CallaFun)(void);

unsigned char FunInRam[10];

void TestFunction(void){
asm NOP;
asm NOP;
}

void CopyToRam(void){
char i=8;
char *Ps, *Pd;

Ps = (char *)&TestFunction;
Pd = (char *)&FunInRam;

do{
*Pd++ = *Ps++;
} while(--i);
}

void main(void) {

CopyToRam(); /*Copy code to RAM*/

((CallaFun)&FunInRam)(); /* Call code in RAM */

for(;;) {
} /* loop forever */
}
海纳百川  有容乃大
这样就可以了:

Ps = (char *)0x4000;
Pd = (char *)0x2000;
海纳百川  有容乃大
返回列表