單片機(jī)并行系統(tǒng)擴(kuò)展技術(shù)_第1頁
單片機(jī)并行系統(tǒng)擴(kuò)展技術(shù)_第2頁
單片機(jī)并行系統(tǒng)擴(kuò)展技術(shù)_第3頁
單片機(jī)并行系統(tǒng)擴(kuò)展技術(shù)_第4頁
單片機(jī)并行系統(tǒng)擴(kuò)展技術(shù)_第5頁
已閱讀5頁,還剩123頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)并行系統(tǒng)擴(kuò)展技術(shù)第1頁,共128頁,2022年,5月20日,2點48分,星期二第8章目錄8.180C51系列單片機(jī)的并行系統(tǒng)擴(kuò)展概述系列單片機(jī)的并行系統(tǒng)擴(kuò)展能力地址的鎖存存儲器空間地址8.2外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展數(shù)據(jù)存儲器的擴(kuò)展數(shù)據(jù)存儲器和程序存儲器的統(tǒng)一編址8.3外部I/0口的擴(kuò)展方法對I/O口的編程指令簡單并行I/O接口擴(kuò)展可編程I/O接口及擴(kuò)展技術(shù)可編程接口電路的擴(kuò)展第2頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述80C51系列單片機(jī)其芯片內(nèi)部集成了計算機(jī)的基本功能部件,如CPU、RAM、ROM、并行和串行I/O口以及定時/計數(shù)器

2、,使用非常方便。對于小型的控制及檢測系統(tǒng),利用單片機(jī)自身的硬件資源就夠了,但對于一些較大的應(yīng)用系統(tǒng),往往還需要擴(kuò)展一些存儲器、及并行口等外圍芯片,以補(bǔ)充單片機(jī)硬件資源的不足。第3頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述系列單片機(jī)的并行系統(tǒng)擴(kuò)展能力80C51單片機(jī)的地址線有P2口和P0口提供,共16位,故其片外可擴(kuò)展的存儲器最大容量為64KB,地址為0000HFFFFH。由于51單片機(jī)訪問片外數(shù)據(jù)存儲器和程序存儲器的指令及控制信號不同,故允許兩者地址重合。80C51單片機(jī)沒有專門對外部擴(kuò)展的I/O口、A/D、D/A芯片的操作指令,都借用對外部RAM的操作

3、指令MOVX來實現(xiàn)對這些外部擴(kuò)展芯片的控制。即每一個I/O口相當(dāng)于一個RAM存儲單元,CPU如同訪問外部數(shù)據(jù)存儲器一樣訪問擴(kuò)展I/O口,對其進(jìn)行讀寫操作。第4頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述地址的鎖存1、鎖存的作用80C51系列單片機(jī)以三總線(地址總線、數(shù)據(jù)總線、控制總線)方法外擴(kuò)展存儲器及外部I/O口芯片時,數(shù)據(jù)總線(D7D0)和地址總線(A7A0)低8位通過P0口分時輸出,地址總線的高8位(A15A8)通過P2口輸出。P0口采用分時復(fù)用的方法:CPU先從P0口輸出低8位地址,從P2口輸出高8位地址,從而利用PO口線和P2口線的高低電平的狀態(tài)

4、來確定具體訪問的存儲器空間位置,再從P0口讀寫數(shù)據(jù)。所以,只有通過地址鎖存器把P0口首先輸出的低8位地址鎖存起來,才能實現(xiàn)PO口的復(fù)用功能。單片機(jī)的ALE引腳一般與鎖存器的控制信號G相連接,在ALE的下降沿P0口的低8位地址信號進(jìn)入鎖存器,鎖存器輸出作為地址總線低8位的A7A0。第5頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述地址的鎖存2、鎖存器74LS373和74LS573等TTL芯片常用來完成上述的地址鎖存功能。兩者功能一樣,只是芯片引腳的排列不同,用戶可以根據(jù)印刷電路板的布線需要選用。它們都是帶有三態(tài)門的、雙列直插20引腳的8D鎖存器。74LS373

5、其引腳圖如圖8-1所示,其內(nèi)部結(jié)構(gòu)圖如圖8-2所示。圖8-174LS373引腳圖圖8-274LS373結(jié)構(gòu)圖第6頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述地址的鎖存2、鎖存器74LS373的引腳符號和功能如下:(1)D7D0:三態(tài)門輸入端。(2)Q7Q0:三態(tài)門輸出端。(3)GND:接地端。(4)VCC:電源端。:三態(tài)門使能端。,三態(tài)門輸出為標(biāo)準(zhǔn)TTL電平;=1,三態(tài)門輸出高阻態(tài)。(6)G:8D鎖存器控制端。當(dāng)G=1時,鎖存器處于透明工作狀態(tài),即鎖存器的輸出狀態(tài)隨數(shù)據(jù)輸入端的變化而變化,即Qi=Di(i=1,28)。當(dāng)G端由1變0時,數(shù)據(jù)被鎖存起來,此時

6、輸出端Qi不再隨輸入端的變化而變化,而一直保持鎖存前的值不變。G端可直接與單片機(jī)的鎖存控制信號端ALE相連,在ALE的下降沿進(jìn)行地址鎖存。第7頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述地址的鎖存2、鎖存器74LS373的邏輯功能表見表8-1。圖8-3是使用74LS373芯片作為80C51系列單片機(jī)P0口的低8位地址鎖存器的連接方法。表8-174LS373的邏輯功能表圖8-374LS373與80C51第8頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址無論ROM和RAM哪種存儲器芯片只要連接在系統(tǒng)中,單片機(jī)對

