第八章MCS-51擴(kuò)展存儲(chǔ)器的設(shè)計(jì).ppt_第1頁(yè)
第八章MCS-51擴(kuò)展存儲(chǔ)器的設(shè)計(jì).ppt_第2頁(yè)
第八章MCS-51擴(kuò)展存儲(chǔ)器的設(shè)計(jì).ppt_第3頁(yè)
第八章MCS-51擴(kuò)展存儲(chǔ)器的設(shè)計(jì).ppt_第4頁(yè)
第八章MCS-51擴(kuò)展存儲(chǔ)器的設(shè)計(jì).ppt_第5頁(yè)
已閱讀5頁(yè),還剩62頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第八章MCS-51擴(kuò)展存儲(chǔ)器的設(shè)計(jì),8.1 MCS-51單片機(jī)系統(tǒng)總線,1. 單片機(jī)系統(tǒng)的擴(kuò)展結(jié)構(gòu) 單片機(jī)系統(tǒng)擴(kuò)展通常采用總線結(jié)構(gòu)形式,圖8.1是典型的MCS-51單片機(jī)系統(tǒng)擴(kuò)展結(jié)構(gòu)。整個(gè)擴(kuò)展系統(tǒng)以單片機(jī)為核心器件,通過(guò)系總線把各個(gè)擴(kuò)展部件聯(lián)系起來(lái),擴(kuò)展內(nèi)容主要包括EPROM、RAM、I/O接口電路和其他數(shù)據(jù)轉(zhuǎn)換接口電路等。因?yàn)楦鱾€(gè)部件的擴(kuò)展是在單片機(jī)芯片之外進(jìn)行的,因此通常把擴(kuò)展的程序存儲(chǔ)器稱(chēng)為外部程序存儲(chǔ)器;而把擴(kuò)展的數(shù)據(jù)存儲(chǔ)器稱(chēng)為外部數(shù)據(jù)存儲(chǔ)器。,圖8.1 MCS-51單片機(jī)系統(tǒng)擴(kuò)展結(jié)構(gòu),2. 單片機(jī)系統(tǒng)擴(kuò)展總線的產(chǎn)生 單片機(jī)系統(tǒng)采用三總線結(jié)構(gòu)。按其功能通常把系統(tǒng)總線分為三類(lèi),即地址總線

2、、數(shù)據(jù)總線和控制總線。單片機(jī)系統(tǒng)三總線結(jié)構(gòu)如圖8.2所示,圖8.2 單片機(jī)系統(tǒng)三總線結(jié)構(gòu),(1)地址總線(Address Bus 縮寫(xiě)為AB) 地址總線主要用于單片機(jī)送出的地址信號(hào),以便對(duì)外部的存儲(chǔ)器單元或I/O端口進(jìn)行操作。地址總線是單向傳送的,只能由單片機(jī)向外發(fā)送。在MCS-51單片機(jī)系統(tǒng)中,地址總線通常由P0口和P2口構(gòu)成。地址總線的數(shù)量取決于外部要訪問(wèn)的存儲(chǔ)器的容量,例如,對(duì)于n根地址線就可以實(shí)現(xiàn)對(duì)2n個(gè)單元進(jìn)行連續(xù)編碼,即可以對(duì)2n個(gè)存儲(chǔ)單元進(jìn)行訪問(wèn),MCS-51單片機(jī)的地址線最多為16根,因此外部存儲(chǔ)器最多可以擴(kuò)展64KB個(gè)單元。,(2)數(shù)據(jù)總線(Data Bus,縮寫(xiě)為DB) 數(shù)

3、據(jù)總線是用于在單片機(jī)與外部存儲(chǔ)器之間或單片機(jī)與I/O端口之間傳送數(shù)據(jù)的通道。單片機(jī)系統(tǒng)數(shù)據(jù)總線通常由P0口來(lái)構(gòu)成,總線的寬度與單片機(jī)的字長(zhǎng)是一致的:例如MCS-51單片機(jī)是8位字長(zhǎng),所以它的數(shù)據(jù)總線的位數(shù)也是8位的。數(shù)據(jù)總線是雙向的,即它可以進(jìn)行兩個(gè)方向數(shù)據(jù)的傳送。,(3)控制總線(Control Bus,縮寫(xiě)為CB) 控制總線實(shí)際上是一組控制信號(hào)線,它包括單片機(jī)發(fā)出的,以及外部設(shè)備送給單片機(jī)的信號(hào)線。對(duì)某一條控制信號(hào)線而言,它是單方向傳送的,但是由不同方向的控制信號(hào)線組合成的控制總線則表現(xiàn)為雙向傳送性。系統(tǒng)擴(kuò)展用的控制線有 ALE、 、 、 、 。 ALE:用于鎖存P0口輸出的低8位地址的鎖

