MT29F1G01ABAGDWB的nandId
时间: 2023-09-07 13:14:56 浏览: 164
MT29F1G01ABAGDWB 是一款 Micron 出品的 NAND Flash 存储器,其 ID 可以通过发送读取 ID 命令来获取。读取 ID 命令的具体指令码和顺序可能因芯片厂家而异,一般情况下可以参考数据手册中的说明。
以 MT29F1G01ABAGDWB 为例,其读取 ID 命令的指令码为 0x90,需要发送两个地址字节。因此,可以通过以下代码来获取其 ID:
```c
#define NAND_CMD_READID 0x90
#define NAND_READID_ADDR_LEN 2
#define NAND_MAX_ID_LEN 5
unsigned char id[NAND_MAX_ID_LEN];
unsigned char addr[NAND_READID_ADDR_LEN] = {0x00, 0x00};
/* 发送读取 ID 命令 */
nand_chip->cmdfunc(mtd, NAND_CMD_READID, 0x00, -1);
/* 发送两个地址字节 */
nand_chip->write_addr(mtd, 0x00);
nand_chip->write_addr(mtd, 0x00);
/* 读取 ID */
for (int i = 0; i < NAND_MAX_ID_LEN; i++) {
id[i] = nand_chip->read_byte(mtd);
}
/* 输出 ID */
for (int i = 0; i < NAND_MAX_ID_LEN; i++) {
printf("id[%d] = 0x%x\n", i, id[i]);
}
```
上述代码中,nand_chip 表示 NAND Flash 存储器的驱动结构体,mtd 表示 MTD 设备结构体。通过 nand_chip->cmdfunc、nand_chip->write_addr 和 nand_chip->read_byte 函数来操作 NAND Flash 存储器,获取其 ID。对于 MT29F1G01ABAGDWB,其 ID 的前四个字节为 0x2C 0xD3 0x98 0x95,可以通过上述代码进行获取。
阅读全文