7、其任意一個單元操作都需要先確定其地址空間。如某11根地址線的存儲器芯片,其地址空間為2KB,如果系統(tǒng)中只有這一片芯片,那其地址范圍可以是(0000H07FFH)。當(dāng)系統(tǒng)中擴(kuò)展的存儲器芯片多于一片時,對于同一種類(如:RAM)存儲器的每一個單元必須具有唯一的地址.第9頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述8.1.3存儲器空間地址學(xué)校只有一座2KB個房間的宿舍樓,沒有教學(xué)樓,則給宿舍的各個房間編號的方法非常簡單,只需要從0000H開始編寫到07FFH結(jié)束即可。只有一座教學(xué)樓無宿舍樓的情況相同。但如果同時有一座2KB的教學(xué)樓和一座2KB宿舍樓其地址都可以從

8、0000H開始編寫到07FFH。雖然二者地址形式重疊,但是訪問ROM和RAM的控制總線不同、指令不同,因此CPU完全能夠準(zhǔn)確區(qū)分二者。但是對于有兩座或兩座以上宿舍樓、教學(xué)樓的情況就要重新討論了。假設(shè)一個學(xué)校有兩座相同的宿舍樓,其每個樓有2KB個宿舍。那么在我們的生活經(jīng)驗中,會采用把其分成A、B座的方法。在單片機(jī)中也是采用這樣的思路。一般我們習(xí)慣于讓其與單片機(jī)的P2.2P2.0和P0.7P0.0低11位地址(即單片機(jī)的地址線A10A0)連接;將單片機(jī)剩下的P2.7P2.3地址線(即單片機(jī)的地址線A15A11)留下來承擔(dān)區(qū)別芯片的任務(wù),即完成片選功能。擴(kuò)展芯片的片選方法分為線選法和譯碼法兩種類型。

9、第10頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述8.1.3存儲器空間地址1、線選法所謂線選方式,就是把一根高位地址線直接連到某個存儲器芯片的片選端?!纠?-1】現(xiàn)有2K*8位存儲器芯片,需擴(kuò)展8K*8位存儲結(jié)構(gòu),要求采用線選法進(jìn)行擴(kuò)展。解:擴(kuò)展8KB的存儲器結(jié)構(gòu)需2KB的存儲器芯片4片。2KB的存儲器共11根地址線與單片機(jī)P2口的低3位(P2.2、P2.1、P2.0)和PO口連接。單片機(jī)的P2.3、P2.4、P2.5、P2.6分別與4個芯片的片選端連接,如圖8-4所示。第11頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概

10、述8.1.3存儲器空間地址1、線選法圖8-4用線選方式實現(xiàn)片選第12頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述8.1.3存儲器空間地址1、線選法圖8-4中:地址線A10A0實現(xiàn)片內(nèi)尋址,地址空間為2KB;用4根高位地址線P2.3、P2.4、P2.5、P2.6與4個芯片的端相連,實現(xiàn)片選,均為低電平有效。(P2.5、P2.6中有一根地址線為低電平時,其余三根地址線必須為高電平,即同類存儲器每次只能有一個芯片被選中工作)?,F(xiàn)假設(shè)剩下的一根高位地址線A15接為低電平,這樣可得到如表8-2所示的四個芯片的地址分配。第13頁,共128頁,2022年,5月20日,2

11、點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述8.1.3存儲器空間地址1、線選法第14頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述8.1.3存儲器空間地址1、線選法可以看出,四個芯片的片內(nèi)尋址A10A0都是從00(共11位),到11(共11位),為2KB空間,而依靠不同的片選信號高位地址線A14、A13、A12、A11中的某一根為0,來區(qū)分這四個芯片的地址空間。線選方式的電路連接簡單,其缺點:芯片的地址空間相互之間可能不連續(xù)(如圖8-4所示的情況),不能充分利用微處理器的內(nèi)存空間。其原因是,用做片選信號的高位地址線的信號狀態(tài)得不到充分利用。第15頁,共128頁,

12、2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述8.1.3存儲器空間地址1、線選法以圖8-4為例,當(dāng)A11為低電平選通芯片1時,此時A14、A13、A12必須為高電平,然而A15的電平可高可低。這樣對于芯片,實際上存在2個地址空間,它們是7000H77FFH和F000HF7FFH。同理,其它三個芯片也各有2個地址空間。對于地址重疊現(xiàn)象,編程者清楚即可,任意選定其中一個地址空間供編程用皆可。第16頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址2、譯碼法采用譯碼方式編址可以克服線選方式的缺點,它通過譯碼器將高位地址線的狀態(tài)譯碼,然

13、后用譯碼器輸出信號來選通相應(yīng)的存儲器芯片。常用的譯碼器有74LS139、74LS138等。(1). 74LS139譯碼器74LS139為雙2線-4線譯碼器。這兩個譯碼器完全獨立,分別有各自的數(shù)據(jù)輸入端、譯碼狀態(tài)輸出端以及數(shù)據(jù)輸入允許端。表8-3(只給出一組)為74LS139譯碼器的真值表。其引腳見圖8-5。第17頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址2、譯碼法第18頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址2、譯碼法【例8-2】現(xiàn)有2K*8位存儲器芯片,需擴(kuò)展8K*8位存儲結(jié)構(gòu),要求

14、采用譯碼法進(jìn)行擴(kuò)展。解:擴(kuò)展8KB的存儲器結(jié)構(gòu)需2KB的存儲器芯片4片。2K的存儲器共11根地址線與單片機(jī)P2口的低3位(P2.2、P2.1、P2.0)和PO口連接。P2.3、P2.4作為二-四譯碼器的譯碼地址,譯碼輸出作為擴(kuò)展4個存儲器芯片的片選信號,P2.5、P2.6、P2.7懸空。擴(kuò)展連線圖如圖8-6所示。 第19頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址2、譯碼法圖8-6 74LS139譯碼法實現(xiàn)片選第20頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址根據(jù)譯碼器的邏輯關(guān)系和存儲器的片

15、內(nèi)尋址范圍,當(dāng)未用的三位都取低電平0時,可以得到4個芯片的地址空間如表8-4所示:第21頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址(2)、74LS138譯碼器 74LS138譯碼器屬于3線-8線譯碼器,有3個數(shù)據(jù)輸入端,經(jīng)譯碼產(chǎn)生8種狀態(tài)。真值表見表8-5。由表8-5可見,當(dāng)譯碼器的輸入為某一固定編碼時,其輸出僅有一個固定的引腳輸出為低電平,其余的為高電平。輸出為低電平的引腳就作為某一存儲器芯片的片選信號,引腳如圖8-7所示。第22頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址(2)、74L

16、S138譯碼器圖8-7 74LS138譯碼器引腳圖第23頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址(2)、74LS138譯碼器【例8-3】 要擴(kuò)8片8KB的存儲器芯片,如何通過74LS138把64KB空間地址分配給各個芯片? 解:由74LS138真值表可知,把G1接到+5V,接地 P2.7、P2.6、P2.5(高3位地址線)分別接74LS138的C、B、A端,由于對高3位地址譯碼,這樣譯碼器有8個輸出,分別接到8片存儲器的各“片選”端,實現(xiàn)8選1的片選。低13位地址A12A0(P2.4P2.0,P0.7P0.0)完成對選中的8KB存儲器中的

17、各個存儲單元的“單元選擇”。這樣就把64KB存儲器空間分成8個8KB空間了。連接線見圖8-8。第24頁,共128頁,2022年,5月20日,2點48分,星期二8.1 并行系統(tǒng)擴(kuò)展概述存儲器空間地址 圖8-8 74LS138劃分存儲器地址 譯碼方式的優(yōu)點是:存儲器芯片的地址空間連續(xù),且唯一確定,不存在地址重疊現(xiàn)象,能夠充分利用內(nèi)存空間;當(dāng)譯碼器輸出端留有空余時,便于繼續(xù)擴(kuò)展存儲器或其他外圍器件。其缺點是電路連接復(fù)雜一些。第25頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展 80C51單片機(jī)片內(nèi)有4KB ROM,對于較大的系統(tǒng)若4KB不夠用,

18、需在片外擴(kuò)展程序存儲器。外部擴(kuò)展程序存儲器的類型可以是EPROM、E2PROM或Flansh ROM,其中使用較多EPROM。1、單片EPROM程序存儲器的擴(kuò)展方法(1).常用EPROM的芯片及引腳 EPROM常用的是27系列產(chǎn)品,如:2716(2KB)、2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB)。 型號27后面的數(shù)字是該芯片的位存儲容量。如2764中64表示該芯片的位存儲容量是64Kbit,該數(shù)值除以8所得即是該ROM能存放程序的K字節(jié)數(shù),因此2764芯片的容量為8KB(B表示字節(jié)單位)。 圖8-9是這些芯片的引腳圖。第26頁,共128頁,20

19、22年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展(1).常用EPROM的芯片及引腳 第27頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展(1).常用EPROM的芯片及引腳其中各引腳功能如下:A15A0:地址線引腳。它的數(shù)目由芯片的存儲容量決定,如27128有14根,27256有15根。用于進(jìn)行單元選擇。D7D0:數(shù)據(jù)線引腳。一般與單片機(jī)的PO口之間連接。 :片選控制端。其為低電平時程序存儲器被選中工作。 :輸出允許控制端。其為低電平時程序存儲器允許指令從數(shù)據(jù)線引腳輸出。VCC:+5V,芯片的工作電壓。VP

20、P:編程時,編程電壓(+12V或+25V)輸入端。GND:數(shù)字地。NC:無用端。第28頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展(2).程序存儲器的擴(kuò)展方法 程序存儲器的數(shù)據(jù)線D7D0與單片機(jī)的P0口的8根線對應(yīng)連接,作為擴(kuò)展系統(tǒng)的數(shù)據(jù)總線,該數(shù)據(jù)總線為單向數(shù)據(jù)總線,外部ROM中的指令通過該總線被讀入單片機(jī)。單片機(jī)PO口通過鎖存器的輸出端與程序存儲器地址線的低8位A7A0連接;程序存儲器的高位地址線AX(X=915)A8與單片機(jī)的P2口直接連接;程序存儲器的輸出允許端與單片機(jī)的相接;如果只有一片EPROM,其片選端一般固定接地。圖8-

21、10為2764與單片機(jī)的連接圖,該存儲器的地址范圍見表8-6。第29頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展(2).程序存儲器的擴(kuò)展方法表8-6中叉號代表沒有連接的P2.7、P2.6、P2.5位,三者可以有八種組合即:000、001、010111。當(dāng)三者的組合是000時,該2764的地址范圍是0000H1FFFH;二者的組合是001時,該2764的地址范圍是2000H3FFFH;當(dāng)二者的組合是010時,該2764的地址范圍是4000H5FFFH;當(dāng)二者的組合是111時,該2764的地址范圍是E000HFFFFH??梢娙绻鈹U(kuò)的ROM

22、沒有用完所有的P2口地址時,ROM地址的范圍不固定,一般未用的高位地址常被選擇全部為0。第30頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展(2).程序存儲器的擴(kuò)展方法圖8-10 單片機(jī)擴(kuò)展一片2764電路圖第31頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展(2).程序存儲器的擴(kuò)展方法若需要外部擴(kuò)展的EPROM的芯片為27128,則其與單片機(jī)的連接方法,只需要在圖8-10的基礎(chǔ)上增加一條地址線即可,將外部ROM的A13與單片機(jī)的P2.5連接(也可以選擇P2.6或P2.7,但習(xí)慣于選

23、擇P2.5)。第32頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展2、CPU從外部程序存儲器取指令的時序外部程序存儲器與內(nèi)部程序存儲器的功能都是用來存放編程人員編制的程序指令。因此CPU對其的操作只有讀出,沒有寫入,程序指令的代碼傳送的方向是單向的。當(dāng)CPU執(zhí)行外部ROM中的指令時,CPU將自動逐條讀取其內(nèi)的指令。在讀取指令的過程中,單片機(jī)的ALE、 、 將控制讀取過程。 其中ALE用于低8位地址鎖存控制;是片外程序存儲器“讀選通”控制信號,它接外擴(kuò)EPROM的 引腳。第33頁,共128頁,2022年,5月20日,2點48分,星期二8.2