4、存控制。通常,ALE接在鎖存器的控制端,在P0口輸出地址期間控制鎖存器來(lái)鎖存地址數(shù)據(jù);ALE端輸出的脈沖信號(hào)也可以作為單片機(jī)系統(tǒng)中其它芯片的時(shí)鐘源。 :用于選擇片內(nèi)或片外程序存儲(chǔ)器。當(dāng) 0時(shí),單片機(jī)只能對(duì)外部程序存儲(chǔ)器進(jìn)行訪問(wèn),當(dāng) 1時(shí),單片機(jī)既能訪問(wèn)片內(nèi)程序存儲(chǔ)器,也能訪問(wèn)片外程序存儲(chǔ)器:?jiǎn)纹瑱C(jī)依據(jù)程序地址來(lái)確定是對(duì)片內(nèi)程序存儲(chǔ)器進(jìn)行訪問(wèn),還是對(duì)片外程序存儲(chǔ)器進(jìn)行訪問(wèn)。因此,對(duì)片內(nèi)無(wú)程序存儲(chǔ)器的單片機(jī),必須使接低電平。,:用于外部程序存儲(chǔ)器的讀選通控制。 :用于外部數(shù)據(jù)存儲(chǔ)器的讀選通控制。 :用于外部數(shù)據(jù)存儲(chǔ)器的寫(xiě)選通控制。由于單片機(jī)系統(tǒng)采用了總線結(jié)構(gòu)形式,因此大大減少了單片機(jī)系統(tǒng)中傳輸線的

5、數(shù)目,從而提高了系統(tǒng)的可靠性,同時(shí)也增加了系統(tǒng)的靈活性。此外,總線結(jié)構(gòu)的使用,也使得單片機(jī)系統(tǒng)的擴(kuò)展易于實(shí)現(xiàn)。各種功能部件只要符合總線規(guī)范就可以很方便地接入單片機(jī)系統(tǒng),實(shí)現(xiàn)單片機(jī)應(yīng)用系統(tǒng)功能的擴(kuò)展。,3. 地址鎖存器 MCS-51單片機(jī)的P0口是地址線/數(shù)據(jù)線分時(shí)復(fù)用的,實(shí)現(xiàn)這一功能需要引入地址鎖存器。常用的地址鎖存器的芯片一般有兩類(lèi):一類(lèi)是8D觸發(fā)器,如74LS273、7474LS377等,另一類(lèi)是位鎖存器,如74LS373、8282等。圖8.3和表8.1、8.2分別給出了74LS273、74LS373的引腳和它們的邏輯功能狀態(tài)。,圖8.3 常用的地址鎖存器,表8.1 74LS273功能表,

6、注:表示無(wú)關(guān);表示脈沖上升沿起作用,表8.2 74LS373功能表,注:表示無(wú)關(guān),74LS273內(nèi)部由8個(gè)邊沿觸發(fā)的D觸發(fā)器組成,在時(shí)鐘信號(hào)的正跳變完成對(duì)輸入信號(hào)的鎖存。但MCS-51單片機(jī)中的ALE是高電平有效,而在ALE的后沿應(yīng)完成地址鎖存,因此應(yīng)將ALE通過(guò)反向器后再加到鎖存器的時(shí)鐘端。注意74LS273是帶清除端的,用作地址鎖存時(shí),應(yīng)將清除端CLR接高電平。,74LS373是高電平觸發(fā)選通,當(dāng)使能端有效時(shí),輸出直接跟隨輸入變化,當(dāng)使能端由高變低時(shí),才將輸入狀態(tài)鎖存直到下一次使能信號(hào)變高為止。因此在選用74LS373作單片機(jī)地址鎖存時(shí),可直接將單片機(jī)的ALE信號(hào)加到它們的使能端。,8.2

7、 外部存儲(chǔ)器的操作時(shí)序,1. 程序存儲(chǔ)器的讀操作時(shí)序 圖8.4為單片機(jī)訪問(wèn)外部程序存儲(chǔ)器的操作時(shí)序圖,分析該圖知: 單片機(jī)的ALE是以固定的周期輸出脈沖,在每個(gè)機(jī)器周期的S1P2S2P1及S4P2S5P1(S1P2是指狀態(tài)周期S1的P2拍,S2P1是指狀態(tài)周期S2的P1拍)時(shí)各輸出一個(gè)脈沖,它可作為地址鎖存器的鎖存選通信號(hào),每個(gè)機(jī)器周期輸出2個(gè)ALE脈沖 在每個(gè)機(jī)器周期的第一個(gè)ALE脈沖有效期間(高電平期間),CPU將把P0口輸出的低8 位地址鎖進(jìn)地址鎖存器中(ALE為地址鎖存器的鎖存選通信號(hào)),在此期間P2口輸出的高8位地址始終保持有效。, 當(dāng)0(有效)時(shí)系統(tǒng)將由P2口和P0口指定的外部程序

8、存儲(chǔ)器單元中的指令經(jīng)P0口讀入單片機(jī)中。 若為雙字節(jié)指令則將開(kāi)始下一個(gè)指令字節(jié)的讀取。其讀取過(guò)程除CPU會(huì)自動(dòng)修改P0口的地址使之指向下一個(gè)存儲(chǔ)單元外,其余過(guò)程與讀取第一字節(jié)的過(guò)程是相似的。若為單字節(jié)指令則第一個(gè)機(jī)器周期中的第二個(gè)ALE無(wú)效。系統(tǒng)將在下一個(gè)機(jī)器周期再開(kāi)始下一條指令字節(jié)的讀取操作。 在整個(gè)讀取指令期間,、均處于無(wú)效狀態(tài)。,圖8.4 程序存儲(chǔ)器的讀操作時(shí)序,2. 數(shù)據(jù)存儲(chǔ)器的讀操作時(shí)序 圖8.5為單片機(jī)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器的操作時(shí)序圖,分析該圖可知: 第一個(gè)機(jī)器周期為單片機(jī)的取指令周期,其操作過(guò)程與前面所講的對(duì)程序存儲(chǔ)器的操作過(guò)程是完全相同的。 第二個(gè)機(jī)器周期為單片機(jī)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)

9、器的周期,此時(shí)ALE也是以固定的周期輸出脈沖,在第二個(gè)機(jī)器周期的S1P2S2P1 ALE脈沖有效期間,CPU將從P0口輸出的外部數(shù)據(jù)存儲(chǔ)器的低8位地址鎖進(jìn)地址鎖存器中(ALE作為地址鎖存器的鎖存選通信號(hào)),在此期間P2口輸出的高8位地址始終保持有效。 當(dāng)0時(shí)系統(tǒng)將由P2口和P0口指定的外部數(shù)據(jù)存儲(chǔ)器單元中的數(shù)據(jù)經(jīng)P0口讀入單片機(jī)中。只要將改為,上述過(guò)程就是數(shù)據(jù)存儲(chǔ)器的寫(xiě)操作時(shí)序。 在對(duì)外部數(shù)據(jù)存儲(chǔ)器操作期間,一直處于無(wú)效狀態(tài)。,圖8.5 數(shù)據(jù)存儲(chǔ)器的讀操作時(shí)序,8.3 單片機(jī)對(duì)存儲(chǔ)器片選的實(shí)現(xiàn),MCS-51單片機(jī)實(shí)現(xiàn)片選的常用方法有兩種:線選法和譯碼法。,1. 線選法 線選法是直接利用單片機(jī)的

10、I/O口線來(lái)實(shí)現(xiàn)的,通常是利用P2口中沒(méi)有作為高位地址線使用的口線來(lái)實(shí)現(xiàn),將某根P2口線連接至待片選芯片的端即可。這種方法的優(yōu)點(diǎn)是易于實(shí)現(xiàn),不需增添新的器件。缺點(diǎn)是因?yàn)镮/O口的線的使用效率較低,單片機(jī)的一根I/O口線最多只能對(duì)兩片外圍芯片實(shí)現(xiàn)片選,另外還有可能使外部存儲(chǔ)器地址出現(xiàn)重疊或不連續(xù)現(xiàn)象。 2. 譯碼法 譯碼法是利用單片機(jī)多余的I/O口線外加譯碼器來(lái)實(shí)現(xiàn)的。這種方法的優(yōu)點(diǎn)是I/O口線的利用率較高。當(dāng)采用3-8譯碼器時(shí),利用3根I/O口線可以對(duì)8片外圍芯片實(shí)現(xiàn)片選,而且地址通常是連續(xù)的,不會(huì)出現(xiàn)地址重疊現(xiàn)象,其主要缺點(diǎn)是需要增添譯碼器。,常用的譯碼器有: 74LS138為3-8譯碼器、

11、74LS139為雙2-4譯碼器。 74LS138有3個(gè)數(shù)據(jù)輸入端,經(jīng)過(guò)譯碼后在輸出端產(chǎn)生8選1的片選信號(hào),可以實(shí)現(xiàn)對(duì)8片外圍芯片實(shí)現(xiàn)片選。 74LS138的引腳如圖8.6(a)所示,其邏輯功能見(jiàn)表8.3。,(a)74LS138 (b)74LS139 圖8.6 常用譯碼器,74LS139為雙2-4譯碼器,其中含有兩個(gè)完全獨(dú)立的譯碼器, 每個(gè)譯碼器有2個(gè)輸入端,經(jīng)過(guò)譯碼后在輸出端產(chǎn)生4選1的片選 信號(hào),兩個(gè)譯碼器一起作用時(shí)也可以實(shí)現(xiàn)對(duì)8片外圍芯片實(shí)現(xiàn)片選。 74LS139的引腳如圖8.6(b)所示,其邏輯功能見(jiàn)表8.4。,表8.4 74LS139功能表,程序存儲(chǔ)器又稱(chēng)為只讀存儲(chǔ)器ROM(Read

12、Only Memory),它表示信息一旦寫(xiě)入芯片就不能隨意更改,在程序運(yùn)行時(shí)只能讀出不能寫(xiě)入,即使掉電存儲(chǔ)器芯片中的信息也不會(huì)丟失。程序存儲(chǔ)器常見(jiàn)的類(lèi)型有: 1. 掩膜ROM 其編程工作是由ROM制造廠家來(lái)完成的,即它是在ROM芯片生產(chǎn)廠家通過(guò)掩膜工藝來(lái)實(shí)現(xiàn)編程的。在大批量生產(chǎn)單片機(jī)應(yīng)用系統(tǒng)的情況下,采用ROM芯片有利于降低成本。 2. 一次性可編程PROM 這種芯片的編程可由用戶(hù)借助仿真機(jī)來(lái)進(jìn)行,但只能進(jìn)行次寫(xiě)入操作,一旦寫(xiě)入錯(cuò)誤,芯片是不能再修改的。因此這種芯片使用起來(lái)很不方便。,8.4 程序存儲(chǔ)器概述,3. 可重復(fù)擦寫(xiě)的EPROM 這種芯片的編程可由用戶(hù)多次重復(fù)進(jìn)行,克服了只能進(jìn)行一次寫(xiě)

13、操作的缺點(diǎn),因此是目前應(yīng)用較廣泛的一種芯片。它的缺點(diǎn)是相對(duì)不同的EPROM型號(hào)要求給出不同的寫(xiě)入電壓,另外要由紫外線才能對(duì)它進(jìn)行擦除,在芯片的中央有一個(gè)小窗口,通過(guò)對(duì)這個(gè)窗口照射紫外線可以擦除原有信息,所以程序?qū)懞煤笠貌煌该鞯臉?biāo)簽貼封這個(gè)窗口,以避免因陽(yáng)光中的紫外線的照射而破壞芯片中的程序。因此使用起來(lái)也顯得還是不能盡如人意。 4. 電擦除可讀、寫(xiě)E2PROM 這種芯片在5V工作電壓下即可實(shí)現(xiàn)對(duì)芯片內(nèi)程序的寫(xiě)入或擦除,故它既可作為程序存儲(chǔ)器使用,又可作為數(shù)據(jù)存儲(chǔ)器使用,所以愈來(lái)愈受到人們的關(guān)注。它的主要缺點(diǎn)是價(jià)格較貴、寫(xiě)入速度較慢。,8.5 常用程序存儲(chǔ)器,1. EPROM (1)EPROM

14、的型號(hào)及引腳 常用EPROM芯片的型號(hào)有:2716(2KB)、2732(4KB)、2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB)。在讀方式時(shí)它們都采用單一的+5V電源供電,雙列直插式封裝。 圖8.7給出常用EPROM芯片27128(16KB)和27512(64KB)的引腳圖。,圖8.7 兩種常用EPROM的引腳圖,各引腳的功能是: A0Ai:地址輸入線 (i=1015,i10對(duì)應(yīng)2716,i15對(duì)應(yīng)27512)。 D0D7:三態(tài)數(shù)據(jù)輸出端。 :片選端,低電平有效。 :輸出允許端。 :編程脈沖輸入端。 VPP:編程電壓輸入端,不同型號(hào)的EPROM所加電

15、壓值不同。 VCC:電源端。 GND:接地端。,(2)EPROM的工作方式 27128共有五種工作方式,各種工作方式的基本情況見(jiàn)表8.5。表中VIL為T(mén)TL低電平,VIH為高電平,Vcc為+5V,Vpp*為EPROM編程電壓,DOUT為數(shù)據(jù)輸出,DIN為數(shù)據(jù)輸入。 讀方式。一般系統(tǒng)中的EPROM都工作在這種工作方式下,進(jìn)入這種工作方式的條件是使片選控制線和輸出允許控制均處于有效狀態(tài)。 維持方式。當(dāng)片選控制信號(hào)高電平(無(wú)效狀態(tài))時(shí),芯片進(jìn)入維持方式,這時(shí)輸出處于高阻抗的懸浮狀態(tài),不占用系統(tǒng)數(shù)據(jù)線。 編程方式。此時(shí)需在編程電壓輸入端VPP加上符合規(guī)定的電壓,在端輸入編程脈沖,于是就可將程序?qū)懭氲紼

16、PROM中。, 編程校核方式。在編程電壓輸入端VPP加上符合規(guī)定的電壓,再?gòu)男酒凶x出已編程固化好的內(nèi)容,并將其與剛才寫(xiě)入的內(nèi)容進(jìn)行比較,用來(lái)判斷寫(xiě)入的內(nèi)容是否正確。 編程禁止方式。此時(shí)芯片的片選及輸出允許端均處于無(wú)效狀態(tài),輸出呈現(xiàn)高阻態(tài)。,表8.5 27128的工作方式選擇,2. E2PROM E2PROM是電可擦除、可編程的半導(dǎo)體存儲(chǔ)器。在+5V電壓下就可進(jìn)行讀寫(xiě)操作,對(duì)編程脈沖寬度一般也沒(méi)有特殊的要求,也不需要專(zhuān)門(mén)的擦除器(如紫外線燈)。所以E2PROM實(shí)際上是一種特殊的可讀可寫(xiě)的存儲(chǔ)器,它既可作程序存儲(chǔ)器使用,也可作數(shù)據(jù)存儲(chǔ)器使用。把程序存儲(chǔ)器E2PROM連在單片機(jī)系統(tǒng)總線上就可以進(jìn)行

17、在線改寫(xiě)。即使突然掉電E2PROM中的內(nèi)容也不會(huì)丟失。 (1) E2PROM芯片的型號(hào)及引腳 常用E2PROM芯片的型號(hào)有:2817A(2KB)、2864A(8KB)。它們都采用單一的5V電源供電,雙列直插式封裝。 E2PROM 2817A、2864A的引腳如圖8.8所示。,各引腳功能是: A0Ai:地址輸入線,i=10(對(duì)2817A)、i12(對(duì)2864A)。 D0D7:雙向三態(tài)數(shù)據(jù)輸入輸出線。 :寫(xiě)選通信號(hào)輸入端,低電平有效。 :片選端,低電平有效。 :讀選通信號(hào)輸入端,低電平有效。 :擦、寫(xiě)完畢聯(lián)絡(luò)信號(hào),在擦、寫(xiě)操作期間,腳為低 電平,當(dāng)擦、寫(xiě)完畢時(shí),腳為高電平。 Vcc:電源端。 GN

18、D:接地端。,圖8.8 兩種常用的E2PROM引腳圖,(2)E2PROM的工作方式 2817A共有三種工作方式,各種工作方式的基本情況見(jiàn)表8.6。, 讀方式。一般系統(tǒng)中的E2PROM都工作在這種工作方式下,進(jìn)入這種工作方式的條件是使片選控制端和讀選通信號(hào)輸入端均處于有效狀態(tài),內(nèi)部數(shù)據(jù)緩沖器被打開(kāi),此時(shí)可對(duì)E2PROM進(jìn)行讀操作。 寫(xiě)方式。當(dāng)2817A接收到從CPU發(fā)來(lái)的地址、數(shù)據(jù)和寫(xiě)控制信號(hào)后,便啟動(dòng)內(nèi)部電路對(duì)該地址單元進(jìn)行寫(xiě)操作,此時(shí)RDY/輸出低電平。大約16ms后寫(xiě)操作完成,即一個(gè)字節(jié)寫(xiě)操作完成,此時(shí)RDY/輸出高電平。2817A在寫(xiě)入一個(gè)字節(jié)之前會(huì)自動(dòng)地擦除該單元的內(nèi)容。 維持方式。當(dāng)

19、片選控制端為高電平(無(wú)效狀態(tài))時(shí),2817A進(jìn)入低功耗的維持方式,這時(shí)輸出端處于高阻抗的懸浮狀態(tài),E2PROM芯片電流從140mA降至維持電流60mA。,8.6 程序存儲(chǔ)器的擴(kuò)展舉例,1. 單片程序存儲(chǔ)器擴(kuò)展 當(dāng)單片機(jī)片內(nèi)無(wú)程序存儲(chǔ)器或片內(nèi)程序存儲(chǔ)器的容量不夠用時(shí)要進(jìn)行程序存儲(chǔ)器的擴(kuò)展。在進(jìn)行系統(tǒng)擴(kuò)展時(shí)主要依據(jù)系統(tǒng)程序的容量來(lái)選擇存儲(chǔ)器容量,當(dāng)然還要留有一定的余量。事實(shí)上2716、2732等小容量的程序存儲(chǔ)器已經(jīng)很少有人使用了,人們更愿意使用27128(16KB)、27256(32KB)、27512(64KB)等容量較大的程序存儲(chǔ)器,因?yàn)槿萘康拇笮?duì)存儲(chǔ)器價(jià)格的影響較小,卻給使用者日后系統(tǒng)的修

