單片機課件8-單片機存儲器擴展_第1頁
單片機課件8-單片機存儲器擴展_第2頁
單片機課件8-單片機存儲器擴展_第3頁
單片機課件8-單片機存儲器擴展_第4頁
單片機課件8-單片機存儲器擴展_第5頁
已閱讀5頁,還剩93頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第3章單片機的存儲器的擴展

單片機系統的三總線的構造半導體存儲器程序存儲器和數據存儲器的擴展方法E2PROM的使用程序存儲器和數據存儲器的同時擴展主要內容2023/2/2單片機原理及其應用2

單片機系統的擴展是建立在地址總線(AB)、數據總線(DB)和控制總線(CB)基礎上的,這些總線都是并行的,能夠理想地匹配CPU的處理速度。任何單片機之外的芯片和硬件資源必須通過總線與單片機相連,才能被單片機有效地管理,成為系統的有機組成部分。MCS-51單片機對外沒有專用的地址總線(AB)、數據總線(DB)和控制總線(CB),在進行系統擴展時,首先需要擴展系統的三總線。第3章單片機的存儲器的擴展2023/2/2單片機原理及其應用33.1單片機系統的三總線的構造

MCS-51

單片機三總線構造原理圖2023/2/2單片機原理及其應用4

當MCS-51單片機需要擴展外部ROM或外部RAM時,P0口可以提供低八位地址總線和數據總線,P2口提供高八位地址總線,這種情況下,P0和P2就不能再作為I/O使用了。由于P0口的分時復用,MCS-51單片機的地址和數據總線不是分立的。在時序上,P0口在ALE為有效高電平期間,輸出低8位地址A7~A0,同時,P2口上輸出高8位地址A15~A8。在ALE為有效低電平時,CPU對A15~A0狀態指定的單元進行操作,此時,P0口作為數據總線。3.1單片機系統的三總線的構造

2023/2/2單片機原理及其應用5

在單片機的片外增加一片地址鎖存器,以ALE作為鎖存控制信號,當ALE為高電平時,P0口輸出地址信息,在ALE出現下跳沿時,把P0口的地址信息鎖存。ALE為低電平期間P0用作數據總線口。3.1單片機系統的三總線的構造

74LS373作為地址鎖存器的電路

2023/2/2單片機原理及其應用63.1單片機系統的三總線的構造

采用地址寄存器使P0口分時提供的地址和數據信息分離,形成了分立的并行總線:地址總線、數據總線和控制總線,單片機的存儲器、并行I/O擴展以及其他部件的擴展都是以此為基礎進行的。地址總線(AddressBus,AB)由P0口輸出的低8位地址須經地址鎖存器(74LS373)鎖存,這樣,P2口和地址鎖存器的8位輸出構成了MCS-51的地址總線A15~A0.MCS-51單片機的地址總線為16位,它的存儲器最大的擴展容量為216,即64K個單元。2023/2/2單片機原理及其應用7

數據總線(DataBus,DB)傳送的是數據信息,數據總線是雙向的。數據總線用于在單片機與存儲器之間、單片機與I/O口之間的數據傳送。單片機的數據總線為8位,由P0口提供,數位與P0口之間的對應關系為:3.1單片機系統的三總線的構造2023/2/2單片機原理及其應用8

控制總線(ControlBus,CB)用來傳送控制信號,用來協調單片機系統中各個部件的工作。MCS-51單片機與擴展相關的控制總線如下:(1)ALE——用來實現低8位地址的鎖存。(2)EA——外部程序存儲器選擇控制信號。(3)PSEN——擴展外部程序存儲器讀控制信號。(4)WR——擴展的外部數據存儲器和外部I/O口的寫控制信號,是P3.6的第2功能,單片機輸出的信號;(5)RD——擴展的外部數據存儲器和外部I/O的讀控制信號,是P3.7的第2功能,單片機輸出的信號。3.1單片機系統的三總線的構造

2023/2/2單片機原理及其應用93.2半導體存儲器

存儲器是計算機的記憶部件。CPU要執行的程序、要處理的數據及中間結果等都存放在存儲器中。存儲容量和存取時間是存儲器的兩項重要指標,它們反映了存儲記憶信息的多少與工作速度的快慢。根據讀的方式,可分為隨機存取存儲器(RAM)和只讀存儲器(ROM)兩大類。

