硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2796|回复: 1
收起左侧

[有问必答] nand flash 擦除驱动疑惑

[复制链接]

4

主题

9

回帖

21

积分

新手上路

积分
21
发表于 2021-8-3 23:31:41 | 显示全部楼层 |阅读模式


static uint32_t FMC_NAND_EraseBlock(uint32_t _ulBlockNo)
{


/* 发送擦除命令 */
    NAND_CMD_AREA = NAND_CMD_ERASE0;

    _ulBlockNo <<= 6;   /* 块号转换为页编号 */

    #if NAND_ADDR_5 == 0    /* 128MB的 */
        NAND_ADDR_AREA = _ulBlockNo;
        NAND_ADDR_AREA = _ulBlockNo >> 8;
    #else       /* 512MB的 */
        NAND_ADDR_AREA = _ulBlockNo;
        NAND_ADDR_AREA = _ulBlockNo >> 8;
        NAND_ADDR_AREA = _ulBlockNo >> 16;
    #endif

.
.
.
.


}


请问下这里的 依据是怎么来的呢 _ulBlockNo <<= 6;   /* 块号转换为页编号 */

NAND_ADDR_5 这个是根据nand type 来区分。那这个区分的依据是什么呢。要是换一种例如w29n02.那应该开启那个呢?是否数据手册上有呢?



回复

使用道具 举报

4

主题

9

回帖

21

积分

新手上路

积分
21
 楼主| 发表于 2021-8-3 23:49:04 | 显示全部楼层
已经看明白了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-14 17:29 , Processed in 0.037118 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表