20、改、擴(kuò)充帶來(lái)了很大的便利。 例8.1 8031與27128的接口電路。 擴(kuò)展電路如圖8.9所示。,圖8.9 8031與27128的接口電路,由于系統(tǒng)中只有一片外圍芯片,故片選端CE直接接地; 27128的輸出允許端OE接單片機(jī)的PSEN; 對(duì)8031而言,其EA端必須接地; 8031的ALE作為74LS373的鎖存選通信號(hào); P0.0P0.7經(jīng)地址鎖存器74LS373為27128提供低8位的地址線; P0.0P0.7還與27128的D0D7相連,為27128提供8位數(shù)據(jù)通道; P2.0P2.5為27128提供高6位的地址線。 當(dāng)P0.0P0.7和P2.0P2.5的值由全0變化至全1時(shí),2712

21、8的地址線A0A13也跟著作相應(yīng)的變化, 即:最低地址:A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0=0000000000 0000)。 最高地址: (A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0=11111111111 111)。,由于P2.7、P2.6的狀態(tài)與該芯片的尋址無(wú)關(guān),所以P2.7、P2.6可任意狀態(tài)“”。于是就可得到相應(yīng)的地址范圍: 0000H3FFFH 或 4000H7FFFH 或 8000H0BFFFH 或 0C000H0FFFFH 這四個(gè)地址范圍指向的是程序存儲(chǔ)器的同一個(gè)地址空間,之所以會(huì)出現(xiàn)四個(gè)地址范圍是因?yàn)?/p>

22、8031單片機(jī)的P2.6、P2.7未使用而引起的,這就是所謂的地址重疊現(xiàn)象。,例8.2 8031與27512的接口電路。 擴(kuò)展電路如圖8.10所示。該電路接線與圖8.9的區(qū)別有兩點(diǎn):其一是再增加2根地址線,即它共使用了16根地址線;其二是采用了74LS273作為地址鎖存器,該鎖存器的工作情況與74LS373的區(qū)別是采用低電平作為地址鎖存器的選通信號(hào)。 由電路接線可知,P0.0P0.7及P2.0P2.7全部16根地址線都用上了,可尋址的范圍達(dá)21664KB,其地址范圍是:0000H0FFFFH。從而用一片程序存儲(chǔ)器實(shí)現(xiàn)了64KB的擴(kuò)展,且沒(méi)有地址重疊現(xiàn)象。,圖8.10 8031與27512的接口

23、電路,例8.3 8031與2864A的接口電路。 由于E2PROM具有電擦除、編程的特性,因而得到了廣泛地應(yīng)用。 圖8.11是2864A的擴(kuò)展電路。由圖8.11可見(jiàn),其接線情況與EPROM的接線完全類(lèi)似,雖然系統(tǒng)中只有一片外圍芯片,片選端可直接接地,但考慮到一般情況,這里還是將片選端接P2.7,由P2.7來(lái)完成對(duì)2864A的片選; 2864A的輸出允許端 接 ; 對(duì)8031而言,其 端必須接地; ALE作為74LS373的鎖存選通信號(hào); P0.0P0.7經(jīng)地址鎖存器74LS373為2864A提供低8位的地址; P0.0P0.7還與2864A的D0D7相連,為2864A提供8位數(shù)據(jù)通道; P2.

24、0P2.4為2864A提供高5位的地址。,由電路接線可知,2864A的地址范圍是: 0000H1FFFH 或 2000H3FFFH 或 4000H5FFFH 或 6000H7FFFH 造成地址重疊現(xiàn)象的原因是因?yàn)楫?dāng)前系統(tǒng)中P2.5、P2.6未使用而引起的。,圖8.11 8031與2864A的接口電路,2. 多片程序存儲(chǔ)器的擴(kuò)展電路 例如使用四片27128芯片擴(kuò)展程序存儲(chǔ)器系統(tǒng),擴(kuò)展電路如圖8.12所示。,由于系統(tǒng)中有四片EPROM芯片,故各片的片選信號(hào)可由2-4譯碼器74LS139的輸出信號(hào)Y0Y1Y2Y3分別提供;8031的噴PSEN同時(shí)接在四片27128的輸出允許OE端,但由于譯碼器的作用