2023/2/2單片機原理及其應用103.2.1隨機存取存儲器隨機存取存儲器(RandomAccessMemory,RAM)可以多次寫入和讀出,每次寫入后,原來的內容自動消失,被新寫入的內容代替;對RAM進行讀操作,不會改變RAM存儲單元的內容;當電源掉電時,RAM里的內容隨即消失。

RAM可分為為靜態RAM和動態RAM。3.2半導體存儲器

2023/2/2單片機原理及其應用11

靜態RAM采存取速度快,只要不掉電就可以持續地保持存儲內容不變。在單片機應用系統被廣泛使用。動態RAM采用MOS晶體管柵電容動態地存儲電荷,以實現信息的記憶和存儲。存儲信息的電容有足夠大的存儲電荷時表示“1”,無存儲電荷時表示“0”。由于電容上的電荷會因電路泄漏而逐漸消失,即使電源不掉電,經過一段時間,動態RAM中的所存儲的信息也會丟失。

RAM是由若干個單元構成的,RAM內容的存取是以字節為單位的,為了區別各個不同的單元,將每個存儲單元賦予一個編號,即存儲單元的地址。存儲單元是存儲信息的最基本單位,不同的單元有不同的地址。在進行讀寫操作時,可以按照地址訪問某個單元。3.2半導體存儲器2023/2/2單片機原理及其應用123.2.2只讀存儲器只讀存儲器(ReadOnlyMemory,ROM),ROM一般用來存儲程序和常數。ROM是采用特殊方式寫入的,一旦寫入,在使用過程中不能隨機地修改,只能從其中讀出信息。與RAM不同,當電源掉電時,ROM仍能保持內容不變。在讀取該存儲單元內容方面,ROM和RAM相似。只讀存儲器有掩膜ROM、PROM、EPROM、E2PROM(也稱EEPROM)、FlashROM等。它們的區別在于寫入信息和擦除存儲信息的方式不同。3.2半導體存儲器

2023/2/2單片機原理及其應用133.3.127××系列芯片單片機的程序存儲器通常采用只讀存儲器,使用較多的是EPROM和E2PROM。本節主要介紹EPROM的擴展方法。典型EPROM為27××系列芯片,其中27為產品代號,××表示芯片存儲位的容量(單位:K)。常用的芯片有:2716(2K×8位,2K個單元,每個單元8位)、2732(4K×8位)、2764(8K×8位)、27128(16K×8位)、27256(32K×8位)和27512(64K×8位)等。3.3程序存儲器擴展

3.3程序存儲器的擴展為什么要擴展?8031片內無ROM8051、8751、89C51等內ROM

容量不夠用什么擴展?常用EPROM,如:2716(2K),2732(4K),2764(8K),…27512(64K)常用EPROM芯片引腳連/PSEN連片選信號2023/2/2單片機原理及其應用1627××各芯片管腳及其兼容性能3.3程序存儲器擴展

2023/2/2單片機原理及其應用17

(一)引腳介紹(以2764為例):(1)電源線

Vcc(28腳):工作電源,+5V;

GND(14腳):地;

VPP(1腳):編程電源。當芯片編程時,由該引腳加編程電壓,編程電壓有以下幾種:12.5V,25V,在芯片編程時,應確認芯片的編程電壓。在芯片工作在應用系統中時,VPP接+5V。(2)地址線(A12~A0)

2764的容量為8K個單元,它有13根地址線。3.3程序存儲器擴展2023/2/2單片機原理及其應用18

(3)數據線(O7~O0)

2764的數據線有8根。(4)片選線

CE:片選與芯片編程控制。當芯片工作在應用系統中時,作為芯片的片選信號,低電平有效。(5)控制線

OE:輸出控制信號,低電平有效。OE低電平時,2764的輸出緩沖器打開,在CE為低電平時,由A12~A0指定單元的內容從O7~O0輸出。

PGM:芯片編程控制信號。當芯片編程時,用于引入編程脈沖。當芯片工作在應用系統中時,PGM接+5V。

