1.Nandflash操作原理

下图是原理图中NandFlash和S3C2440的连接图,

问1. 原理图上NAND FLASH和S3C2440之间只有数据线,

     怎么传输地址?

答1.在DATA0~DATA7上既传输数据,又传输地址

     当ALE为高电平时传输的是地址,


问2. 从NAND FLASH芯片手册可知,要操作NAND FLASH需要先发出命令

     怎么传入命令?

答2.在DATA0~DATA7上既传输数据,又传输地址,也传输命令

     当ALE为高电平时传输的是地址,

     当CLE为高电平时传输的是命令

     当ALE和CLE都为低电平时传输的是数据


问3. 数据线既接到NAND FLASH,也接到NOR FLASH,还接到SDRAM、DM9000等等

     那么怎么避免干扰?

答3. 这些设备,要访问之必须"选中",

     没有选中的芯片不会工作,相当于没接一样


问4. 假设烧写NAND FLASH,把命令、地址、数据发给它之后,

     NAND FLASH肯定不可能瞬间完成烧写的,

     怎么判断烧写完成?

答4. 通过状态引脚RnB来判断:它为高电平表示就绪,它为低电平表示正忙


问5. 怎么操作NAND FLASH呢?

答5. 根据NAND FLASH的芯片手册,一般的过程是:

     发出命令

     发出地址

     发出数据/读数据


          NAND FLASH                      S3C2440

发命令    选中芯片                   

          CLE设为高电平                   NFCMMD=命令值     

          在DATA0~DATA7上输出命令值

          发出一个写脉冲

            

发地址    选中芯片                        NFADDR=地址值

          ALE设为高电平

          在DATA0~DATA7上输出地址值

          发出一个写脉冲


发数据    选中芯片                        NFDATA=数据值

          ALE,CLE设为低电平

          在DATA0~DATA7上输出数据值

          发出一个写脉冲


读数据    选中芯片                        val=NFDATA

          发出读脉冲

          读DATA0~DATA7的数据


我们的2440内部有一个nandflash控制器,如果我们想向nandflash发送命令,那么我们的2440只需要往NFCMMD寄存器写入命令值就好了。


2.用UBOOT来体验NAND FLASH的操作

1. 读ID

                               S3C2440                 u-boot 

选中                           NFCONT的bit1设为0   md.l 0x4E000004 1; mw.l 0x4E000004  1

发出命令0x90                   NFCMMD=0x90         mw.b 0x4E000008 0x90 

发出地址0x00                   NFADDR=0x00         mw.b 0x4E00000C 0x00

读数据得到0xEC                 val=NFDATA          md.b 0x4E000010 1

读数据得到device code          val=NFDATA          md.b 0x4E000010 1

          0xda

退出读ID的状态                 NFCMMD=0xff         mw.b 0x4E000008 0xff

     

2. 读内容: 读0地址的数据

使用UBOOT命令:

nand dump 0

Page 00000000 dump:

        17 00 00 ea 14 f0 9f e5  14 f0 9f e5 14 f0 9f e5


                               S3C2440                 u-boot 

选中                           NFCONT的bit1设为0   md.l 0x4E000004 1; mw.l 0x4E000004  1

发出命令0x00                   NFCMMD=0x00         mw.b 0x4E000008 0x00 

发出地址0x00                   NFADDR=0x00         mw.b 0x4E00000C 0x00

发出地址0x00                   NFADDR=0x00         mw.b 0x4E00000C 0x00

发出地址0x00                   NFADDR=0x00         mw.b 0x4E00000C 0x00

发出地址0x00                   NFADDR=0x00         mw.b 0x4E00000C 0x00

发出地址0x00                   NFADDR=0x00         mw.b 0x4E00000C 0x00

发出命令0x30                   NFCMMD=0x30         mw.b 0x4E000008 0x30 

读数据得到0x17                 val=NFDATA          md.b 0x4E000010 1

读数据得到0x00                 val=NFDATA          md.b 0x4E000010 1

读数据得到0x00                 val=NFDATA          md.b 0x4E000010 1

读数据得到0xea                 val=NFDATA          md.b 0x4E000010 1

退出读状态                     NFCMMD=0xff         mw.b 0x4E000008 0xff


关于读数据有一个地方需要注意,就是发出了五次地址,由时序图也可以看出要发五次地址。

为什么要发送5此地址呢,这是因为我们的nandfalsh是256M的,所以需要28位的地址,于是要发送五个字节的地址。

关键字:NandFlash  操作原理 引用地址:S3C2440裸机------NandFlash操作原理

上一篇:S3C2440裸机------NandFlash编程_时序及初始化
下一篇:S3C2440裸机------Nor Flash编程_擦写读