24、 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展2、CPU從外部程序存儲器取指令的時序P2口用來輸出程序指令在ROM中存放單元地址的高8位,P0口分時用作低8位地址總線和數(shù)據(jù)總線。作低8位地址線時與P2口聯(lián)合形成16位的地址,這個16位地址就是指令在ROM中的存放地址,這個地址將指引CPU去該存儲單元取指令。P0口作數(shù)據(jù)線時的功能是指:CPU將P2、P0所指示外ROM單元地址中的指令代碼,從P0與EPROM的D0D7的連接線上傳送到單片機(jī)內(nèi)部。第34頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展2、CPU從外部程序存儲器取指令的時序【例8-4】 試

25、繪圖說明CPU從外部ROM 2080H單元中讀取MOV R0,#30H的指令時序。解:圖8-11是該指令時序圖。該指令編譯后的機(jī)器碼是78 30,依次占用外部ROM 2080H和2081H單元。執(zhí)行該指令時CPU首先從P2口送出2080中的高8位地址20H,并將80H通過P0口送到74LS373鎖存器輸出端,ALE是高電平時74LS373處于直通狀態(tài),輸出等于輸入,在ALE的下降沿PO口送出的數(shù)據(jù)被鎖存在輸出端,這時PO口數(shù)據(jù)再變化,74LS373的輸出端仍然保持80H這一狀態(tài)。這樣P2口和P0口共同形成了16位地址2080H。第35頁,共128頁,2022年,5月20日,2點48分,星期二8

26、.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展2、CPU從外部程序存儲器取指令的時序隨后單片機(jī)將78H這一指令代碼通過P0口與外部ROM的D7D0的連接線路讀入CPU。接著CPU將2081H這一地址再通過P2口和P0口送出,當(dāng)作為地址信號的P0口數(shù)據(jù)被鎖存后,CPU會將指令的第二個字節(jié)代碼30H通過P0口線讀入到CPU中。 圖8-11 單片機(jī)外擴(kuò)程序存儲器的時序圖第36頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展2、CPU從外部程序存儲器取指令的時序從圖8-11可以看出,80C51單片機(jī)的一個機(jī)器周期包含6個狀態(tài)S1S6,ALE和在一個機(jī)器

27、周期中都是兩次有效的。當(dāng)ALE有效(高電平)時,高8位地址(PCH)從P2口輸出,低8位地址(PCL) 從P0口輸出。因此,可以在ALE的下降沿把P0口輸出的地址信號鎖存起來。然后利用信號按地址選通外部程序存儲器,將相應(yīng)單元的數(shù)據(jù)(指令代碼)送到P0口。CPU在上升沿完成對P0口的數(shù)據(jù)采樣。這樣就實現(xiàn)了P0口地址數(shù)據(jù)的分時操作。對圖8-11有幾點值得注意:1)對應(yīng)于ALE下降沿時刻,出現(xiàn)在P0口上的信號必然是低8位地址信號A7A0。2)對應(yīng)于上升沿時刻,出現(xiàn)在P0口上的信號必然是指令信號。第37頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)

28、展3、擴(kuò)展多片EPROM程序存儲器當(dāng)擴(kuò)展一片EPROM不能滿足要求時,可以采用擴(kuò)展多片EPROM的方案。這時所有芯片的片選端都必須適當(dāng)連接,需要使用片內(nèi)尋址以外的高位地址線,以線選或譯碼方式提供片選信號。圖8-12是采用譯碼方式擴(kuò)展4片2764 EPROM的連接圖。2764的地址線有13根,低8位地址線連接鎖存器的輸出端,其余5根地址線接到P2.0P2.4;4片EPROM的數(shù)據(jù)線都直接與PO口連接;端都與連接。P2口剩下的2根高位地址線P2.6、P2.5(A14、A13)通過74LS139選通4片2764的片選信號,接到各片端。A15(P2.6)未用,可以取高電平也可以取低電平,一般來說我們習(xí)

29、慣于把A15這樣未用的位取”0”。第38頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展3、擴(kuò)展多片EPROM程序存儲器第39頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法程序存儲器的擴(kuò)展3、擴(kuò)展多片EPROM程序存儲器第40頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展典型80C51單片機(jī)內(nèi)部有128B的RAM ,用于小系統(tǒng)一般能滿足要求。如果不夠用,可在片外適當(dāng)擴(kuò)展數(shù)據(jù)存儲器。其擴(kuò)展的最大容量是64KB。 在單片機(jī)應(yīng)用系統(tǒng)中,如果

30、外部擴(kuò)展動態(tài)數(shù)據(jù)存儲器,還需要有對應(yīng)的硬件刷新電路。所以,在單片機(jī)外部擴(kuò)展的數(shù)據(jù)存儲器都不采用動態(tài)數(shù)據(jù)存儲器,而采用靜態(tài)數(shù)據(jù)存儲器(SRAM)。第41頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展1、外部數(shù)據(jù)存儲器的擴(kuò)展方法(1).常用于外部RAM擴(kuò)展的芯片及引腳靜態(tài)數(shù)據(jù)存儲器常用的是62系列產(chǎn)品,如:6216(2KB)、6264(8KB)、128(16KB)、62256(32KB)、62512(64KB)。同樣型號62后面的數(shù)字是該芯片的位存儲容量。該數(shù)值除以8所得即是該RAM能存放數(shù)據(jù)的K字節(jié)數(shù),因此6264芯片的容量為8