NC為未定義引腳,使用時懸空。3.3程序存儲器擴展

2023/2/2單片機原理及其應用19

(二)工作方式

EPROM一般有5種工作方式,由、、、等信號的狀態組合來確定。表8.2列出了27××系列芯片的工作方式,表中“—”代表無此項內容。我們仍然以2764為例來說明EPROM的工作方式。(1)讀 當,2764被選中,此時,若、VPP接+5V、且為高電平,由地址線A12~A0狀態指定單元的內容從O7~O0輸出。3.3程序存儲器擴展2023/2/2單片機原理及其應用202023/2/2單片機原理及其應用21

(2)未選中時,2764未選中,此時,O7~O0輸出為高阻狀態,2764處于低功耗維持狀態。(3)編程

2764的VPP接指定的編程電壓(如25V或12.5V)、、且為低電平時,2764處于編程方式,把程序代碼寫入芯片。寫入存儲單元的地址由地址線A12~A0確定,寫入內容從O7~O0輸入。3.3程序存儲器擴展

2023/2/2單片機原理及其應用22

(4)編程校驗編程校驗是為了檢查寫入的內容是否正確。VPP保持編程電壓、、且為高電平時,按讀方式把寫入的內容讀出。(5)編程禁止

VPP保持編程電壓,只要時,2764處于編程禁止狀態,禁止寫入程序。3.3程序存儲器擴展

2023/2/2單片機原理及其應用233.3.2外部程序存儲器擴展原理及時序(一)外部程序存儲器擴展使用的控制信號(1)EA——用于片內、片外程序存儲器配置,輸入信號。當EA=0時,單片機的程序存儲器全部為擴展的片外程序存儲器;當EA=1時,單片機的程序存儲器可由片內程序存儲器和片外程序存儲器構成,當訪問的空間超過片內程序存儲器的地址范圍時,單片機的CPU自動從片外程序存儲器取指令。 (2)ALE——用于鎖存P0口輸出的低8位地址。(3)PSEN——單片機的輸出信號,低電平時,單片機從片外程序存儲器取指令;在單片機訪問片內程序存儲器時,該引腳輸出高電平。3.3程序存儲器擴展

[例]80C31對片外ROM的擴展圖5.6擴展16K字節的EPROM的方法DBABAB2023/2/2單片機原理及其應用25(二)外部程序存儲器擴展原理3.3程序存儲器擴展(1)程序存儲器全部為外部的程序存儲器擴展電路2023/2/2單片機原理及其應用26

3.3程序存儲器擴展

(2)保留片內程序存儲器的程序存儲器擴展電路原理2023/2/2單片機原理及其應用27(三)單片機CPU訪問外部程序存儲器的時序

CPU訪問外部程序存儲器時,程序計數器PC內容的高8位(PCH)和低8位(PCL)分別從P2和P0口輸出。由于PC為16位寄存器,因此,不論是芯片內部的程序存儲器還是擴展的外部程序存儲器,每個單元的地址必定是16位的。3.3程序存儲器擴展

訪問外部存儲器的時序2023/2/2單片機原理及其應用28P0口輸出的地址信息在ALE的上升沿被輸出到地址鎖存器的輸出端,ALE下降沿時,該地址信息被鎖存到地址鎖存器的輸出端,即低8位地址。然后,P0口由輸出方式轉換為輸入方式,即浮空狀態,等待CPU從程序存器中讀取指令代碼,而P2的輸出的高8位地址保持不變。當變為低電平時,P2口和地址鎖存器輸出的16位地址指定單元的內容——指令代碼傳送到P0口供CPU讀取。3.3程序存儲器擴展

2023/2/2單片機原理及其應用29

從時序圖可以看出,在一個機器周期內,ALE出現兩個正脈沖,兩個負脈沖,說明CPU在一個機器周期內可以兩次訪問外部程序存儲器。通常,程序存儲器可以選用EPROM和E2PROM。在選用芯片時,除了考慮芯片的存儲容量之外,還必須使芯片的讀取時間與單片機CPU的時鐘匹配。3.3程序存儲器擴展

