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

[求助]hc08jl8的flash读写程序

[求助]hc08jl8的flash读写程序

各位老大!!!!
谁能给我hc08jl8的flash读写程序,C语言的..急用.

谢谢谢谢!!

 

void write_flash(unsigned int adr){
 unsigned char i; 
    FLCR=0b00000001;      //1->GM,编程状态       
    i=FLBPR;               //读FLBPR
    *((volatile unsigned char *)(adr))=0x11;//0x88->f000,选中flash行
    delay(200);    //10us
    FLCR=0b00001001;      //1->HVEN
    delay(200);    //10us 
    *((volatile unsigned char *)adr)=0x11;//将数据写入相应的flash地址
     delay(500);    //10us  
    FLCR=0b00001000;      //0->GM 
     delay(200);    //10us
    FLCR=0b00000000;      //0->HVEN
   
}

上面的程序怎么不能进行写操作>?哪里有问题?? 

[此贴子已经被作者于2007-3-7 17:10:07编辑过]

JL8内部有ROM_Resident routine程序,直接调用就可以对flash编程。
请参考datasheet 9.6章节 还可以下载AN2874应用笔记查看
谢谢!!用你的方法试了一下:调试出现:
Error: At location FCBE -
Error: Attempt to execute from unimplemented (--) ROM.
STARTED
RUNNING
An Illegal address error caused a RESET

硬件调试也是一样,执行到$FCBE就RESET....
对FLASH进行操作是应将COP及中断关闭。
海纳百川  有容乃大
对FLASH操作前,我已经 ASM SEI 另外CONFIG1=0X01(COPD=1);

调试的问题是 $FCBE上的数值是(--),上面没有内容而RESET的.

刚刚接触这个东西,比较菜!!以前都是用PIC和51的.
你可以下载AN2874应用比较的例子代码看。
在调用ROM内程序的时候要注意几点:
1。频率值要给正确;
2。对ROM调用在仿真的时候有时候会不对,需要在片上直接运行,不要带仿真器;
3。保证有足够的堆栈空间
谢谢两位大哥的帮忙,问题解决了...HOHO!!高兴啊...
返回列表