1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 閃速存儲器芯片K9F6408系列的典型應用

        時間:2024-07-01 15:44:19 理工畢業論文 我要投稿
        • 相關推薦

        閃速存儲器芯片K9F6408系列的典型應用

        摘要:K9F6408系列是8M×8bit的NAND型閃速存儲器。它以其快速讀寫循環,數據硬件保護,可擦除,I/O口命令/地址/數據線復用和接口便利等特點,正成為大型數據如語音、數字圖像、文件等系統數據的載體。本文給出了K9F640800A與單片機P87C52的硬件連接電路及閃速存儲器操作的軟件應用程序。

        關鍵詞:flash 存儲器;扇區;操作;應用程序

        1、概述

        存儲器是計算機外圍產品的重要組成部分,在經歷了ROM, PROM和 EPROM和 如今已到了閃速存儲器(Flash Memory)的時代。Flash存儲器以其低成本,高可靠性的讀寫,非易失性,可擦寫性和操作簡便而成為一系列程序代碼(應用軟件)和數據(用戶文件)存儲的理想媒體,從而受到到嵌入式系統開發者的歡迎。

        Flash存儲器的應用范圍極廣,從現代計算機優盤到嵌入式系統中取代 的地位,可謂占盡風流。正因為Flash的應用廣泛,了解和掌握Flash的相關操作和管理技術就極為重要。大致說來Flash操作包括:檢錯(對Flash內部壞扇區的檢測)、寫操作(寫入數據)、讀操作(從Flash中讀出數據)、空間管理和擦除操作。在系統中我們選用AT87C52單片機,它有24個I/O口,其中8個作為有特殊功能的I/O口,因此只剩16個I/O口可供一般的輸入/輸出使用。我們選用K9F640800A閃存的主要原因是它能節約I/O口,即它的地址線和數據線可復用。而其他許多閃存的地址線和數據線是分開使用的。因此,本文以SAMSUNG公司的K9F640800A為例,介紹Flash的操作技術。

        2、K9F640800A芯片的性能特點:

        ·供電電壓:2.7v~3.6v
        ·該芯片容量為66Mbits,由1024塊組成,每塊又由16頁組成,一頁共有(512+16)×8bit。使用64Mbits,另外還有2Mbits的閑置儲存空間。
        ·寫和讀以頁為單位,而擦除以塊為單位。讀、寫和擦除操作均通過命令完成,非常方便。(參見圖3)
        ·此芯片可擦寫1百萬次,掉電數據不丟失,數據可保存十年。
        ·有8位串行口,且可復用,既可作為地址和數據的輸入/輸出引腳,又可作命令的輸入引腳,根據時序采用分時循環。(見時序圖5)
        ·寫入每頁的時間為200us,平均每寫一個字節約400ns,即約20Mb/s。
        ·該flash的每一個扇區又分為三個區(256字節,256字節和16字節),如果需要對這三個區獨立操作,則通過00h,01h和50h命令分別選中。(參見圖3)
        ·快速的讀寫循環和數據硬件保護。

        引腳分布、功能及操作命令如圖1所示:

        3、P87C52與K9F6408U0A的應用電路

        我們設計了一個系統,所需實現的功能是,由P87C52單片機將接收到的GPS芯片發送的數據,按一定的格式處理后,存儲到Flash芯片上。當上位機發出讀命令時,P87C52再從flash中取出數據,發給上位機。在此,我們給出了K9F6408U0A的flash芯片與P87C52單片機連接圖(圖2)。

        4、K9F6408U0A的軟件編程

        K9F6408U0A的軟件編程是采用C語言中嵌入匯編來完成。主要包括:flash扇區檢錯,讀,寫,擦除和管理flash空間。

        1)檢錯:剛出廠的Flash中可能存在壞扇區,用久的Flash好扇區也可能變壞。為了保證讀寫數據的可靠性,必須對Flash扇區進行檢測。Flash扇區的好壞標志存在于第3區中的第6 Column, 若扇區已壞,則標志位數據不是FFH。設置一錯誤扇區的表,掃描檢錯flash,將壞扇區的號依次填入表中,將此表保存于flash存儲器中的第一個塊中(因為SAMSUNG確保第一個塊能正確使用)。流程圖(圖四):

        2)讀flash:Flash 分三個區,命令0X00,0X01和0X50可分別讀取第一,二,三區中的數據。

        過程為:選中Flash,通過I/O口寫入讀命令字,寫入所讀數據地址,置讀信號有效(下跳沿有效)。
        (讀寫)時序圖如下:

        具體程序如下:

        void FlashRead()
        {
        unsigned char d;
        Flash_CE=0; file://片選
        WriteCommand(0x00); file://寫讀的命令
        WriteAddress(0x00,0); file://寫讀的地址
        for(d=0;d!=2;d ) file://一次讀兩頁
        {
        uint k=528; file://每個扇區有528個字節

        【閃速存儲器芯片K9F6408系列的典型應用】相關文章:

        鐵電存儲器在儀表中的應用03-18

        FPGA芯片APA150及其應用03-18

        數字溫度測控芯片DS1620的應用03-19

        PCI接口芯片s5935及其應用03-19

        電力載波芯片ST7538及其應用03-18

        藍牙芯片ROK 101 007在語音系統中的應用03-27

        Neuron多處理器芯片及其應用03-18

        USB總線接口芯片CH371及其應用03-18

        高性能VGA芯片AD8367原理及應用03-19

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>