程序存儲器擴展的一般連接方法DB直接連接CB單片機的/PSEN----→ROM的/OEAB低地址線〔片內地址線〕直接相連高位地址線〔經譯碼連接〕----→ROM的/CE2023/2/2單片機原理及其應用313.3.3EPROM擴展電路(一)單芯片EPROM的擴展(1)采用2764為8031單片機擴展8K的程序存儲器。

8031是MCS-51系列單片機中一款片內不含程序存儲器的產品,因此,在使用8031單片機時,必須擴展程序存儲器。由于芯片中沒有程序存儲器,8031單片機的程序存儲器全部是外部的,因此,必須接地。3.3程序存儲器擴展

2023/2/2單片機原理及其應用32圖8.78031單片機擴展8K的程序存儲器3.3程序存儲器擴展

2023/2/2單片機原理及其應用33

圖中地址鎖存器選用74LS373。由于系統中只有1片EPROM,它的片選端接地,使2764始終處于被選中的狀態。另外,2764的容量為8K,在電路中僅使用了地址總線的低13位,即A12~A0,也就是說,P2口僅有P2.4~P2.0被使用了。必須指出的是,雖然P2口剩余的口線沒有被2764使用,但是,它們不能再作為I/O口線使用了。3.3程序存儲器擴展

2023/2/2單片機原理及其應用343.3程序存儲器擴展

擴展得到的8K程序存儲器的地址范圍

由于單片機復位后,程序計數器PC的內容為0000H,對于8031來說,該單元必定位于擴展的外部程序存儲器,因此,令“×”為0,把上述編碼寫成十六進制數,我們得到了擴展的外部程序存儲器的地址范圍是0000~1FFFH,也就是說,對于擴展的2764的8K個單元,每個單元的地址是唯一的。2023/2/2單片機原理及其應用35(2)采用2764為80C51單片機擴展8K的程序存儲器3.3程序存儲器擴展

80C51是MCS-51系列單片機中一款片內含有4K程序存儲器的產品。假設某一應用系統采用80C51單片機,而其程序代碼容量大于4K,在保留片內4K程序存儲器的基礎上,再擴展8K的外部程序存儲器,在這種情況下,EA必須接高電平,以使單片機復位后,首先從單片機內部的程序存儲器執行程序,內部程序存儲器占用了程序存儲器地址空間的前4K,即0000~0FFFH。只有當程序計數器PC內容大于0FFFH時,CPU才會從外部擴展的程序存儲器取指令。2023/2/2單片機原理及其應用36保留片內程序存儲器的擴展方案80C51單片機擴展8K的程序存儲器3.3程序存儲器擴展2023/2/2單片機原理及其應用373.3程序存儲器擴展保留片內程序存儲器的擴展方案的單元地址分析2023/2/2單片機原理及其應用38

在保留片內程序存儲器的前提下,外部程序存儲器的地址如何確定呢?顯然,0000~0FFFH這4K的地址空間已被內部程序存儲器占用,外部程序存儲器空間不能包含這一地址范圍。我們令A13的狀態為“1”,A15A14都為0,那么,外部擴展的8K程序存儲器地址范圍為2000~3FFFH。當PC內容在0000~0FFFH范圍內時,雖然2764的A13~A0的狀態給出了單元地址,但是為高電平,CPU不會從2764芯片中取指令的。3.3程序存儲器擴展

2023/2/2單片機原理及其應用39

實際上,在上圖中A15、A14、A13并沒有接到2764芯片上,它們與CPU訪問2764無關,為了避免與片內的地址沖突,也可以令A15A14A13=101,此時,外部程序存儲器的地址范圍為:A000~BFFFH。顯然,A15A14A13取不同的狀態時,外部程序存儲器的地址范圍是不同的,這種現象為地址重疊。克服地址重疊現象的方法是采用所有的地址線全譯碼。3.3程序存儲器擴展地址重疊現象:2023/2/2單片機原理及其應用40采用地址線全譯碼的擴展電路3.3程序存儲器擴展

2023/2/2單片機原理及其應用41

(二)多芯片EPROM的擴展