推荐阅读

近日,小编看到某汽车媒体对一百余款车进行了关于升降车窗的测试,最后发现仅有奇瑞瑞虎8这一款车型没有车窗防夹,不符合国标GB 7258-2017,其余车型均配有防夹车窗。小编不禁感慨汽车的发展速度之快,记得小时候很多汽车的车窗还是手摇的,如今防夹都写进国标了。那么升降车窗是如何一路悄无声息地发展的呢?今天小编就跟大家聊一聊升降车窗这点事。100...
意法半导体(ST)与ST授权合作伙伴MikroElektronika合作,开发出四款Click board™开发板,将STSPIN电机驱动器的优势扩展到STM32开发板以外的开发平台,让使用MikroElektronika原型板以及其它板载mikroBUS™插座的系统的用户也能享受STSPIN电机驱动器的各种好处。 意法半导体的STSPIN IC在极小的封装内集成先进的控制功能、受保护的输出级和无耗散功耗的过...
经过一段时间的预热,坚果手机官微终于在10月9日上午官宣了新机发布的消息。据官方表示,坚果手机新品发布会将于10月20日晚19:30在五棵松·M空间举行。与以往相同的是,此次线下发布会的门票不对外售卖,官方将为粉丝提供赠票,如果你曾经购买过坚果手机,或者曾经参与过坚果手机的线下发布会,都可以尝试参与到此次线下发布会中。坚果手机新品发布会将于...
今年早些时候,三星承诺将停止在默认应用程序中显示广告,包括三星天气、三星支付和三星主题。  昨日,三星官方人员在社区论坛宣布,三星健康 App 已于今日移除广告。官方表示,从 10 月 1 日起,三星健康 App 顶部的广告横幅将不再提供。  此外,另一位社区成员的帖子透露,三星也从三星支付(Samsung Pay)中删除了广告。  三星...

史海拾趣

问答坊 | AI 解惑

惊喜CES2010~~用WIFI给手机充电

CES 2010果然是惊喜不断,不光是让人眼馋的新手机新电脑,一个叫Airnergy Charger的小东西让84更加的兴奋不已。这个设备可以从WiFi信号中摄取能量来给手机等数码设备充电,比起便携的太阳能充电器,Airnergy Charger可以不分天气好坏和白天黑夜有 ...…

查看全部问答∨

如何移除资源文件中某个资源

如题,如果不能移除,有什么方法替换也是可以的。不知怎么做?…

查看全部问答∨

问个关于I/O接口编址方式的问题

我知道I/O接口编址方式分为存储器映射方式和独立编址方式,那么这个仅仅是由硬件决定的吗? 比如8086系列是采用独立的编址方式,那么现代我们正在使用的计算机是采用什么方式的呢?,比如Intel/AMD系列的 还有这和操作系统有关系吗,比如说如果采用的是 ...…

查看全部问答∨

请教看原理图要哪些基础知识?

要看懂原理图需要哪些学科知识作为基础? 数电模电没学,能不能学嵌入式呢? 主要偏软件方面,C和汇编基础比较好,电路理论的基础比较差…

查看全部问答∨

【我给xilinx资源中心做贡献】Linux在Xilinx FPGA上的移植

Linux在Xilinx FPGA上的移植这个是论文,感觉真不错!~摘 要:Xilinx公司开发的Virtex-Ⅱ pro等FPGA结合可编程片上系统(SOPC)技术嵌入了PowerPC处理器硬核。本文结合Linux操作系统的优点及PowerPC嵌入式处理器硬 核,在Virtex-Ⅱ Pro开发平台 ...…

查看全部问答∨

TINA_TI使用方法

本帖最后由 paulhyde 于 2014-9-15 03:09 编辑  …

查看全部问答∨

FFT

本帖最后由 paulhyde 于 2014-9-15 03:12 编辑 fft    …

查看全部问答∨

很火的蓝牙拨号器方案

不久前在IC-china的展会上看到上海高通的蓝牙拨号器升级方案,后来在最近几天的中国电子展上也看到了中电的蓝牙拨号器方案,貌似现在这个东西特别火哦~~据说都装了上海高通的字库芯片,现在可以同步电话目录和短信了,还配合小键盘输入法(好像也 ...…

查看全部问答∨

求救鼠标失灵与QT4下触摸不准问题!

求救鼠标失灵与QT4下触摸不准问题! 昨天在板上运行QT4(自己编译的4.8.6)示例程序时触摸点不准,然后改用鼠标,中午出去吃饭,板子没断电,回来时鼠标就动不了了,也不知道是什么原因。 今天早上重新刷了系统,鼠标还是动不了(鼠标在电脑上能 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved