單片機原理及應(yīng)用-第六章80C51單片機的系統(tǒng)擴展課件_第1頁
單片機原理及應(yīng)用-第六章80C51單片機的系統(tǒng)擴展課件_第2頁
單片機原理及應(yīng)用-第六章80C51單片機的系統(tǒng)擴展課件_第3頁
單片機原理及應(yīng)用-第六章80C51單片機的系統(tǒng)擴展課件_第4頁
單片機原理及應(yīng)用-第六章80C51單片機的系統(tǒng)擴展課件_第5頁
已閱讀5頁,還剩26頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

主講:張松燦河南科技大學(xué)電子信息工程學(xué)院自動化系單片機原理與應(yīng)用第六章80C51單片機的系統(tǒng)擴展16.1 概述(實現(xiàn)方法、內(nèi)容)6.1.l外部并行擴展性能--重點6.1.2外部串行擴展性能6.2 單片機的外部并行擴展6.2.1程序存儲器的擴展6.2.2片外數(shù)據(jù)存儲器的擴展6.2.3擴展片外程序存儲器和片外數(shù)據(jù)存儲器6.2.4通過并行總線擴展I/O口6.3 單片機的外部串行擴展6.3.1串行擴展E2PROM6.3.2串行擴展I/O接口6.4 外部中斷源的擴展思考與練習(xí)2

80C51最小應(yīng)用系統(tǒng)最能發(fā)揮單片機體積小、成本低的優(yōu)點。最小應(yīng)用系統(tǒng)常常不能滿足要求,往往需要進行系統(tǒng)擴展。◆系統(tǒng)擴展的方法:(1)并行擴展法:利用單片機三組總線進行擴展;(2)串行擴展法:利用SPI總線和I2C雙總線串行擴展?!粝到y(tǒng)擴展內(nèi)容:程序存儲器(ROM)擴展、數(shù)據(jù)存儲器(RAM)擴展、I/O口擴展、中斷系統(tǒng)擴展以及其它特殊功能擴展。串行擴展的優(yōu)點:串行接口器件體積小,明顯地減小電路板空間和成本;需用的I/O口線很少,提高可靠性。缺點:串行接口器件速度較慢。高速應(yīng)用場合,并行擴展法占主導(dǎo)地位。6.1概述36.1.1外部并行擴展性能1、80C51單片機的片外總線結(jié)構(gòu)三總線結(jié)構(gòu):地址總線(AB)、數(shù)據(jù)總線(DB)和控制總線(CB)。外部芯片都通過這三組總線進行擴展。(1)地址總線(AB)

由P0口提供低8位A0-A7,P2口提供高8位A8-A15。由于P0還要作數(shù)據(jù)總線口,只能分時用做地址線,故P0口輸出的低8位地址必須用鎖存器鎖存。

P2口具有輸出鎖存功能,故不需外加鎖存器。

P0、P2口在系統(tǒng)擴展中用做地址線后便不能作為一般I/O口使用。地址總線寬為16位,故可尋址范圍為216=64KB。4圖6-180C51系列單片機的三總線結(jié)構(gòu)5(3)控制總線(CB)

片外系統(tǒng)擴展用控制線和片外信號對單片機的控制線。系統(tǒng)擴展用控制線有ALE、、、、。

ALE:輸出,用于鎖存P0口輸出的低8位地址數(shù)據(jù)的控制線。通常,ALE在P0口輸出地址期間出現(xiàn)低電平,用這個低電平信號控制鎖存器來鎖存地址數(shù)據(jù)。:輸出,用于片外程序存儲器(EPROM)的“讀”數(shù)控制?!白x”取EPROM中數(shù)據(jù)(指令)時,不用“RD”信號,而用。(2)數(shù)據(jù)總線(DB)

由P0口提供,其寬度為8位。當(dāng)連到多個外圍芯片時,由地址線控制各個芯片的片選線來選擇哪個芯片的數(shù)據(jù)通道有效。6:輸入,用于選擇片內(nèi)或片外程序存儲器。當(dāng)EA=0時,只訪問外部程序存儲器,不論片內(nèi)有無程序存儲器。因此,在擴展并使用片外程序存儲器時,必須使EA接地。、:輸出,用于片外數(shù)據(jù)存儲器(RAM)的讀/寫控制。當(dāng)執(zhí)行片外數(shù)據(jù)存儲器操作指令MOVX時,這兩個控制信號自動生成。72、80C51單片機的并行擴展能力地址總線寬度為16位,在片外可擴展的存儲器最大容量為64KB,地址為0000H-FFFFH。

