1、nand flash的初始化操作
(1.1)nand flash的初始化操作流程
(1.1.1)設初始化 置管腳
(1.1.2)初始化nfconf暫存器
(1.1.3)初始化nfcont暫存器
(1.2)初始化nfconf暫存器分析
(1.2.1)在2440手冊中,分析nand flash 控制器的命令/位址時序圖,裡面只涉及三個引數tacls,twrph0,twrph1
/* hclk=100mhz,也就是10ns
* tacls: 發出cle/ale之後多長時間才發出nwe訊號, 從nand手冊可知cle/ale與nwe可以同時發出,所以tacls=0
* twrph0: nwe的脈衝寬度, hclk x ( twrph0 + 1 ), 從nand手冊可知它要》=12ns, 所以twrph0>=1
* twrph1: nwe變為高電平後多長時間cle/ale才能變為低電平, 從nand手冊可知它要》=5ns, 所以twrph1>=0*/
(1.2.2)nand flash 手冊相應類似的時序圖如下
tacls,twrph0,twrph1對應的是tcls-twp,twp,tclh.這裡tcls和twp的最小值都為12ns(3.3v下),twp大於等於12ns,tclh大於5ns
(1.2.3)引數對應的取值的**
(1.3)初始化函式
/* 初始化nand flash */
void nand_init(void)
2、nand flash 的復位操作
(2.1)nand flash的時序圖
其中trst在nand flash手冊的定義為在復位命令ffh被寫入nand flash 的命令暫存器後狀態引腳rnb變為高電平的時間(也就是nand flash狀態變為空閒的時間)
(2.2)歸納步驟如下
選中nand flash晶元
發出ffh命令
等待nand flash變為空閒狀態
取消片選
(2.3)函式編寫
void s3c2440_nand_reset(void)
直接初始化和複製初始化
關於這個問題,國內外都有許多爭論,但我至今未找到滿意的答案,至於為為什麼,這就是今天要說明的。可能大家都有看過c primer,我看的是第四版,中文版,英文水平不怎麼樣。其中第13章,描述說,複製建構函式可用於 1.根據另乙個同型別的物件顯式或隱式初始化乙個物件 2.複製乙個物件,將它作為引數傳遞給...
靜態初始化和例項初始化
父類單獨的效果 當父類單獨執行時,靜態初始化塊優先執行,然後是例項初始化塊,最後才是構造器 子類單獨效果 首先執行父類的靜態初始化塊和子類的初始化塊 優先執行靜態 然後執行父類的例項初始化塊和構造器,最後執行子類的例項初始化塊和構造器 父類子類效果1 父在前子在後 先將父類的物件例項出來後,進行子類...
直接初始化和拷貝初始化
定義 示例 string dots 10,直接初始化 string s dots 直接初始化 string s2 dots 拷貝初始化 string null book 9 999 99999 9 拷貝初始化 string nines string 100,9 拷貝初始化注 直接初始化實際上是要求編...