31、KB(B表示字節(jié)單位)。典型80C51單片機(jī)內(nèi)部有128B的RAM,用于小系統(tǒng)一般能滿足要求。如果不夠用,可在片外適當(dāng)擴(kuò)展數(shù)據(jù)存儲器。其擴(kuò)展的最大容量是64KB。在單片機(jī)應(yīng)用系統(tǒng)中,如果外部擴(kuò)展動態(tài)數(shù)據(jù)存儲器,還需要有對應(yīng)的硬件刷新電路。所以,在單片機(jī)外部擴(kuò)展的數(shù)據(jù)存儲器都不采用動態(tài)數(shù)據(jù)存儲器,用靜態(tài)數(shù)據(jù)存儲器(SRAM)。第42頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展1、外部數(shù)據(jù)存儲器的擴(kuò)展方法(1).常用于外部RAM擴(kuò)展的芯片及引腳如圖8-13所示,常用62系列靜態(tài)存儲器芯片各引腳功能如下:D7D0:雙向三態(tài)數(shù)據(jù)線。

32、與單片機(jī)的P0口直接連接。A15A0:地址輸入線。芯片容量不同,地址線數(shù)量不同。:片選信號輸入線。對6264芯片,當(dāng)26腳(CS)為高電平且為低電平時才選中該片。:讀選通信號輸入線,低電平有效。:寫允許信號輸入線,低電平有效。VCC:工作電源+5V。GND:地。第43頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展1、外部數(shù)據(jù)存儲器的擴(kuò)展方法(1).常用于外部RAM擴(kuò)展的芯片及引腳第44頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展1、外部數(shù)據(jù)存儲器的擴(kuò)展方法(

33、2)擴(kuò)展數(shù)據(jù)存儲器的連接電路數(shù)據(jù)存儲器的擴(kuò)展方法是:數(shù)據(jù)存儲器的數(shù)據(jù)線D7D0與單片機(jī)P0口的8根線對應(yīng)連接;單片機(jī)PO口通過鎖存器的輸出端與數(shù)據(jù)存儲器地址線的低8位A7A0連接;數(shù)據(jù)存儲器的高位地址線AX(X=915)A8與單片機(jī)的P2口直接連接;片外數(shù)據(jù)存儲器RAM的寫允許腳信號與80C51單片機(jī)的(P3.6)相連接,單片機(jī)可以通過執(zhí)行MOVX寫出指令使得引腳低電平時,此時單片機(jī)會將數(shù)據(jù)從P0口送出;第45頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展1、外部數(shù)據(jù)存儲器的擴(kuò)展方法(2)擴(kuò)展數(shù)據(jù)存儲器的連接電路與外擴(kuò)程序存儲

34、器是單向總線不同,外擴(kuò)數(shù)據(jù)存儲器是雙向數(shù)據(jù)總線。單片機(jī)內(nèi)部的數(shù)據(jù)與外部RAM之間的數(shù)據(jù)交換均通過該總線完成,即從單片機(jī)內(nèi)部寫出的數(shù)據(jù)從該總線上進(jìn)入外部RAM,外部RAM的數(shù)據(jù)也是通過該總線進(jìn)入單片機(jī)內(nèi)部。P2、P0口形成16位地址,指示出與單片機(jī)進(jìn)行數(shù)據(jù)交換的外部RAM單元,該地址將出現(xiàn)在MOVX指令中。第46頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展1、外部數(shù)據(jù)存儲器的擴(kuò)展方法(2)擴(kuò)展數(shù)據(jù)存儲器的連接電路由于片外數(shù)據(jù)存儲器RAM的讀和寫由80C51單片機(jī)的(P3.7)和(P3.6)信號控制,而片外程序存儲器EPROM的

35、輸出端允許()由80C51單片機(jī)的讀選通信號控制。因此即使外部RAM與EPROM的地址空間范圍都是相同的,但由于控制信號不同,故不會發(fā)生總線沖突。圖8-14為6264與單片機(jī)的連接圖,該存儲器的地址范圍是見表8-8。表8-8擴(kuò)展一片6264的地址值第47頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展1、外部數(shù)據(jù)存儲器的擴(kuò)展方法由表8-8知6264的地范圍隨A15A14A13的取值而變化,當(dāng)三者都取000時,其取值范圍固定為:0000H1FFFH。圖8-14外部擴(kuò)展一片6264與單片機(jī)的連接圖第48頁,共128頁,2022年,5

36、月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展2、操作片外數(shù)據(jù)存儲器所用指令的時序(1).對外部RAM的操作指令可以完成80C51系列單片機(jī)與外部RAM進(jìn)行數(shù)據(jù)交換的指令如下:MOVXA,Ri;從外RAM讀輸入單片機(jī)MOVXRi,A;從單片機(jī)寫出到外RAMMOVXA,DPTR;從外RAM讀輸入單片機(jī)MOVXDPTR,A;從單片機(jī)寫出到外RAM這4條指令(實際上為6條,因為i=0,1)全為寄存器間接尋址操作,且全為累加器A與外部接口打交道。以上指令集統(tǒng)稱為“MOVX”類指令。前2條指令采用R0或R1間址。第49頁,共128頁,2022年,5月20日,2點48

37、分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展2、操作片外數(shù)據(jù)存儲器所用指令的時序(2).執(zhí)行與外部數(shù)據(jù)存儲器進(jìn)行數(shù)據(jù)交換指令的時序只有執(zhí)行MOVX類指令才能夠?qū)ν獠繑?shù)據(jù)存儲器進(jìn)行數(shù)據(jù)交換。當(dāng)執(zhí)行這些指令時CPU首先將MOVX指令從內(nèi)部ROM或外部R0M中取出。如果MOVX指令存放在內(nèi)部ROM中,其采用內(nèi)部總線完成指令操作,與P2、P0、ALE、等引腳無關(guān)。我們這里討論當(dāng)MOVX類指令存放在外部ROM中時,P2、P0、ALE、 、 、 的時序關(guān)系。第50頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展2、操作

