韦东山一期视频学习笔记-Nandflash

硬件原理分析

《韦东山一期视频学习笔记-Nandflash》

引脚功能

CLE高电平ALE低电平时传输命令
CLE低电平ALE高电平时传输地址
ALECLE低电平时传输数据
CLE片选信号低电平有效,因为LDATA信号是多芯片共用的
RnB状态引脚,高电平表示空闲,低电平表示正忙
WE引脚上升沿锁存写入数据
RE下降沿后延迟tREA读出数据

《韦东山一期视频学习笔记-Nandflash》

可以看到WE上升沿通知nand写入数据,RE下降沿后延迟tREA输出数据

直接操作和nand控制器操作对比

《韦东山一期视频学习笔记-Nandflash》

命令列表

《韦东山一期视频学习笔记-Nandflash》

使用uboot体验nand操作

uboot安装参考上一篇文章韦东山一期视频学习笔记-Norflash
####读ID

《韦东山一期视频学习笔记-Nandflash》

1.选中芯片
NFCONT(0X4E000004)bit1置1选中芯片,md.l 4E000004 1读出寄存器值(因为是32bit寄存器)

《韦东山一期视频学习笔记-Nandflash》

可以看到芯片没有选中,mw.l 4E000004 1使能nand flash

《韦东山一期视频学习笔记-Nandflash》

2.发出命令0x90
NFCMMD(0X4E000008)写入0x90,mw.b 4E000008 90b写入1字节)

3.发出地址0x00
NFADDR(0X4E00000C)写入0x00,mw.b 4E00000C 00b写入1字节)

4.读数据
读取NFDATA(0X4E000010)uboot命令md.b 4E000010 1

5.读Device Code
读取NFDATA(0X4E000010)uboot命令md.b 4E000010 1

可以看到读出的数据和芯片手册一致
《韦东山一期视频学习笔记-Nandflash》

6.退出读ID状态Reset
mw.b 4E000008 ff

读0地址内容

使用uboot命令nand dump 0可以查看nand内数据

《韦东山一期视频学习笔记-Nandflash》

读操作时序

《韦东山一期视频学习笔记-Nandflash》

发出以下命令进行读0地址测试

mw.l 4E000004 1 //使能nand flash
mw.b 4E000008 00 //发出命令
mw.b 4E00000C 00 //发出地址
mw.b 4E00000C 00 //发出地址
mw.b 4E00000C 00 //发出地址
mw.b 4E00000C 00 //发出地址
md.b 4E000010 1 //读数据

可以看出运行结果和uboot命令直接读取nand flash结果一致
《韦东山一期视频学习笔记-Nandflash》

    原文作者:Kyseng
    原文地址: https://segmentfault.com/a/1190000020379729
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