www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]這次大概介紹了一下NAND Flash,以及在ASF中使用它的方法。一、 接線這個(gè)開發(fā)板搭載了一個(gè)256 MB,8位的NAND Flash(MT29F2G08ABAEA)。引腳接線如下:偷個(gè)懶,直接上引腳復(fù)用的圖。其中PC14表明該NAND FLASH需要作為

這次大概介紹了一下NAND Flash,以及在ASF中使用它的方法。

一、 接線

這個(gè)開發(fā)板搭載了一個(gè)256 MB,8位的NAND Flash(MT29F2G08ABAEA)。引腳接線如下:

偷個(gè)懶,直接上引腳復(fù)用的圖。其中PC14表明該NAND FLASH需要作為SMC的外設(shè)0使用。通過使用NANDOE和NANDWE引腳說明需要使用芯片的NAND Flash控制邏輯。另外,PC18復(fù)用為輸入引腳,用以查詢芯片的狀態(tài)。

二、 NAND Flash

組織結(jié)構(gòu)與尋址

NAND Flash的容量較大。整片F(xiàn)lash分為若干個(gè)塊(Block),每個(gè)Block分為若干個(gè)頁(Page)。在每個(gè)頁中,除了數(shù)據(jù)區(qū)域,也包含若干“多余”的區(qū)域,用來進(jìn)行ECC等操作。在進(jìn)行擦除操作是,基本單位是“塊”;而編程的基本單位是“頁”。

另外,NAND Flash的物理特性決定了其在編程時(shí),每個(gè)bit只能從1變成0。所以在寫入前,必須先對(duì)該塊進(jìn)行擦除(擦除時(shí)把所有位置為1)。

該Flash的結(jié)構(gòu)如下(忽略plane):

在尋址時(shí),是通過行地址和列地址指定儲(chǔ)存單元的。其中行地址表示頁的編號(hào),列地址表示指定在目標(biāo)地址在該頁的位置。

讀寫時(shí)序

因?yàn)闆]有地址線,所以讀寫較為復(fù)雜。讀寫時(shí),需要先發(fā)送相應(yīng)操作命令,然后發(fā)送地址,才能進(jìn)行數(shù)據(jù)傳輸。一個(gè)簡(jiǎn)單的“頁讀取”操作時(shí)序圖如下:

該命令首先拷貝整個(gè)頁到NAND Flash的cache寄存器中,然后在需要輸出的時(shí)候,再從指定的列地址開始輸出。

PS,該NAND Flash支持在上電的時(shí)候自動(dòng)送出第一頁的數(shù)據(jù),所以經(jīng)過適當(dāng)?shù)呐渲?,也是可以通過它進(jìn)行Boot的。

CE# Don’t Care

在給NAND Flash發(fā)送完命令后,F(xiàn)lash需要一個(gè)準(zhǔn)備的過程。在這個(gè)過程中,需要保持片選信號(hào)的有效。(據(jù)說否則Flash就會(huì)進(jìn)入低功耗狀態(tài))

一個(gè)簡(jiǎn)單的方法是使用GPIO直接控制這個(gè)引腳。在ASF中使用的即是這個(gè)方法。

另外的方法即是使用Flash的“CE# Don’t Care”功能。開啟這個(gè)功能后,即使片選無效,F(xiàn)lash也會(huì)進(jìn)行工作。這樣做的好處是不用再手動(dòng)控制片選信號(hào)線外;同時(shí)可以在Flash進(jìn)行內(nèi)部操作時(shí),可以進(jìn)行其他的片選。比如在一塊Flash忙時(shí),可以給另外一塊Flash發(fā)送命令。但是,開啟這個(gè)功能可能會(huì)增加Flash的功耗。

三、 ASF中NAND Flash使用

準(zhǔn)備

在ASF Wizard中添加“NAND Flash on EBI”模塊。

在conf_board.h中進(jìn)行如下聲明,記得調(diào)用board_init():

1#define CONF_BOARD_NAND

Flash 初始化

在board_init()之后,調(diào)用nand_flash_raw_initialize()即可完成NAND Flash的初始化工作。

12345678structnand_flash_raw nf_raw;memset((void*)&nf_raw, 0, sizeof(nf_raw));// Init NAND Flash, and get informations into nf_rawif(nand_flash_raw_initialize(&nf_raw, 0,BOARD_NF_COMMAND_ADDR, BOARD_NF_ADDRESS_ADDR, BOARD_NF_DATA_ADDR)) {MainExit();}

該函數(shù)中,會(huì)對(duì)SMC和若干引腳進(jìn)行配置;同時(shí)對(duì)Bus matrix進(jìn)行設(shè)置,以使用芯片提供的NAND Flash邏輯功能。

然后會(huì)對(duì)NAND Flash進(jìn)行重置。接著就會(huì)讀取該Flash的ID,并根據(jù)該ID檢測(cè)Flash的參數(shù),如page大小,block數(shù)目等。

基本操作

在nand_flash_raw.h中還提供了一些比較基礎(chǔ)的操作。