MCS-51單片機擴展多片程序存儲器芯片時,程序存儲器芯片地址線、數據線和輸出控制()連接與單個芯片的連接是一樣的,如何分配存儲空間,使擴展的各個存儲器芯片之間在使用過程中不發生訪問沖突,是多個芯片擴展的關鍵。在設計時,必須保證各個芯片上的存儲單元的地址在應用系統中是互不相同的。(1)必須保證各個芯片不會在同一時刻被CPU選中, (2)在被選中的芯片上的各個存儲單元的地址是唯一的。 多個芯片的擴展主要解決的問題是保證各個芯片不會在同一時刻被選中,即芯片片選設計。3.3程序存儲器擴展

2023/2/2單片機原理及其應用42

片選信號的產生方法: (1)采用線選法:通常用擴展時芯片沒有使用的高位地址線直接選擇芯片。 (2)譯碼器譯碼法:用擴展時芯片沒有使用的高位地址線作為譯碼器的輸入,譯碼產生片選信號。3.3程序存儲器擴展2023/2/2單片機原理及其應用43

(1)2片外部程序存儲器的擴展 用2片2764為80C51單片機擴展16K的外部程序存儲器。3.3程序存儲器擴展80C51單片機擴展16K的外部程序存儲器2023/2/2單片機原理及其應用44

為了使擴展的程序存儲器空間與80C51片內的4KROM不沖突(地址范圍:0000~0FFFH),令P2.5=1,擴展16K的外部程序存儲器地址分配如下(×默認為0):3.3程序存儲器擴展

系統的程序存儲器空間分配為:片內ROM:0000~0FFFH;

IC2: 2000~3FFFH;

IC3: 6000~7FFFH。

2023/2/2單片機原理及其應用45

(2)多片外部程序存儲器的擴展譯碼器譯碼方法是使用譯碼器對MCS-51單片機的高位地址進行譯碼,用譯碼器的輸出作為存儲器芯片片選,以實現各擴展芯片片選不會同時有效,避免CPU訪問沖突事件的發生。 譯碼器譯碼方法是單片機擴展時常用的一種方法。常用的譯碼器芯片有2-4譯碼器(74LS139)、3-8譯碼器(74LS138)和4-16譯碼器(74LS154)。3.3程序存儲器擴展

2023/2/2單片機原理及其應用461)2-4譯碼器74LS139引腳圖

74LS139真值表

3.3程序存儲器擴展

2023/2/2單片機原理及其應用47

(2)3-8譯碼器

3.3程序存儲器擴展2023/2/2單片機原理及其應用4874LS138的功能表3.3程序存儲器擴展

2023/2/2單片機原理及其應用49

(3)采用譯碼器譯碼產生片選的程序存儲器擴展3.3程序存儲器擴展采用4片2764為80C51擴展32K的外部程序存儲器2023/2/2單片機原理及其應用50擴展32K的外部程序存儲器地址分配如下(×默認為0):3.3程序存儲器擴展

2023/2/2單片機原理及其應用51

系統中各個芯片的地址范圍如下

IC3地址范圍:0000~1FFFH;

IC4地址范圍:2000~3FFFH;

IC5地址范圍:4000~5FFFH;

IC6地址范圍:6000~7FFFH;3.3程序存儲器擴展2023/2/2單片機原理及其應用52

擴展32K的外部程序存儲器采用全譯碼方式產生片選信號的電路:3.3程序存儲器擴展

采用譯碼器譯碼的方法產生片選時,如果全部的高位地址線都參加譯碼,稱為全譯碼;如果僅有部分高位地址線參與譯碼,稱為部分譯碼。2023/2/2單片機原理及其應用53

擴展程序存儲器應注意:(1)根據應用系統容量要求選擇EPROM芯片時,應使應用系統電路盡量簡化,在滿足容量要求時盡可能選擇大容量芯片,以減少芯片組合數量。(2)擇好EPROM容量后,要選擇好能滿足應用系統應用環境要求的芯片型號。如最大讀取時間、電源容差、工作溫度以及老化時間等。 (3)通用EPROM芯片管腳有一定的兼容性,在電路設計時應充分考慮其兼容特點。如2764、27128、27256,可將第26、27管腳的印刷電路連線設計成易于改接的形式。3.3程序存儲器擴展

