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

flash erase

flash erase

正在用mc9s08qe32芯片调试flash 的操作程序,用的是PE仿真器,当我在线调试时,不论是用blank check命令,page erase命令,mass erase命令,它都把整个芯片都擦除了,一 值想不通为什么.请各位大虾指教
static void FnCmdInRam_(byte Command_)
{
  unsigned char delay_time=0;

  FCMD = Command_;                      /* Initiate command */
//  FSTAT = 0x80;                        /* Launch the command */
    FSTAT |= 0x80;
//  FSTAT_FCBEF=1;
  for(delay_time=0;delay_time<100;delay_time++)
  {
     asm nop;                             /* Wait at least four bus cycles before checking FSTAT */
     asm nop;
     asm nop;
     asm nop;
//     asm nop;                             /* Wait at least four bus cycles before checking FSTAT */
//     asm nop;
//     asm nop;
//     asm nop;
  }
         
  if (!(FSTAT & BM_FLASH_ERR_MASK)) {  /* If no protection violation or access error detected */
    while (!FSTAT_FCCF) {}             /* Wait for command completion */
  }
  return;
}

这是我存到ram的erase程序
大虾们帮帮忙,我都没辙了
你是怎么知道芯片被全部擦除了呢?
海纳百川  有容乃大
不好意思,问题已经解决,谢谢版主
返回列表