38、片外數(shù)據(jù)存儲器所用指令的時序(2).執(zhí)行與外部數(shù)據(jù)存儲器進(jìn)行數(shù)據(jù)交換指令的時序當(dāng)MOVX類指令存放在外部ROM中時,第一個機(jī)器周期CPU首先執(zhí)行將指令從外部ROM取出的操作,其操作時序與例【例8-4】基本相同:在讀取指令的過程中單片機(jī)的ALE、將控制讀取過程,其中ALE用于低8位地址鎖存控制,且ALE在讀取MOVX指令時仍然保持一個機(jī)器周期中有兩次高電平有效,為低電平時,MOVX指令對應(yīng)的機(jī)器碼從P0口進(jìn)入單片機(jī)內(nèi)部。將指令代碼取入單片機(jī)內(nèi)部后,CPU將DPTR值的高8位DPH送到P2口,將DPTR的低8位送到單片機(jī)的P0口,從而確定與單片機(jī)進(jìn)行數(shù)據(jù)交換的外部數(shù)據(jù)存儲器的單元地址,PO口信號被

39、ALE信號的下降沿鎖存。第51頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展2、操作片外數(shù)據(jù)存儲器所用指令的時序(2).執(zhí)行與外部數(shù)據(jù)存儲器進(jìn)行數(shù)據(jù)交換指令的時序如果執(zhí)行的是讀入指令,CPU會使得信號成為低電平,在此期間外部RAM單元中的數(shù)據(jù)被送到PO口線,單片機(jī)將其自動讀入到累加器A中。如果執(zhí)行的是寫出指令,則CPU將令信號有效, 數(shù)據(jù)從累加器A輸出到P0口從而送入外部RAM的DPTR指出的單元中。第52頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展2、操作

40、片外數(shù)據(jù)存儲器所用指令的時序【8-5】試?yán)L制執(zhí)行MOVXA,DPTR的指令時序。設(shè)這條指令存放在外部ROM2080H單元,該代碼對應(yīng)的二進(jìn)制機(jī)器碼為EOH,且(DPTR)3658H,(3658H)=28H。解:指令的時序關(guān)系如圖8-15所示。 圖8-15執(zhí)行讀入指令MOVXA,DPTR的時序第53頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展2、操作片外數(shù)據(jù)存儲器所用指令的時序【例8-6】試?yán)L制執(zhí)行MOVX DPTR,A的指令時序,設(shè)這條指令存放在外部ROM 2066H單元,該指令對應(yīng)的機(jī)器碼為FOH,累加器A中存放的數(shù)值為6

41、8H,(DPTR)3022H。 圖8-16 執(zhí)行寫出指令MOVX DPTR,A的時序第54頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展2、操作片外數(shù)據(jù)存儲器所用指令的時序如圖8-15和8-16所示,外部數(shù)據(jù)存儲器的讀寫操作(執(zhí)行MOVX指令)包含兩個機(jī)器周期,第一個機(jī)器周期是從外部程序存儲器讀取指令操作碼,第二個機(jī)器周期才是從外部數(shù)據(jù)存儲器讀寫數(shù)據(jù)。第一個機(jī)器周期的時序與8.2.1節(jié)所述的外部程序存儲器讀操作時序相似。但由于從S4狀態(tài)起就維持高電平, S6狀態(tài)不再能讀外ROM指令,而是在S5狀態(tài)輸出外部數(shù)據(jù)存儲器的地址,利用

42、ALE下降沿鎖存。 若執(zhí)行的是“MOVX A, DPTR”或“MOVX DPTR,A” 指令,則ALE鎖存的P0口地址是DPL,同時在P2口上出現(xiàn)DPH。若執(zhí)行的是“MOVX A,Ri”或“MOVX Ri,A”指令,則P0口地址是Ri的內(nèi)容,而在P2口上出現(xiàn)的是單片機(jī)P2口鎖存器的內(nèi)容。第55頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展3、擴(kuò)展多片SRAM當(dāng)擴(kuò)展一片RAM不能滿足要求時,可以采用擴(kuò)展多片RAM的方案。這時所有芯片的片選端都必須適當(dāng)連接,要用到片內(nèi)尋址以外的高位地址線,以線選或譯碼方式提供片選信號。(1).譯碼

43、法擴(kuò)展多片RAM。圖8-17是采用譯碼方式擴(kuò)展4片6264 RAM的連接圖。6264的地址線有13根,低8位地址線連接鎖存器的輸出端,其余5根地址線直接接到P2.0P2.4。4片RAM的數(shù)據(jù)線直接與單片機(jī)的PO口連接;、端分別與單片機(jī)的和對應(yīng)連接。P2口剩下的2根高位地址線P2.6、P2.5(A14、A13)通過74LS139選通4片6264的片選信號,接到各片端。P2.7未用可取0也可取1。第56頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展第57頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的

44、擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展3、擴(kuò)展多片SRAM(2).線選法擴(kuò)展多片RAM圖8-18是采用線選方式擴(kuò)展2片62128RAM的連接圖。同樣單片機(jī)的P0口經(jīng)鎖存器與62128的低8位地址線相連接,其余6根地址線直接接到P2.5P2.0。2片RAM的數(shù)據(jù)線直接與單片機(jī)的PO口連接;、端分別與單片機(jī)的和對應(yīng)連接。P2口剩下的2根高位地址線P2.7、P2.6分別作為兩片62128的片選線。 第58頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法8.2.2 數(shù)據(jù)存儲器的擴(kuò)展第59頁,共128頁,2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)

45、展方法數(shù)據(jù)存儲器和程序存儲器的統(tǒng)一編址圖8-19是80C51擴(kuò)展2片27128和2片62128作為外部程序存儲器和外部數(shù)據(jù)存儲器的電路圖。地址總線與數(shù)據(jù)總線公用,ROM(27128)用到 ,RAM (62128)用到 ,采用片選方式產(chǎn)生片選信號。一片62128和一片27128共用一個片選信號,其地址是重疊的。圖中IC1 27128和IC3 62128的地址均為8000HBFFFH IC2 62128和IC4 62128的地址均為4000H7FFFH由于訪問片外ROM與訪問片外RAM所用的控制線不同,且 與 、 不會同時有效,所以雖然地址總線與數(shù)據(jù)總線公用,但不會引起混亂。第60頁,共128頁,