2023/2/2單片機原理及其應用543.4.1常用靜態數據存儲器芯片 單片機擴展外部數據存儲器時,大都采用靜態RAM,使用較為方便,不需要考慮刷新的問題。常用的靜態數據存儲器芯片有:6116(2K×8)、6264(8K×8)、62256(32K×8)等。3.4數據存儲器擴展

61166264622562023/2/2單片機原理及其應用556116是2Kx8位靜態隨機存儲器芯片,采用CMOS工藝制作,單一+5V電源,額定功耗160mW,典型存取時間為200ns,24個引腳,雙列直插式封裝。

A0—A10:11位地址線;共有2048個單元。

IO0~IO7:8位數據線;

CE:片選信號,低電平有效;

OE:輸出控制。在CE為低電平時,OE為低電平把A0—A10所指定的單元的內容從數據線IO0~IO7輸出。

WE:寫入控制。在CE為低電平時,WE為低電平把數據線IO0~IO7輸入的數據寫入到A0—A10指定的單元。3.4數據存儲器擴展

(1)61162023/2/2單片機原理及其應用566116的工作方式3.4數據存儲器擴展

2023/2/2單片機原理及其應用57

(2)62646264是8K×8位的靜態隨機存儲器芯片,單一+5V電源,額定功耗200mW,典型存取時間為200ns。28個引腳,雙列直插式封裝。3.4數據存儲器擴展

6264的工作方式2023/2/2單片機原理及其應用58(3)6225662256是32K×8位的靜態隨機存儲器芯片,單一+5V電源,28個引腳,雙列直插式封裝。3.4數據存儲器擴展

62256的工作方式[例]80C31對片外RAM的擴展圖5.8

數據存儲器的基本擴展電路DBABAB2023/2/2單片機原理及其應用603.4.2外部數據存儲器的擴展方法及時序3.4數據存儲器擴展

單片機擴展外部RAM的原理圖

ROM、RAM同時擴展ROMRAM存儲器空間沖突嗎?MOVX指令存放在片外ROM

時,執行過程:(1)從片外ROM

取指令(地址:PC)(2)MOVX指令訪問外RAM(地址:DPTR或P2&R0/R1)2023/2/2單片機原理及其應用633.4數據存儲器擴展

擴展的外部數據存儲器通過地址總線、數據總線和控制總線與MCS-51單片機相連,由P2口提供存儲單元地址的高八位、P0口經過鎖存器提供地址的低8位,P0口也分時提供雙向的數據總線,外部數據存儲器的讀寫由MCS-51單片機的RD(P3.7)和WR(P3.6)控制。顯然,程序存儲器與外部數據存儲器使用同一地址總線,它們的地址空間是完全重疊的,但由于單片機訪問外部程序存儲器時,使用PSEN控制對外部程序存儲器單元的讀取操作,即使程序存儲器和數據存儲器的單元地址完全相同,也不會造成訪問沖突。

MCS-51單片機的外部數據存儲器的最大尋址空間為64K,即0000~0FFFFH。由于MCS-51單片機的外部數據存儲器和外部I/O口是統一編址的,它們共同占用這一地址空間。2023/2/2單片機原理及其應用64

讀取外部數據存儲器由下列指令實現:

MOVXA,@DPTR或MOVXA,@Ri。

CPU執行這種指令需要2個機器周期,第1個機器周期CPU從程序存儲器中取指令,第2個機器周期CPU執行指令,讀取數據存儲器的指定單元的內容。在讀取周期中,P2口輸出外部數據存儲器單元地址的高八位(A15~A8),P0口輸出單元地址的低八位(A7~A0)。3.4數據存儲器擴展2023/2/2單片機原理及其應用65

MCS-51單片機讀外部數據存儲器的時序8.4數據存儲器擴展

2023/2/2單片機原理及其應用66MCS-51單片機寫外部數據操作過程與的讀周期類似。外部數據存儲器寫入操作由下列指令實現:MOVX@DPTR,A或MOVX@Ri,A。8.4數據存儲器擴展

MCS-51單片機寫外部數據存儲器的時序2023/2/2單片機原理及其應用673.4.3靜態RAM擴展電路(一)單片靜態RAM芯片的擴展(1)采用6264為MCS-51單片機擴展8K外部數據存儲器3.4數據存儲器擴展