片外數(shù)據(jù)存儲器與程序存儲器的操作使用不同的指令和控制信號,允許兩者的地址重復(fù),故片外可擴展的數(shù)據(jù)存儲器與程序存儲器分別為64KB。

片外數(shù)據(jù)存儲器與片內(nèi)數(shù)據(jù)存儲器的操作指令不同(片外RAM只能用MOVX指令),允許兩者地址重復(fù),亦即外部擴展數(shù)據(jù)存儲器地址可從0000H開始。

I/O口擴展,可與片外數(shù)據(jù)存儲器統(tǒng)一編址,不再另外提供地址線。8存儲器擴展及編址技術(shù)(1)線選法線選法:直接以系統(tǒng)的地址作為存儲芯片的片選信號,為此只需把高位地址線與存儲芯片的片選信號直接連接即可。

特點:簡單明了,不需增加另外電路。缺點:存儲空間不連續(xù)。適用于小規(guī)模單片機系統(tǒng)的存儲器擴展?!纠楷F(xiàn)有2K*8位存儲器芯片,需擴展8K*8位存儲結(jié)構(gòu)采用線選法進行擴展。擴展8KB的存儲器結(jié)構(gòu)需2KB的存儲器芯片4塊。2K的存儲器所用的地址線為A0~A10共11根地址線和片選信號與CPU的連接如表5-1所示。980C51存儲器P0口經(jīng)鎖存器形成A0~A7與A0~A7相連P2.0、P2.1、P2.2與A8~A10相連P0口與D0~D7相連P2.3與存儲器1的片選信號相連P2.4與存儲器2的片選信號相連P2.5與存儲器3的片選信號相連P2.6與存儲器3的片選信號相連80C51與存儲器的線路連接

10線選法連線圖擴展存儲器的硬件連接11這樣得到四個芯片的地址分配如下表所示

線選方式地址分配表

A15A14A13A12A11A10….A0地址范圍芯片100111111000….01….17000H---77FFH芯片200111100110

….01

….16800H---6FFFH芯片300110011110

….01

….15800H---5FFFH芯片400001111110

….01

….13800H—3FFFH12(2)譯碼法譯碼法:使用譯碼器對系統(tǒng)的高位地址進行譯碼,以其譯碼輸出作為存儲芯片的片選信號。是一種最常用的存儲器編址方法,能有效地利用空間,特點:存儲空間連續(xù),適用于大容量多芯片存儲器擴展。常用的譯碼芯片有:74LS139(雙2-4譯碼器)和74LS138(3-8譯碼器)等,它們的CMOS型芯片分別是74HC139和74HC138。

13譯碼器管腳圖74LS138譯碼器74LS139譯碼器14【例】現(xiàn)有2K*8位存儲器芯片,需擴展8K*8位存儲結(jié)構(gòu),采用譯碼法進行擴展。擴展8KB的存儲器結(jié)構(gòu)需2KB的存儲器芯片4塊。2K的存儲器所用的地址線為A0~A10共11根。地址線和片選信號與CPU的連接如圖所示。

15 80C51 存儲器P0口經(jīng)鎖存器形成A0~A7與A0~A7相連P2.0、P2.1、P2.2與A8~A10相連P0口與D0~D7相連B--P2.4A--P2.3譯碼輸出與存儲器的片選信號連接00與存儲器1的片選信號相連01與存儲器2的片選信號相連10與存儲器3的片選信號相連11與存儲器4的片選信號相連Y0有效Y1有效Y2有效Y3有效

P2.3、P2.4作為二-四譯碼器的譯碼地址,譯碼輸出作為擴展4個存儲器芯片的片選信號,P2.5、P2.6、P2.7懸空。1617這樣得到四個芯片的地址分配如下表所示。譯碼方式地址分配表

P2.7P2.6P2.5P2.4P2.3P2.2….P0地址范圍芯片100000000000….01….10000H---07FFH芯片200000000110….01….10800H---0FFFH芯片300000011000….01….11000H---17FFH芯片400000011110….01….11800H—1FFFH18當(dāng)應(yīng)用系統(tǒng)擴展的存儲器容量超過地址總線范圍時,可用換體的辦法解決。圖中用4個32KB容量的數(shù)據(jù)存儲器62256來組成兩個存儲器體,存儲器體Ⅰ、Ⅱ分別為64KB。