25、使得任何時(shí)候都只有一片EPROM被選中,故任一時(shí)刻PSEN只對(duì)其中一片EPROM起作用。 對(duì)8031而言,其EA端必須接地;ALE則作為74LS273的鎖存選通信號(hào);P0.0P0.7經(jīng)地址鎖存器74LS373同時(shí)為四片27128提供低8位的地址、P0.0P0.7還同時(shí)與四片27128的D0D7相連,為27128提供8位數(shù)據(jù)通道;P2.0P2.5同時(shí)為四片27128提供高6位的地址;P2.6和P2.7作為2-4譯碼器74LS139的輸入信號(hào)。,圖8.12 8031擴(kuò)展多片EPROM的接口電路,由電路接線可知: 當(dāng)P2.6、P2.700H時(shí)選中了27128,此時(shí)P0.0P0.7、P2.0P2.5從

26、全0變化至全1時(shí)可得27128的地址范圍是0000H3FFFH; 當(dāng)P2.6、P2.701H時(shí)選中了27128,當(dāng)P0.0P0.7、P2.0P2.5從全0變化至全1時(shí),可得27128的地址范圍是4000H7FFFH; 同理可知當(dāng)P2.6、P2.710H時(shí)選中了27128,其相應(yīng)的地址范圍是為8000H0BFFFH; 當(dāng)P2.6、P2.711H時(shí)選中了27128,相應(yīng)的地址范圍是:為0C000H0FFFFH。這里用四片27128實(shí)現(xiàn)了外擴(kuò)64KB的外部程序存儲(chǔ)器。,存儲(chǔ)器是單片機(jī)系統(tǒng)中使用最多的外擴(kuò)芯片,對(duì)MCS-51單片機(jī)而言,由于程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器在物理空間上的各自獨(dú)立性,使得兩者的擴(kuò)展

27、方法略有不同。,8.7 數(shù)據(jù)存儲(chǔ)器概述,數(shù)據(jù)存儲(chǔ)器又稱(chēng)為隨機(jī)存儲(chǔ)器(Random Access Memory)簡(jiǎn)稱(chēng)RAM,它用于存放可隨機(jī)讀、寫(xiě)的數(shù)據(jù),與程序存儲(chǔ)器最大的區(qū)別是掉電后其中的信息將立即消失。按半導(dǎo)體制作工藝,RAM可分為MOS型和雙極型兩種,MOS型的RAM集成度高、功耗低、價(jià)格也較便宜,但工作速度較慢。而雙極型的特點(diǎn)則正好與MOS型的相反。在單片機(jī)應(yīng)用系統(tǒng)中大多數(shù)是MOS型數(shù)據(jù)存儲(chǔ)器,它們的輸入輸出信號(hào)能與TTL電路兼容,這給系統(tǒng)擴(kuò)展中信號(hào)線的連接帶來(lái)了很大的便利。 8031單片機(jī)內(nèi)部有128B的用戶(hù)RAM區(qū),CPU對(duì)內(nèi)部RAM有豐富的操作指令。但是在用于實(shí)時(shí)數(shù)據(jù)采集和處理中,

28、僅靠片內(nèi)提供的128B的數(shù)據(jù)存儲(chǔ)器往往不夠用,必須擴(kuò)展外部數(shù)據(jù)存儲(chǔ)器。常用的有靜態(tài)數(shù)據(jù)存儲(chǔ)器SRAM和動(dòng)態(tài)數(shù)據(jù)存儲(chǔ)器DRAM。這里主要討論靜態(tài)RAM與MCS-51單片機(jī)的接口情況。,8.8 常用數(shù)據(jù)存儲(chǔ)器,1. RAM芯片的型號(hào)及引腳 常用RAM芯片的型號(hào)有:6116(2KB)、6264(8KB)、62128(16KB)、62256(32KB)。 它們都采用單一的+5V電源供電,雙列直插式封裝。這里給出常用的RAM芯片6264、62256的引腳圖,如圖8.13所示,各引腳功能如下: A0Ai:地址輸入端(i=1014)。 D0D7:雙向三態(tài)數(shù)據(jù)端。 :片選信號(hào)輸入端,低電平有效。 :讀選通信號(hào)

29、輸入線,低電平有效。 :寫(xiě)允許信號(hào)輸入線,低電平有效。 VCC:電源端。 GND:接地端。,圖8.13 數(shù)據(jù)存儲(chǔ)器引腳圖,2. RAM的工作方式 6264共有四種工作方式,分別為讀、寫(xiě)、禁止輸出和選中工作方式,見(jiàn)表8.7。,表8.7 6264的工作方式選擇,6264芯片還具有掉電保護(hù)功能。這是由于6264芯片設(shè)有一個(gè)CS引腳,通常情況下接+5V電源,當(dāng)?shù)綦姇r(shí),電壓下降到小于或等于2V過(guò)程中,CS引腳立刻變?yōu)榈碗娖绞筊AM中的數(shù)據(jù)保持,因此在Vcc2V時(shí),6264芯片就進(jìn)入數(shù)據(jù)保護(hù)狀態(tài)。根據(jù)這一特點(diǎn),在電源掉電檢測(cè)和切換電路的控制下,當(dāng)檢測(cè)到電源電壓下降到小于芯片最低工作電壓時(shí),將6264切換到