46、2022年,5月20日,2點48分,星期二8.2 外部存儲器的擴(kuò)展方法數(shù)據(jù)存儲器和程序存儲器的統(tǒng)一編址第61頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法8.3.1 對I/O口的編程指令由于80C51系列單片機(jī)沒有專用的訪問I/O接口的指令,所以借用單片機(jī)訪問外部RAM的6條MOVX類指令,即將I/O接口視為外部數(shù)據(jù)存儲器的單元進(jìn)行訪問。 第62頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 簡單并行I/O接口擴(kuò)展并行接口是使用最多的接口,80C51單片機(jī)共有四個8位并行I/O接口,但這些I/O口并不能完全提供

47、給用戶使用,實際只有P1口是留給用戶使用的,因此需要用戶進(jìn)行并行口的擴(kuò)展。并行口的擴(kuò)展一般都利用PO口來完成。第63頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 簡單并行I/O接口擴(kuò)展1、簡單并行口擴(kuò)展的要求在擴(kuò)展的I/O接口電路中輸出電路應(yīng)該具有數(shù)據(jù)鎖存器功能,以保證輸出數(shù)據(jù)能適應(yīng)慢速的接收設(shè)備。單片機(jī)讀入數(shù)據(jù)時,要求I/O接口電路能為數(shù)據(jù)輸入提供三態(tài)緩沖功能。P0是輸出和輸入的數(shù)據(jù)通道。利用鎖存器或三態(tài)門緩沖器可以實現(xiàn)簡單的并行I/O接口擴(kuò)展。常用的有74LS273、74LS244等。第64頁,共128頁,2022年,5月20日,2點48分,星期

48、二8.3 外部I/0口的擴(kuò)展方法 簡單并行I/O接口擴(kuò)展1、簡單并行口擴(kuò)展的要求知識點74LS244 : 74LS244為雙4位三態(tài)門緩沖器,三態(tài)門緩沖器常用作8位數(shù)據(jù)寄存器。它有兩個輸出控制端,均為低電平有效,分別控制2個4位三態(tài)門,使用時可將兩端連接在一起構(gòu)成8位數(shù)據(jù)控制端。知識點74LS273: 74LS273是帶有清除端CLR的8D觸發(fā)器。清除端為低電平時,輸出全部復(fù)位為0;只有在清除端CLR保持高電平時,才具有鎖存功能,鎖存控制端為11腳CLK,采用上升沿鎖存。因此74LS273作鎖存器時,與74LS373不同的是CPU 的ALE信號必須經(jīng)過反相器反相之后才能與74LS273的控制端

49、CLK 端相連。第65頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 簡單并行I/O接口擴(kuò)展2、簡單并行口擴(kuò)展電路 圖8-20是一個簡單的并行I/O口擴(kuò)展電路圖,它采用74LS244作為擴(kuò)展輸入,74LS273作為擴(kuò)展輸出。P0口為雙向數(shù)據(jù)線,既能從74LS244輸入數(shù)據(jù),又能將數(shù)據(jù)傳送給74LS273輸出。此電路可以實現(xiàn)按鍵開、合及信號的采集和LED指示燈亮、暗的控制。第66頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 簡單并行I/O接口擴(kuò)展輸入控制信號由P2.7和 合成,當(dāng)二者同時為低電平時,“或”門輸出

50、為0,選通74LS244,將外部信息輸入到總線。無鍵按下,輸入為全1;若按下某鍵,則對應(yīng)位輸入為0。輸出控制信號由 P2.7和 合成,當(dāng)二者同時為低電平時,“或”門輸出為0,當(dāng) 后沿到來時,74LS273 CLK端出現(xiàn)正跳變,將P0口數(shù)據(jù)鎖存到74LS273,其輸出控制發(fā)光二極管LED,當(dāng)某線輸出為低電平時,該線上的LED發(fā)光。由圖8-20可見,輸入控制和輸出控制都是在P2.7為0時有效,它們的端口地址為7FFFH,即輸入、輸出占有相同的地址空間,但因輸入和輸出分別由 和 信號控制,因此不會發(fā)生沖突。第67頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法

51、 簡單并行I/O接口擴(kuò)展【例8-7】對于圖8-20,若實現(xiàn)按下一個任意鍵,對應(yīng)的LED發(fā)光(如按下S0號鍵,讓LED0點亮),試設(shè)計程序。解:程序段如下:LOOP:MOV DPTR ,#7FFFH ;指向擴(kuò)展I/O口地址 MOVX A, DPTR ;由244讀入數(shù)據(jù),檢測按鍵 MOVX DPTR, A ;向273輸出數(shù)據(jù),驅(qū)動LED第68頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)以上的簡單接口,雖然可以實現(xiàn)數(shù)據(jù)的輸入或輸出,但它們的功能一旦確定,就不能再變動。如果希望一個接口既可以作為輸入接口、又可

52、以作為輸出接口,就必須使用可編程接口。所謂可編程接口,就是指這些接口的功能可以通過軟件程序進(jìn)行設(shè)定。常用的并行可編程I/O接口有81C55、82C55等。81C55是Intel公司生產(chǎn)的一種通用的可編程并行接口芯片,其除了能擴(kuò)展并行口外,還能夠工作在RAM存儲器和定時計數(shù)器工作方式。第69頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)1、81C55的基本結(jié)構(gòu)及引腳功能(1). 81C55的基本結(jié)構(gòu)81C55共有三個基本組成部分。第一部分為可編程I/O接口,共有三個口 ,其中二個口(A口和B口)為8位口,

53、一個口(C口)為6位口;第二部分為256B的RAM;第三部分為1個14位可編程減1定時/計數(shù)器。使用81C55可以方便的進(jìn)行I/O口、RAM及定時/計數(shù)器的擴(kuò)展,其組成結(jié)構(gòu)及引腳如圖8-21所示。第70頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)1、81C55的基本結(jié)構(gòu)及引腳功能(1). 81C55的基本結(jié)構(gòu)第71頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)1、81C55的基本結(jié)構(gòu)及引腳功能(1). 81C5

