1.NandFlash初始化 

Nandflash初始化主要包括时序图的设置和Nandflash控制器的使能,我们首先看一下S3C2440芯片手册里面的时序图。

上图中的HCLK我们已经设置成了100M。那么时钟周期是1/100M=10ns 

然后下图是NandFlash芯片手册里面的时序图。

我们将S2C2440里面NandFlash控制器的时序图和NandFlash时序图结合起来看。

左图中的TACLS表示当我们的CLE/ALE发出之后,再过多长时间再发出WE信号,就是右图中的tcls-twp,而我们从右下图可以看到,tcls的最小值是12,twp的最小值也是12,就表明tcls-twp可以为零,也就表明CLE和WE两个信号可以同时发出,而tals的最小值也可以是12,那么表明ALE信号和WE也可以同时发出,那么也就意味着左图中的TACLS可以为零,那么左下角的寄存器设置中TACLS可以为零,


左上图中TWRPH0表示写使能信号持续的时间,就是右图中的TWP,TWP的最小值是12ns,那么左图中的寄存器设置那里,HCLK*(TWRPH0+1)>=12ns,而HCLK=10ns,所以这里TWRPH0设置为1。


左上图中TWRPH1表示写使能释放之后,再过多久CLE/ALE再释放,也就是右图中的tCLH和tALH,右图中可以看到这两个都是5ns,那么HCLK*(TWRPH1+1)>=5ns,那么TWRPH1可以设置为0.


2.NandFlash控制器使能

然后我们再来看一下使能NandFlash控制器,

3.代码

void nand_init(void)

{

#define  TACLS   0

#define  TWRPH0  1

#define  TWRPH1  0

/*设置NAND FLASH的时序*/

NFCONF = (TACLS<<12) | (TWRPH0<<8) | (TWRPH1<<4);

/*使能NAND FLASH控制器,初始化ECC,禁止片选*/

NFCONT = (1<<4) | (1<<1) | (1<<0);

}

关键字:时序  初始化 引用地址:S3C2440裸机------NandFlash编程_时序及初始化

上一篇:S3C2440裸机------NandFlash编程_芯片id读取
下一篇:S3C2440裸机------NandFlash操作原理

推荐阅读

随着成本与价格逐年下滑,以及采用的厂商增多,覆盖的应用领域变大,预计到2022年,可折叠面板的出货量将会达到6300万片,营收则将年增151%,达到89亿美元。 根据研究机构Display Supply Chain Consultants发布的最新报告预测,2019年可折叠面板出货量为310万片,整体销量并不高。 出现这一情况的原因在于,可折叠面板初期因为售价影响,价格较高,出...
  工业用串行/解串器(SerDes)可降低高带宽数据接口总线宽度。使用一个串行器就可以把数据从一个宽并行数据流转换为少字节甚至单通道低压差分信号(LVDS),有效降低了设计成本,提高了线缆选择的灵活性。在到达传输目的地后,借助一个解串器,即可将数据恢复成并行数据流。串行器和解串器的应用范围广泛多样,本文介绍了数个应用实例,以及该器件的优...
此前,手机中国曾报道过Redmi Note 10系列机型的外观消息,但是由于官方还未正式宣布这款手机,让我们不知道这些手机的参数信息。10月10日,微博知名数码博主@数码闲聊站 发布了两款手机的参数信息,而评论区指出这些参数信息是Redmi Note 10系列机型的。Redmi Note 10系列新机?据该博主发布的信息,共有两款采用LCD屏幕,单开孔设计的机型亮相。其...
1151压力变送器可以被测介质的两种压力通入高、低两压力室,作用在δ元件(即敏感元件)的两侧隔离膜片上,通过隔膜片和δ元件内的填充液传到预张紧的测量腊片两侧,测量膜片与两侧绝缘体上的电极各组成一个电容器,在无压力通入或两压力均等时测量膜片处于中间位置,两侧两电容器的电容量相等,当两侧压力不一致时,致使测量膜片产生位移,其位移量和压力...

史海拾趣

问答坊 | AI 解惑

求在keilc环境下编辑的AT89C2051的C语言程序。

求一个在AT89C2051下能够正常运行的keilc的C语言工程。 哪位大侠,手头上有现成的,比较简单的,给我一个成熟的工程。 因为我要编一个AT89C2051的小程序,无论如何下载到片机上以后,程序都不能正常的运行,所以希望能够参考一下成熟的程序。 一 ...…

查看全部问答∨

Palm软件设计前的六问

当我屁颠屁颠地跟在老师后面不厌其烦询问如何编写某个程序的时候,老师总是对我说先画出你程序的 控制流程序图吧。当时觉得麻烦,也就把这经验之谈当成了一阵风吹过。现在,走上了程序开发这条路 ,才知道开发之前系统的规化一下自已的思路是 ...…

查看全部问答∨

ADS1.2问题

   编译程序时,始终出现:"  Duplicate input file D:\\ARM\\test\\pro4\\pro4_Data\\DebugInRAM\\ObjectCode\\main.o ignored " 的错误。还有就是不能在 *.C 程序中使用printf()函数,他出现:“Could not place stdio ...…

查看全部问答∨

6410(或2440)上, 向GPIO口写1(或置高) 的步骤是不是以下这样:

  6410(或2440)上, 向GPIO口写1(或置高) 的步骤是不是以下这样:     Port X Pull-up/down Register     --> pull-up enabled (置高使能)     Port X Configuration Register    - ...…

查看全部问答∨

在ARM9下wince系统的视频监控如何实现

请教一下在ARM9下wince系统的视频监控如何实现,有没有大虾们做过类似的。最好可以给出实例代码,万分感谢!可以发送到本人邮箱:jhlovebb@126.com…

查看全部问答∨

VHDL程序的一个小问题

在下初学VHDL,下面是一个D触发器的VHDL代码,感觉没错,但是Quartus2在编译的时候总是不能成功,提示: Error (10533): VHDL Wait Statement error at text.vhd(13): Wait Statement must contain condition clause with UNTIL keyword PS: 1. ...…

查看全部问答∨

Lcd  problem

现在要在彩色的lcd显示图片,比如彩色的lcd像素128 128的,图片确是256 256 怎么把缩小呀.又不能失真.…

查看全部问答∨

一个不很专业的问题……

今天刚用NRF24L01无线模块做了一个程控小车,但目前还是初级阶段,只能控制运动,我想再加一些辅助功能,像通过无线传送图像,就是把摄像头采集到的图像通过无线传到电脑,达到一个监控的作用,但是不知道这个无线模块能不能实现,刚网上订购的摄像 ...…

查看全部问答∨

我又回来了!!

考试复习,招聘会,外地面试... 现在有时间了重新拾起单片机…

查看全部问答∨

关于PIC控制LCD 显示字符串问题

我以前用的51的一段显示字符串子函数:   void print(uchar *str) {         while(*str!=\'\\0\')         {                 LCD_Write(*str); ...…

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

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

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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