30、由鋰電池提供電源的狀態(tài),從而實(shí)現(xiàn)了掉電時(shí)的數(shù)據(jù)保護(hù)功能。,8.9 數(shù)據(jù)存儲(chǔ)器擴(kuò)展舉例,在編程時(shí)要注意到,單片機(jī)是利用MOV類(lèi)指令來(lái)訪問(wèn)單片機(jī)片內(nèi)數(shù)據(jù)存儲(chǔ)器;利用MOVX類(lèi)指令實(shí)現(xiàn)對(duì)外部數(shù)據(jù)儲(chǔ)器的訪問(wèn)操作。單片機(jī)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器的指令有以下四條:,MOVX A,Ri ;(i=0、1) MOVX Ri,A ;(i=0、1) MOVX A,DPTR MOVX DPTR,A 其中前兩條指令是以單片機(jī)P2口的內(nèi)容為外部數(shù)據(jù)存儲(chǔ)器隱含地提供高8位地址,而Ri則為外部數(shù)據(jù)存儲(chǔ)器提供低8位地址。 1. 采用線選法擴(kuò)展三片6264的電路 數(shù)據(jù)存儲(chǔ)器的擴(kuò)展電路如圖8.14所示。,圖8.14 采用線選法擴(kuò)展3片6

31、264的電路,由于系統(tǒng)中有三片6264 RAM芯片,這里采用線選法對(duì)各片數(shù)據(jù)存儲(chǔ)器進(jìn)行片選,各片的片選信號(hào)分別由8031單片機(jī)的P2.5、P2.6和P2.7提供;,8031的 同時(shí)接在三片6264讀選通輸入線 端; 8031的 同時(shí)接在三片6264寫(xiě)允許輸入線 端; 8031的P0.0P0.7經(jīng)地址鎖存器74LS373同時(shí)為三片6264提供低8位的地址、P0.0P0.7還同時(shí)與三片6264的D0D7相連,為6264提供8位數(shù)據(jù)通道; P2.0P2.4同時(shí)為三片6264提供高5位的地址。,根據(jù)電路接線圖,當(dāng)8031單片機(jī)的I/O引腳P2.5、P2.6和 P2.7按表8.8給出的數(shù)值變化時(shí),將分別

32、選中三片數(shù)據(jù)存儲(chǔ)器,各片數(shù)據(jù)存儲(chǔ)器的地址范圍見(jiàn)表8.8,表8.8 6264的地址分配表,2. 譯碼法擴(kuò)展四片62128的電路用譯碼法擴(kuò)展數(shù)據(jù)存儲(chǔ)器的電路如圖8.15所示,圖8.15 用譯碼法擴(kuò)展四片62128的電路, 系統(tǒng)中四片62128 RAM芯片的片選信號(hào)由2-4譯碼器74LS139的輸出信號(hào)提供。8031單片機(jī)的P2.6和P2.7為74LS139提供譯碼輸入信號(hào); 8031的分別同時(shí)接在四片62128讀選通端,8031的分別同時(shí)接在四片62128寫(xiě)允許端; 8031的P0.0P0.7經(jīng)地址鎖存器74LS373同時(shí)為四片62128提供低8位的地址、P0.0P0.7還同時(shí)與四片62128的D

33、0D7相連,為62128提供8位數(shù)據(jù)通道; P2.0P2.5同時(shí)為四片62128提供高6位的地址。單片機(jī)為系統(tǒng)提供了14根地址線,可直接尋址的地址范圍是21416KB。四片數(shù)據(jù)存儲(chǔ)器共可提供416KB64KB的空間。 當(dāng)8031單片機(jī)的I/O引腳P2.6和P2.7從00H變化至11H時(shí),2-4譯碼器,74LS139的輸出端Y0Y3將依次輸出0(低電平信號(hào)),從而分別選中四片數(shù)據(jù)存儲(chǔ)器。各片數(shù)據(jù)存儲(chǔ)器62128的地址分配表見(jiàn)表8.9。,表8.9 62128的地址分配表,因?yàn)镋2PROM既可作程序存儲(chǔ)器使用,又可作數(shù)據(jù)存儲(chǔ)器 使用,故可以用一塊E2PROM同時(shí)完成程序和數(shù)據(jù)存儲(chǔ)器的存儲(chǔ) 功能。其接線電路如圖8.16所示。,圖8.16

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論