54、5的基本結(jié)構(gòu)81C55芯片采取40引腳雙列直插式封裝,單一的+5V電源,其引腳排列如圖8-21(a)所示,內(nèi)部電路的邏輯框圖如圖8-21(b)所示。第72頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)1、81C55的基本結(jié)構(gòu)及引腳功能(2). 81C55的引腳功能81C55按其引腳功能大至可分為:(1)電源線兩條。為5V電源輸入線,接地。(2)地址數(shù)據(jù)線:AD7AD0(8條)是低8位地址線和數(shù)據(jù)線共用輸入口,當(dāng)ALE=1時輸入的是地址信息,否則是數(shù)據(jù)信息。雙向地址/數(shù)據(jù)總線,分時傳送單片機(jī)和81C55之

55、間的地址、數(shù)據(jù)、命令、狀態(tài)信息。其與單片機(jī)的PO口連接。(3)端口線:I/O總線(22條),包括PA、PB口的各8根和PC口的6根。PA7PA0為通用I/O線,用于PA口及與其連接的外部設(shè)備之間的數(shù)據(jù)傳送,數(shù)據(jù)傳送方向由寫入81C55的控制字決定;PB7PB0為通用I/O線,用于PB口及與其連接的外部設(shè)備之間的數(shù)據(jù)傳送,數(shù)據(jù)傳送方向也由寫入81C55的控制字決定;PC5PC0一方面可工作在通用I/O方式下,用作傳送I/O數(shù)據(jù);在需要有應(yīng)答聯(lián)絡(luò)信號的傳送方式下,用作傳送命令/狀態(tài)信息。第73頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81

56、C55可編程I/O接口及擴(kuò)展技術(shù)1、81C55的基本結(jié)構(gòu)及引腳功能(4)控制引腳ALE:為允許地址輸入線,高電平有效。在ALE下降沿80C51單片機(jī)從AD7AD0上傳送的地址鎖存到81C55片內(nèi)“地址鎖存器”,否則81C55的鎖存器處于封鎖狀態(tài)。81C55的ALE常和80C51的ALE端相連。81C55的讀控制信號 :當(dāng) , 時,81C55處于被讀出數(shù)據(jù)狀態(tài),即數(shù)據(jù)從81C55進(jìn)入單片機(jī)。81C55的寫控制信號 :當(dāng) , 時81C55處于被寫入數(shù)據(jù)狀態(tài),即數(shù)據(jù)從單片機(jī)進(jìn)入81C55。81C55的片選信號 : 則80C51單片機(jī)選中81C55工作。I/O與RAM選擇信號IO/ :這是一個特殊信號

57、,因為81C55內(nèi)部的I/O接口與RAM是分開編址的,因此要求用控制信號進(jìn)行區(qū)分。IO/ =0,對RAM 進(jìn)行讀寫;IO/ =1,對I/O 口進(jìn)行讀寫。第74頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)1、81C55的基本結(jié)構(gòu)及引腳功能(4)控制引腳復(fù)位信號RESET:81C55以600ns的正脈沖進(jìn)行復(fù)位,復(fù)位后A、B、C口均為輸入方式。定時/計數(shù)器脈沖輸入線TIMER IN:是外界向81C55輸入計數(shù)脈沖信號的輸入端,其上跳沿用于對81C55片內(nèi)的14位計數(shù)器減1。定時/計數(shù)器的脈沖輸出線 :是8

58、1C55向外部設(shè)備輸出脈沖和方波的輸出端。當(dāng)14位計數(shù)器減為0時就可以在該引線上述產(chǎn)生脈沖或方波??梢暂敵鰡蝹€脈沖、多個連續(xù)脈沖、單個方波及連續(xù)方波,通過設(shè)置定時/計數(shù)器的工作方式來產(chǎn)生對應(yīng)的波形。第75頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)2、81C55的工作方式與基本控制狀態(tài)寄存器(1). 81C55控制字寄存器81C55有一個控制字寄存器和一個狀態(tài)標(biāo)志寄存器。控制字寄存器只能寫入不能讀出,共8位。其低四位主要用來設(shè)置PA、PB、PC三個端口的工作方式;D5、D4用來確定A口、B口以選通輸入

59、/輸出方式工作時是否允許中斷請求;D7、D6用來設(shè)置計數(shù)器的操作。控制字的位定義如圖8-22所示:第76頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)2、81C55的工作方式與基本控制狀態(tài)寄存器(1). 81C55控制字寄存器第77頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)2、81C55的工作方式與基本控制狀態(tài)寄存器(2). 81C55狀態(tài)字寄存器81C55狀態(tài)字寄存器用來存入PA口和PB口的狀態(tài)標(biāo)志,它的地

60、址與控制寄存器地址相同,80C51單片機(jī)只能對其讀出,不能寫入。81C55狀態(tài)字寄存器其位定義如圖8-23所示。其中D6位的說明如下:D6位為計數(shù)器中斷狀態(tài)標(biāo)志位TIMER。如計數(shù)器正在計數(shù)或開始計數(shù)前,則D60;若計數(shù)器的計數(shù)長度已經(jīng)計滿,即計數(shù)器減為0,則D6=1,它可作為計數(shù)器中斷請求標(biāo)志。在硬件復(fù)位或?qū)λx出后又恢復(fù)為0。 第78頁,共128頁,2022年,5月20日,2點48分,星期二8.3 外部I/0口的擴(kuò)展方法 8.3.3 81C55可編程I/O接口及擴(kuò)展技術(shù)2、81C55的工作方式與基本控制狀態(tài)寄存器(2). 81C55狀態(tài)字寄存器圖8-23 81C55狀態(tài)字的位定義第79頁,

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論