2023/2/2單片機原理及其應用683.4數據存儲器擴展

若默認×為0,用6264擴展的8K外部數據存儲器地址范圍是:0000~1FFFH。8K外部數據存儲器地址分析:2023/2/2單片機原理及其應用69

(2)單片機外部RAM的使用例1把系統中的0250H單元的內容轉存到單片機內部RAM的20H單元。例2單片機內部RAM的寄存器R3的內容轉存到系統中的1000H單元。

3.4數據存儲器擴展

2023/2/2單片機原理及其應用70采用線選法為80C51擴展24K外部數據存儲器的電路

3.4數據存儲器擴展

(二)多片靜態RAM芯片的擴展(1)線選法2023/2/2單片機原理及其應用713.4數據存儲器擴展

24K外部數據存儲器地址分析:2023/2/2單片機原理及其應用72

系統的外部數據存儲器的24K地址空間分配為:

IC3:C000~DFFFH;

IC4:A000~BFFFH;

IC5:6000~7FFFH。線選法的優點是電路連接簡單,產生片選信號時不必另加其他邏輯元件,但是,這種方法導致存儲器芯片的地址空間是不連續的,不能充分地利用存儲空間,擴展的存儲器容量有限,3.4數據存儲器擴展

2023/2/2單片機原理及其應用73

(2)譯碼器譯碼法

3.4數據存儲器擴展

采用譯碼器譯碼方法為80C51擴展32K外部數據存儲器的電路

2023/2/2單片機原理及其應用743.4數據存儲器擴展

32K外部數據存儲器地址分析:2023/2/2單片機原理及其應用75

譯碼器譯碼方法采用譯碼電路把存儲器的地址空間劃分為若干塊,可以擴展多個芯片,并且能充分地利用地址空間,使擴展的存儲器地址空間連續,適合于多芯片擴展的復雜系統。在實際擴展外部數據存儲器時,根據應用系統容量要求選擇靜態RAM芯片時,在滿足容量要求時盡可能選擇大容量芯片,以減少芯片數量,提高系統的可靠性。3.4數據存儲器擴展

2023/2/2單片機原理及其應用768.5.1E2PROM芯片

E2PROM為電擦除可編程的ROM,可以和EPROM芯片一樣用于擴展程序存儲器。由于這種芯片在應用系統中可以在線改寫,并且在斷電狀態下保持數據不變,也可以用于擴展外部數據存儲器,用來存儲參數,在智能儀器儀表、控制裝置、開發裝置中被廣泛應用。

8.5E2PROM的使用

2023/2/2單片機原理及其應用77

(1)對硬件電路沒有特殊要求,操作使用簡單;(2)不須設置單獨的擦除操作,可在寫入的過程中自動擦除。但擦抹時間較長,約需10ms左右,因此,寫入數據時應保證有足夠的寫入時間。有的E2PROM芯片設有寫入結束標志可供中斷或查詢。(3)E2PROM芯片有并行總線傳輸和采用串行數據傳送2種類型。串行E2PROM芯片具有體積小、成本低、電路連接簡單、占用系統地址線和數據線少的優點,但數據傳送速率較低。(4)在應用中,E2PROM芯片可作為程序存儲器使用,也可作為數據存儲器使用。8.5E2PROM的使用

E2PROM芯片的特點:2023/2/2單片機原理及其應用78

常見的E2PROM典型產品型號(Intel公司)有2816/2816A(2K×8)、2817/2817A(2K×8)、2864A(8K×8)等。2816/2816A、2817/2817A與2716和6116管腳兼容,2864A與2764和6264管腳兼容。8.5E2PROM的使用

2816/2816A

2817/2817A2864/2864A2023/2/2單片機原理及其應用79E2PROM的主要性能8.5E2PROM的使用

2023/2/2單片機原理及其應用80

(1)2816A 2816A的工作方式除了全片擦除方式外,其他與6116工作方式基本相同。2816A的工作方式8.5E2PROM的使用

2023/2/2單片機原理及其應用81(2)2817A

2817A的工作方式8.5E2PROM的使用