以下代碼對(duì)所有的塊進(jìn)行擦除,若在擦除中碰到錯(cuò)誤,則打印出來(這里printf會(huì)通過UART0口打印,以后有機(jī)會(huì)會(huì)說怎么實(shí)現(xiàn)):

12345678910111213// Get NAND's information from nf_rawconststructnand_flash_model* nf_mod = &(nf_raw.model);intnum_block = nand_flash_model_get_device_size_in_blocks(nf_mod);// Erase all blockprintf("Erasing NAND Flash...nr");interror;for(inti = 0; i < num_block; i++) {error = nand_flash_raw_erase_block(&nf_raw, i);if(error == NAND_COMMON_ERROR_BADBLOCK) {printf("-E- Block %u is BAD block. nr", i);}}

還有page的寫入、讀取和拷貝等操作就不一一列舉了……


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

8位單片機(jī)在嵌入式設(shè)計(jì)領(lǐng)域已經(jīng)成為半個(gè)多世紀(jì)以來的主流選擇。盡管嵌入式系統(tǒng)市場(chǎng)日益復(fù)雜,8位單片機(jī)依然不斷發(fā)展,積極應(yīng)對(duì)新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機(jī)系列,配備了先進(jìn)的獨(dú)立...

關(guān)鍵字: 單片機(jī) 嵌入式 CPU

在嵌入式系統(tǒng)開發(fā)中,程序燒錄是連接軟件設(shè)計(jì)與硬件實(shí)現(xiàn)的關(guān)鍵環(huán)節(jié)。當(dāng)前主流的單片機(jī)燒錄技術(shù)已形成ICP(在電路編程)、ISP(在系統(tǒng)編程)、IAP(在應(yīng)用編程)三大技術(shù)體系,分別對(duì)應(yīng)開發(fā)調(diào)試、量產(chǎn)燒錄、遠(yuǎn)程升級(jí)等不同場(chǎng)景。...

關(guān)鍵字: 單片機(jī) ISP ICP IAP 嵌入式系統(tǒng)開發(fā)

在嵌入式系統(tǒng)開發(fā)中,看門狗(Watchdog Timer, WDT)是保障系統(tǒng)可靠性的核心組件,其初始化時(shí)機(jī)的選擇直接影響系統(tǒng)抗干擾能力和穩(wěn)定性。本文從硬件架構(gòu)、軟件流程、安全規(guī)范三個(gè)維度,系統(tǒng)分析看門狗初始化的最佳實(shí)踐...

關(guān)鍵字: 單片機(jī) 看門狗 嵌入式系統(tǒng)

本文中,小編將對(duì)單片機(jī)予以介紹,如果你想對(duì)它的詳細(xì)情況有所認(rèn)識(shí),或者想要增進(jìn)對(duì)它的了解程度,不妨請(qǐng)看以下內(nèi)容哦。

關(guān)鍵字: 單片機(jī) 開發(fā)板 Keil

隨著單片機(jī)系統(tǒng)越來越廣泛地應(yīng)用于消費(fèi)類電子、醫(yī)療、工業(yè)自動(dòng)化、智能化儀器儀表、航空航天等各領(lǐng)域,單片機(jī)系統(tǒng)面臨著電磁干擾(EMI)日益嚴(yán)重的威脅。電磁兼容性(EMC)包含系統(tǒng)的發(fā)射和敏感度兩方面的問題。

關(guān)鍵字: 單片機(jī) 電磁兼容

以下內(nèi)容中,小編將對(duì)單片機(jī)的相關(guān)內(nèi)容進(jìn)行著重介紹和闡述,希望本文能幫您增進(jìn)對(duì)單片機(jī)的了解,和小編一起來看看吧。

關(guān)鍵字: 單片機(jī) 復(fù)位電路

在這篇文章中,小編將為大家?guī)韱纹瑱C(jī)的相關(guān)報(bào)道。如果你對(duì)本文即將要講解的內(nèi)容存在一定興趣,不妨繼續(xù)往下閱讀哦。

關(guān)鍵字: 單片機(jī) 異常復(fù)位

今天,小編將在這篇文章中為大家?guī)韱纹瑱C(jī)的有關(guān)報(bào)道,通過閱讀這篇文章,大家可以對(duì)它具備清晰的認(rèn)識(shí),主要內(nèi)容如下。

關(guān)鍵字: 單片機(jī) 仿真器

單片機(jī)將是下述內(nèi)容的主要介紹對(duì)象,通過這篇文章,小編希望大家可以對(duì)它的相關(guān)情況以及信息有所認(rèn)識(shí)和了解,詳細(xì)內(nèi)容如下。

關(guān)鍵字: 單片機(jī) 中斷 boot

一直以來,單片機(jī)都是大家的關(guān)注焦點(diǎn)之一。因此針對(duì)大家的興趣點(diǎn)所在,小編將為大家?guī)韱纹瑱C(jī)的相關(guān)介紹,詳細(xì)內(nèi)容請(qǐng)看下文。

關(guān)鍵字: 單片機(jī) 數(shù)字信號(hào) 模擬信號(hào)
關(guān)閉