打印

nand flash的块擦除代码

[复制链接]
2366|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xddzccn|  楼主 | 2007-12-17 09:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
 大家来看看这段代码   这里面的 addr是什么意思啊 
一直都搞不懂 addr是整个 flash的地址  ,还是行地址 
也就是块地址 谢谢!
static U32 NFEraseBlock(U32 addr)
{
    U8 stat;

    addr &= ~0x1f;
        
    NFChipEn();    
    NFWrCmd(ERASECMD0);        
    NFWrAddr(addr);
    NFWrAddr(addr>>8);
    if(NandAddr)
        NFWrAddr(addr>>16);
    NFWrCmd(ERASECMD1);        
    stat = NFWaitBusy();
    NFChipDs();
    
#ifdef    ER_BAD_BLK_TEST
    if(!((addr+0xe0)&0xff)) stat = 1;    //just for test bad block
#endif
    
    printf("Erase block 0x%08x %s ", addr, stat?"fail":"ok");
    
    return stat;
}

相关帖子

沙发
gouki_s| | 2007-12-17 13:40 | 只看该作者

不是很清楚吗?

addr &= ~0x1f
每block 128k

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

41

主题

550

帖子

0

粉丝