4個62256的使能端通過由P2.7和P1.0控制的2-4譯碼器來選通??梢钥闯雒吭黾右粭lI/O口線,可以再擴大地址容量一倍。當(dāng)復(fù)位后,由于P1.0為高電平,64KB地址指向Ⅱ體;當(dāng)給P1.0置低電平后,則64KB地址指向Ⅰ體。(3)超過64KB容量時的擴展方法19圖6--2用I/O線來控制片外存儲器換體201、擴展EPROM片外程序存儲器的方法(1)擴展4K×8位片外程序存儲器本片2732的地址范圍為1000H-1FFFH。電路中只擴展一片2732,它的片選CE接地,PSEN作為其輸出允許信號,ALE作為鎖存器74HC373的鎖存允許信號。

P2口的其它線雖然未作高位地址線用,但是也不能作I/O線用。21(2)擴展兩片8K×8位片外程序存儲器的電路(1)EA是接地的,適用于80C31;對于其它的單片機,只能放棄片內(nèi)程序存儲器。(2)P2.5線作片選信號當(dāng)P2.5=0時選通第一片,當(dāng)P2.5=1時選通另一片。(3)這種選通方式稱為線選方式。222、擴展片外數(shù)據(jù)存儲器的硬件電路片外數(shù)據(jù)存儲器由隨機存取存儲器組成,最大可擴展64KB。一般采用靜態(tài)RAM,如6116(2K×8位)和6264(8K×8位)兩種。地址鎖存器采用74HC273或鎖存緩沖器74HC373。23(1)擴展2K×8位片外數(shù)據(jù)存儲器擴展2K×8位

P0口提供低8位地址、通過ALE鎖存;P2.0-P2.2提供高3位地址(A8-A10);WR及RD分別與6116的寫允許(WE)及讀允許(OE)連接,實現(xiàn)寫/讀控制。6116的片選CE,有兩種連接方法:其一,以WR及RD的“與”邏輯控制;另一種是將它直接接地。電路中6116的地址范圍為0000H-07FFH。24有兩種訪問方法:①讀操作:MOVDPTR,#0000HMOVXA,@DPTR

寫操作:MOVDPTR,#0000HMOVX@DPTR,A

此處只使用了P2.2-P2.0,但是P2.7-P2.3卻不宜再作I/O口線使用了。②用P2.2-P2.0來傳送地址,而其余的P2.7-P2.3仍保留I/O口的功能。不過P2.2-P2.0的高位地址需要通過程序來設(shè)定。25(2)擴展16K×8位片外數(shù)據(jù)存儲器當(dāng)用兩片芯片擴展,采用線選法尋址,是最簡單的。用P2.5來尋址:當(dāng)P2.5=0時,訪問片(1);當(dāng)P2.5=1時,訪問片(2)。(1)的地址范圍為0000H-1FFFH;片(2)的地址范圍為2000H-3FFFH。

266.4外部中斷源的擴展

80C51單片機,只有兩個外部中斷請求輸入端INT0、INT1。當(dāng)有多個外部中斷源時,采用“OC門”經(jīng)“線或”后,引入外部中斷請求輸入端(INT0、INT1),就可很方便地擴展多個外部中斷源。27上圖就是占用一個80C51的INT0(或INT1),擴展4個外部中斷源的電路。

4個擴展外部中斷源中有一個或幾個出現(xiàn)高電平,反相器輸出為0,引起INT0低電平觸發(fā)中斷,所以這些中斷源都是電平觸發(fā)方式。當(dāng)滿足外部中斷請求條件時,則CPU響應(yīng)中斷,轉(zhuǎn)入0003H單元開始執(zhí)行中斷服務(wù)程序。在中斷服務(wù)程序中,由軟件設(shè)定的順序查詢外中斷哪一位是高電平,然后進入該中斷處理程序。

查詢的順序就是外部擴展中斷源的中斷優(yōu)先級順序。28圖6--48中斷源查詢程序的流程圖29INT0的中斷服務(wù)程序如下:PINT0:PUSHPSW;保護現(xiàn)場

…PUSHACCJBP1.0,LOOP1;轉(zhuǎn)向中斷服務(wù)程序1JBP1.1,LOOP2;轉(zhuǎn)向中斷服務(wù)程序2JBP1.2,LOOP3;轉(zhuǎn)向中斷服務(wù)程序3JBP1.2,LOOP4;轉(zhuǎn)向中斷服務(wù)程序4INTEND:PO

溫馨提示

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

最新文檔

評論

0/150

提交評論