2817A有3種工作方式,為2817A的準備好與忙狀態輸出引腳,R/B=1,表示2817A處于空閑狀態,R/B=0,表示2817A正在進行寫入操作。

R/B為漏極開路輸出,應用時應加上拉電阻。2023/2/2單片機原理及其應用82

當為高電平時,2817A處于低功耗維持方式,此時,數據總線和呈高阻狀態。

2817A的讀操作方式與EPROM的讀出操作相同。在進行字節寫入時,當CPU發出寫入命令后,2817A便鎖存地址、數據和控制信號,從而啟動一次寫操作。在寫入操作期間,輸出低電平,此時2817A的數據總線呈高阻狀態,因此,允許CPU在此期間執行其他任務。 一旦一次字節寫入操作完畢,2817A便將置為高電平,以此通知CPU可以進行新的讀寫操作。8.5E2PROM的使用2023/2/2單片機原理及其應用83

(3)2864A2864A有4種工作方式。8.5E2PROM的使用

當CE為高電平時,2864A處于低功耗維持方式,此時,數據總線輸出呈高阻狀態,其狀態與EPROM和SRAM的維持方式相同

2864A的讀出方式與EPROM和SRAM的讀出方式相同。2023/2/2單片機原理及其應用842864A具有2種寫入方式:字節寫入和頁面寫入。

2864A提供了1個16個單元的頁暫存器,并把整個E2PROM存儲器陣列以16個單元為1頁的格式劃分為512頁面。頁面地址由2864A的地址線A12~A4確定,A3~A0用來確定頁暫存器的16個單元中的被操作單元。 頁面寫入分2步進行:首先,在CPU指令控制下,把數據寫入頁暫存器,即頁裝載。然后,2864A在其內部時序管理之下,把頁暫存器的內容送入指定的E2PROM單元中,即頁面存儲。8.5E2PROM的使用

2023/2/2單片機原理及其應用85

進行頁裝載操作時,對于選中的2864A芯片(),2864A在的下跳沿鎖存CPU提供的地址信息A12~A0,在的上升沿時鎖存數據總線的內容。從的下跳沿開始,用戶的寫入程序應當在有效的20內向寫暫存器寫入數據,并按照這個時間要求把數據逐一送入頁暫存器。寫入頁暫存器的過程是重復進行的,直到寫完一頁的16個單元為止。寫入頁暫存器的過程相當于給用戶的寫入程序提供了一個20寬度的窗口時間,寫入程序必須保證在這個窗口時間內完成一個字節的寫入。8.5E2PROM的使用

2023/2/2單片機原理及其應用86

如果超出窗口時間20而CPU仍然沒有寫入下一個數據時,2864A將完成本次頁裝載操作,自動地進入頁面存儲操作周期。另外,由于2864A的E2PROM是按頁配置的,在對頁暫存器的每一個完整的裝載過程中,2864A地址的高八位A12~A4必須保持不變,以保證在本次裝載過程是對相同的頁操作。

2864A的頁面存儲操作是在頁裝載操作完成之后,即20的窗口定時時間超出后自動進入的。其全部過程是由內部自動完成的。

8.5E2PROM的使用

2023/2/2單片機原理及其應用87

頁面存儲操作時,首先把選中的頁的內容擦除,然后,把頁暫存器的內容作為新的數據送入E2PROM指定的頁。在頁面存儲操作過程中,2864A所有的控制信號無效,數據總線呈高阻狀態。這樣,2864A在頁面存儲操作時可以使用數據總線傳送其他信息。在此期間,如果對2864A執行讀出操作,讀出內容是最后寫入的字節,但是,它的最高位是原來寫入字節的最高位的反碼,這個反碼會一直保留到頁面存儲操作完成為止。在寫入程序中可以通過以該位為標志查詢本次頁面存儲操作是否結束。8.5E2PROM的使用

2023/2/2單片機原理及其應用882864A的字節寫入方式與2817A相同。實際上,按字節寫入操作僅僅把一個字節寫入頁暫存器,然后進入頁面存儲操作周期,其內部仍然是按頁操作的,但是有效數據為一個字節,其他15個字節的內容的寫入為無效的重復操作。8.5E2PROM的使用

2023/2/2單片機原理及其應用89

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論