第7章 AT89C51系統(tǒng)擴展技術_第1頁
第7章 AT89C51系統(tǒng)擴展技術_第2頁
第7章 AT89C51系統(tǒng)擴展技術_第3頁
第7章 AT89C51系統(tǒng)擴展技術_第4頁
第7章 AT89C51系統(tǒng)擴展技術_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

北京世紀智源教育科技有限公司·1·第七章AT89C51系統(tǒng)擴展技術學習目標了解AT89C51單片機的外部三總線的構成;熟悉AT89C51單片機存儲器ROM和RAM擴充的方法;熟悉應用8255進行單片機I/O的擴展;掌握單片機外接兩種非編碼鍵盤;掌握單片機外接靜態(tài)、動態(tài)顯示的LED數(shù)碼顯示器;掌握單片機外接LCD顯示器;理解單片機外接A/D、D/A電路的工作原理和使用方法。北京世紀智源教育科技有限公司·3·本章知識結構北京世紀智源教育科技有限公司·4·7.1AT89C51接口擴展原理系統(tǒng)擴展是指單片機內(nèi)部各功能部件不能滿足工程應用系統(tǒng)要求時,在單片機外部連接相應的電路芯片來適應工程應用系統(tǒng)要求。AT89C51單片機系統(tǒng)擴展的方法分為并行擴展法和串行擴展法兩種。并行擴展法是指利用單片機芯片外部引腳構成的三總線結構,即地址總線、數(shù)據(jù)總線和控制總線(AB、DB和CB)。單片機通過這三組總線與外部電路芯片進行連接,進行相應的系統(tǒng)擴展.串行擴展法主要是利用SPI三線總線或I2C雙線總線等串行通信標準進行系統(tǒng)模擬擴展。北京世紀智源教育科技有限公司·5·7.1.1并行接口擴展原理圖7.2AT89C51單片機外部三總線構成原理圖AT89C51單片機的部分外引腳構成了計算機三總線結構,可以進行單片機的并行接口擴展。如圖7.2所示。北京世紀智源教育科技有限公司·6·①地址總線(AB)地址總線用于傳送單片機輸出的地址信號,寬度為16位,可尋址儲存空間為64KB。地址總線由P0口提供低8位地址A0~A7,P2口提供高8位地址A8~A15。由于P0口是地址總線低8位A0~A7和8位數(shù)據(jù)線D0~D7的共用口,分時使用地址線和數(shù)據(jù)線,所以P0口輸出低8位地址數(shù)據(jù)必須用8位鎖存器鎖存。一般在此選用74LS373作為地址鎖存器,鎖存器的地址鎖存控制信號由控制信號ALE提供。P2口具有輸出鎖存功能,故不需要外加鎖存器。P0、P2口在系統(tǒng)擴展中用作地址總線后,就不能作為一般通用I/O口使用。北京世紀智源教育科技有限公司·7·②數(shù)據(jù)總線(DB)數(shù)據(jù)總線由三態(tài)雙向口P0口提供,寬度為8位,用D0~D7表示,是應用系統(tǒng)中使用最為頻繁的通道。數(shù)據(jù)總線為雙向總線,單片機與外部電路交換的數(shù)據(jù)、指令和信息,絕大多數(shù)是通過P0口傳送的。注意:數(shù)據(jù)總線是并聯(lián)到多個支路外圍電路芯片的數(shù)據(jù)線上,而在同一時間里,僅允許一個支路的電路芯片是有效的數(shù)據(jù)傳送通道。具體哪個支路的數(shù)據(jù)通道有效,則由地址線控制各個芯片的片選端口來選擇。北京世紀智源教育科技有限公司·8·③控制總線(CB)控制總線是一組控制及狀態(tài)信號線,有從單片機發(fā)出的,也有由外圍部件返回的,傳輸方向各不相同,但任意一根控制線都是單向的。?ALE:輸出P0口上地址與數(shù)據(jù)隔離信號,用于鎖存P0口輸出的低8位地址。通常,ALE信號的下降沿控制鎖存器來鎖存地址數(shù)據(jù),通常選擇下降沿選通的鎖存器做低8位地址鎖存器。?/PSEN:輸出,用于讀片外程序存儲器(EPROM)中的數(shù)據(jù)?!白x”取EPROM中數(shù)據(jù)(指令)時,不能用“/RD”信號。?/EA:輸入,用于選擇片內(nèi)或片外程序存儲器。當/EA=0時,只訪問外部程序存儲器。當/EA=1時,先訪問內(nèi)部程序存儲器,內(nèi)部程序存儲器全部訪問完之后,再訪問外部程序存儲器。?/WR、/RD:輸出,用于片外數(shù)據(jù)存儲器(RAM)的讀、寫。當執(zhí)行片外數(shù)據(jù)存儲器操作指令MOVX時,自動生成/WR、/RD控制信號。北京世紀智源教育科技有限公司·9·AT89C51單片機并行擴展接口概況請見圖7.3

AT89C51單片機通過三總線擴展外部設備裝置的結構示意圖。常用的地址鎖存器如圖7.19所示。?74LS373:8D鎖存緩沖器,鎖存允許信號G是電平鎖存。當G從高電平轉為低電平時,將其輸入端的數(shù)據(jù)鎖存在輸出端。?74LS273:8D鎖存器,CLK上升沿鎖存。當ALE出現(xiàn)下降沿后,8D鎖存器74LS373的輸出即為A0~A7,這時P0口上出現(xiàn)的是數(shù)據(jù),實現(xiàn)了地址低8位和數(shù)據(jù)線的分離。注意:在使用74LS273時,為了與ALE下降沿出現(xiàn)地址信號相一致,需增加一個反相器。北京世紀智源教育科技有限公司·10·并行擴展方式的編址技術在單片機應用系統(tǒng)中,為了唯一地選擇片外某一支路存儲單元或I/O端口,需要進行兩次選擇。一是首先找到并選擇該支路存儲單元或I/O端口所在的電路芯片,稱為“片選”;二是通過對該支路電路芯片內(nèi)部所具有的地址線進行譯碼,然后選擇并確定唯一的存儲單元或I/O端口,稱為“字選”?!捌x”保證每次讀或寫時,只選中某一片存儲器芯片或I/O接口芯片。常用的方法有四種:“線選法”、“地址譯碼法”、應用“可編程器件PAL/GAL”或“I/O口線”。北京世紀智源教育科技有限公司·11·(1)線選法:是利用單片微機最高幾位空余的地址線中一根(如P2.7)作為某一片存儲器芯片或I/O接口芯片的“片選”控制線。用于應用系統(tǒng)中擴展芯片較少的場合。(2)譯碼法:用譯碼器對空余的高位地址線進行譯碼,而譯碼器的輸出作為“片選”控制線。常用的譯碼器有3/8譯碼器74LS138、雙2/4譯碼器74LS139、4/16譯碼器74LS154等。北京世紀智源教育科技有限公司·12·7.1.2串行接口擴展原理AT89C51單片機常用的串行接口擴展方法主要是利用一些廣泛應用的串行通信標準。這里主要介紹SPI(SerialPeriPheralInterface)三線總線和I2C

(Inter-IntegratedCircuit)二線總線。1.SPI總線結構SPI總線是一種同步串行外設接口,可直接使單片機與多種標準外圍器件直接接口,外圍設備如FLASHRAM、網(wǎng)絡控制器、LCD顯示驅動器、A/D轉換器等和單片機以串行通信方式進行信息交換。SPI系統(tǒng)有如下的特性:全雙工、三線同步傳送;主、從機工作方式;可程控的主機位傳送速率、時鐘發(fā)送方向、極性和相位;發(fā)送完成產(chǎn)生中斷標志;寫沖突產(chǎn)生保護標志。北京世紀智源教育科技有限公司·13·圖7.4系統(tǒng)擴展SPI總線的組成示意圖

多數(shù)場合,使用一個單片即作為主機,控制數(shù)據(jù)向一個或多個從機(外圍器件)的傳送。一般SPI系統(tǒng)至少使用四個I/O引腳,即系統(tǒng)只包括一個主機一個從機。請見圖7.4系統(tǒng)擴展SPI總線的組成示意圖。北京世紀智源教育科技有限公司·14·MISO:主機輸入/從機輸出數(shù)據(jù)線;MOSI:主機輸出/從機輸入數(shù)據(jù)線;SCLK:串行時鐘線;/SS:從機選擇線。(有的SPI接口芯片帶有中斷信號線INT或INT、有的SPI接口芯片沒有主機輸出/從機輸入數(shù)據(jù)線MOSI)。

由于SPI系統(tǒng)總線一共只需3~4位數(shù)據(jù)線和控制即可實現(xiàn)與具有SPI總線接口功能的各種I/O器件進行接口,而擴展并行總線則需要8根數(shù)據(jù)線、8~16位地址線、2~3位控制線,因此,采用SPI總線接口可以簡化電路設計,節(jié)省很多常規(guī)電路中的接口器件和I/O口線,提高設計的可靠性。

可見,在MCS51系列等不具有SPI接口的單片機組成的智能儀器和工業(yè)測控系統(tǒng)中,當傳輸速度要求不是太高時,使用SPI總線可以增加應用系統(tǒng)接口器件的種類,提高應用系統(tǒng)的性能北京世紀智源教育科技有限公司·15·

2.I2C總線結構使用兩根信號線(數(shù)據(jù)SDA和時鐘SCL)串行的方法進行信息傳送,并允許若干兼容器件共享的雙線總線,稱為I2C總線。SDA:串行數(shù)據(jù)線,用于傳輸雙向的數(shù)據(jù)。SCL:串行時鐘線,用于傳輸時鐘信號,在傳輸時用來同步串行數(shù)據(jù)線上的數(shù)據(jù)。

在CPU與被控IC之間、IC與IC之間進行雙向傳送,最高傳送速率100kbps。各種被控制電路均并聯(lián)在這條總線上,但就像電話機一樣只有撥通各自的號碼才能工作,所以每個電路和模塊都有唯一的地址,在信息的傳輸過程中,I2C總線上并接的每一模塊電路既是主控器(或被控器),又是發(fā)送器(或接收器),這取決于它所要完成的功能。北京世紀智源教育科技有限公司·16·圖7.5系統(tǒng)擴展I2C總線的組成示意圖北京世紀智源教育科技有限公司·17·7.2外部存儲器的擴充1.外部RAM的擴充片外數(shù)據(jù)存儲器擴展時的總線功能和讀、寫操作時序。80C51單片微機,對片外數(shù)據(jù)存儲器讀、寫操作的指令有以下4條: MOVXA,@Ri ;片外RAM→(A),讀(/RD)操作 MOVX@Ri,A ;(A)→片外RAM,寫(/WR)操作這組指令由于@Ri只能提供8位地址,因此,僅能擴展256個字節(jié)的片外RAM。 MOVXA,@DPTR ;片外RAM→(A),讀操作 MOVX@DPTR,A ;(A)→片外RAM,寫操作這組指令由于@DPTR能提供16位地址,因此,可以擴展64KB的片外RAM。北京世紀智源教育科技有限公司·18·擴展片外數(shù)據(jù)存儲器的硬件電路在80C51的擴展系統(tǒng)中,片外數(shù)據(jù)存儲器一般由隨機存取存儲器組成,最大可擴展64KB。

例:用一片6264擴展8KB片外數(shù)據(jù)存儲器,其硬件電路如圖7.6所示:北京世紀智源教育科技有限公司·19·7.2.2外部ROM的擴充程序存儲器擴展時的總線功能和操作時序/EA為片外程序存儲器讀選擇信號。正常運行時,該引腳不能浮空。根據(jù)連接電平的不同,單片微機有兩種取指過程:(1)當/EA=1時,80C51單片微機所有片內(nèi)程序存儲器有效。當程序計數(shù)器PC運行于片內(nèi)程序存儲器的尋址范圍內(nèi)(對80C51、87C51、89C51為0000H~0FFFH,共4KB;對80C52、87C52/89C52為0000H~1FFFH,共8KB)時,P0口、P2口及/PSEN線沒有信號輸出;當程序計數(shù)器PC的值超出上述范圍后,P0口、P2口及/PSEN線才有信號輸出。80C51訪問片外程序存儲器時,使用如下的信號:P0口:分時輸出程序存儲器的低8位地址和8位數(shù)據(jù)。北京世紀智源教育科技有限公司·20·ALE:輸出,在ALE的下降沿時,P0口上出現(xiàn)穩(wěn)定的程序存儲器的低8位地址,用ALE信號鎖存這低8位地址。P2口:在整個取指周期中,輸出穩(wěn)定的程序存儲器的高8位地址。/PSEN線:輸出,低電平有效。在ALE的下降沿之后,由高變?yōu)榈?,此時片外程序存儲器的內(nèi)容(指令字)送到P0口,而后在/PSEN的上升沿將指令字送入指令寄存器。因而,/PSEN信號作為片外程序存儲器的“讀”選通信號。(2)當/EA=0時,80C51單片微機所有片內(nèi)程序存儲器無效,只能訪問片外程序存儲器。伴隨著單片微機復位,P0口、P2口及/PSEN線均有信號輸出。北京世紀智源教育科技有限公司·21·擴展片外程序存儲器的硬件電路例:擴展64K×8位片外程序存儲器其硬件電路原理圖如圖7.7所示。北京世紀智源教育科技有限公司·22·7.3單片機顯示接口應用7.3.1LED顯示應用

1.LED顯示器的工作原理發(fā)光二極管一般為砷化鎵半導體二極管,在發(fā)光二極管兩端加上正向電壓,則發(fā)光二極管發(fā)光。而數(shù)碼管LED是由若干發(fā)光二極管組合而成的,一般的“8”字型LED由“a,b,c,d,e,f,g,dp”8個發(fā)光二極管組成,如圖7.8所示,每個發(fā)光二極管稱為一字段。七段LED有共陰極和共陽極兩種結構形式。顯示電路一般分為靜態(tài)顯示和動態(tài)顯示兩類。北京世紀智源教育科技有限公司·23·共陽極接法 把發(fā)光二極管的陽極連在一起構成公共陽極。使用時公共陽極接VCC,當某陰極端為低電平時,該段發(fā)光二極管就導通發(fā)光。共陰極接法 把發(fā)光二極管的陰極連在一起構成公共陰極。使用時公共陰極接GND,當某陽極端為高電平時,該段發(fā)光二極管就導通發(fā)光。七段LED包含七段發(fā)光二極管和小數(shù)位發(fā)光二極管,共需8位I/O口線控制,其代碼為一個字節(jié)。七段LED字型碼見表7-1所示。北京世紀智源教育科技有限公司·24·LED顯示電路由N個LED顯示塊可構成N位LED顯示器,需要N根位選線和8×N根段選線。顯示電路主要有靜態(tài)顯示和動態(tài)顯示二種。根據(jù)顯示電路不同,位選線和段選線的聯(lián)接方式不同,實際所需的位選線和段選線的根數(shù)也不一樣。(1)

靜態(tài)顯示電路LED顯示器工作在靜態(tài)顯示時,其公共陽極(或陰極)接VCC(或GND),一直處于顯示有效狀態(tài),所以每一位的顯示內(nèi)容必須由鎖存器加以鎖存,顯示各位相互獨立。靜態(tài)顯示電路如圖7.9所示。北京世紀智源教育科技有限公司·25·(2)

動態(tài)顯示電路

將所有位的段選線的同名端聯(lián)在一起,由一個8位I/O口控制,形成段選線的多位復用。而各位的公共陽極或公共陰極則分別由相應的I/O口線控制,實現(xiàn)各位的分時選通,即某一時刻只有被選通位是能顯示相應的字符,而其他所有位都是熄滅的。由于人眼有視覺暫留效應,只要每位顯示間隔足夠短,則會造成多位同時點亮的假象。需要單片機不間斷地對LED顯示器進行控制刷新,用大量的CPU時間來換取輔助元件的減少以及顯示功耗的降低。動態(tài)掃描顯示實驗。電路由6個共陰極LED數(shù)碼管構成。單片機的P0口輸出顯示段碼,經(jīng)由一片74LS245驅動輸出給LED數(shù)碼管,由P1口輸出位碼,經(jīng)由74LS06輸出給LED數(shù)碼管。動態(tài)顯示電路請見圖7.106位LED數(shù)碼管動態(tài)掃描顯示電路原理圖。北京世紀智源教育科技有限公司·26·7.3.2LCD顯示應用LCD液晶顯示器常見的有二種形式,一種是液晶顯示器件,包括前后偏振片在內(nèi)的液晶顯示器件,簡稱LCD;另一種是液晶顯示模塊,包括組裝好的線路板、LCD驅動及控制電路及其它附件,簡稱LCM。液晶顯示器顯示原理與LED不同,其本身并不發(fā)光,必須要通過環(huán)境光來顯示信息,因此功耗低,在環(huán)境光不足,達不到顯示要求時,可選用背光源來保證LCD顯示信息。LCD按不同的顯示特征,劃分為段式LCD、點陣式LCD;或字符型LCD,圖形LCD;或單色LCD,彩色LCD。如圖7.11所示,是采用點陣為122×32液晶顯示屏進行顯示的電路原理圖。北京世紀智源教育科技有限公司·27·7.4單片機鍵盤接口應用在測量控制系統(tǒng)中,通常是用單片機進行實時控制和數(shù)據(jù)處理的。作為實現(xiàn)人機對話,鍵盤是個性價比高而最常用的功能配置。利用按鍵可以實現(xiàn)向單片機輸入數(shù)據(jù)、傳送命令、功能切換等,是人工干預單片機應用系統(tǒng)的主要手段之一。鍵盤有兩種類型:編碼鍵盤和非編碼鍵盤。編碼鍵盤具有必要的硬件芯片,鍵按下后便產(chǎn)生對應的代碼,在新鍵按下之前,一直保持該碼.鍵的數(shù)目增多時,硬件芯片等電路變得復雜。非編碼鍵盤只有兩個動作狀態(tài):閉合或斷開,由1或0來表示。單片機應用系統(tǒng)中用得較多的是非編碼鍵盤。非編碼鍵盤可分為兩類:獨立式鍵盤和矩陣式鍵盤。北京世紀智源教育科技有限公司·28·7.4.1獨立式鍵盤應用

獨立式鍵盤是最簡單的鍵盤電路,各個鍵相互獨立,每個按鍵獨立地與一根數(shù)據(jù)輸入線相連接。按CPU如何得知鍵盤的動作,又分為中斷方式獨立鍵盤和查詢方式獨立鍵盤。中斷方式獨立鍵盤,任何一個按鍵按下時,通過門電路都會向CPU申請中斷,在中斷服務程序中,讀入鍵盤連接口的值,從而判斷是哪一個按鍵被按下。查詢方式獨立鍵盤,CPU循環(huán)不間斷地查詢鍵盤連接口的狀態(tài),當任何一個鍵被壓下時,與之連接的輸入口線將被拉成低電平。北京世紀智源教育科技有限公司·29·需要注意的是:對按鍵是否被按下,需采用軟件消抖動的辦法,以消除按鍵在閉合和斷開瞬間所伴隨有一連串抖動所帶來的不利影響。獨立式鍵盤的優(yōu)點是結構簡單、使用方便,缺點是在按鍵增多時所占用的I/O口線也要增加。不適用于按鍵較多的單片機應用系統(tǒng)中。

圖7.12是8位查詢式獨立鍵盤組件電路原理圖。北京世紀智源教育科技有限公司·30·7.4.2.矩陣式鍵盤的應用如圖7.13所示,若有4根行線,4根列線,則構成4×4鍵盤,最多可定義16個按鍵。矩陣式鍵盤的工作過程①矩陣式鍵盤鍵掃描。CPU先通過輸出口P1.4~P1.7使所有列線輸出為低電平,然后從輸入口P1.0~P1.3讀入所有行線的狀態(tài)。若行線狀態(tài)都為高電平,則說明沒有鍵被按下,若行線中有低電平,則表明有鍵被按下。②判斷按鍵位置。CPU通過輸出口使列線從低位至高位逐位變低電平輸出,每次均讀入行線的狀態(tài),以確定那條列線為“0”狀態(tài)。由行、列線的狀態(tài)就可判斷是哪一個鍵被按下,即行、列交叉處。③當判斷出哪個鍵按下后,程序轉入相應的鍵處理程序。北京世紀智源教育科技有限公司·31·矩陣式鍵盤三種鍵掃描的方式①程控掃描方式:CPU的控制一旦進入監(jiān)控程序,將反復不斷地掃描鍵盤,等待輸入命令或數(shù)據(jù)。②定時掃描方式:在初始化程序中對定時器/計數(shù)器進行編程,使之產(chǎn)生10ms的定時中斷,CPU響應定時中斷,執(zhí)行中斷服務程序,對鍵盤掃描一遍,檢查鍵盤的狀態(tài),實現(xiàn)對鍵盤的定時掃描。③中斷掃描方式:當鍵位上有鍵壓下時,由硬件電路產(chǎn)生中斷請求,CPU響應中斷,執(zhí)行中斷服務程序,判斷按下的鍵的鍵號,根據(jù)鍵的定義(數(shù)字鍵或功能鍵)作相應的處理。北京世紀智源教育科技有限公司·32·7.5單片機I/O接口應用及擴展在計算機系統(tǒng)中,數(shù)據(jù)操作分別為兩類:一類是CPU和存儲器之間的數(shù)據(jù)讀/寫操作;另一類則是CPU和外部之間的數(shù)據(jù)輸入/輸出(I/O)操作。CPU和存儲器之間的數(shù)據(jù)讀/寫操作我們之前已經(jīng)學習過,本節(jié)我們將討論CPU與外部設備之間的I/O操作。在數(shù)據(jù)的I/O傳送中,接口電路主要有如下幾項功能:北京世紀智源教育科技有限公司·33·

①速度協(xié)調(diào)。單片機往往要比I/O設備快得多。速度上的差異,使得數(shù)據(jù)的I/O傳送只能以異步方式進行。在接口電路中要設置鎖存器,保證CPU輸出的數(shù)據(jù)可以被輸出設備接收。從而解決單片機與I/O設備的速度協(xié)調(diào)問題。②設置輸入設備的三態(tài)緩沖電路。輸入設備向CPU傳送的數(shù)據(jù)也要通過數(shù)據(jù)總線,為了維護數(shù)據(jù)總線上數(shù)據(jù)傳送的有秩序,因此只允許當前時刻正在進行數(shù)據(jù)傳送的數(shù)據(jù)源使用數(shù)據(jù)總線,其它數(shù)據(jù)源都必須與數(shù)據(jù)總線處于隔離狀態(tài)。③I/O信號轉換和數(shù)據(jù)轉換。單片機引腳使用的電壓數(shù)字信號,不同于I/O設備使用的信號類型(如模擬或數(shù)字、電流或電壓等)有些設備要使用接口電路進行數(shù)據(jù)信號的轉換。其中包括:模數(shù)轉換、數(shù)模轉換、串并轉換和并串轉換等。北京世紀智源教育科技有限公司·34·7.5.1單片機I/O接口直接應用

AT89C51單片機具備4個八位口,其中,P0口為雙向口,P1、P2、P3口為準雙向口,都具有I/O操作功能,都可以進行簡單的I/O口應用。這4個I/0口又屬于內(nèi)部的特殊功能寄存器SFR,對這些I/O口可以進行非常方便操作,有豐富的軟件指令可供選擇,匯總如下:

1.I/O口的數(shù)據(jù)傳送指令

向口輸出數(shù)據(jù)的指令有:

MOV Px,A MOV Px,Rn MOV Px,@Ri MOV Px,direct

從口輸入數(shù)據(jù)的指令有:

MOV A,Px MOV Rn,Px MOV @Ri,Px MOV direct,Px北京世紀智源教育科技有限公司·35·2.I/O口的位操作指令位傳送指令 MOV Px.y,C位清0指令 CLR Px.y

位置1指令 SETB Px.y

位取反 CPL Px.y

位為1轉移 JB Px.y,rel位為0轉移 JNB Px.y,rel位為1轉移并清零

JBC Px.y,rel3.I/O口其它操作指令

邏輯與指令 ANL Px,A

邏輯和指令 ORL Px,A

邏輯異與指令

XRL Px,A

加1指令 INC Px

減1指令 DEC Px

減1條件轉移指令DJNZ Px,rel

數(shù)值比較轉移指令

CJNE A,Px,rel

使用單片微機本身的I/O口,能完成一些簡單的數(shù)據(jù)I/O應用。北京世紀智源教育科技有限公司·36·7.5.2單片機I/O接口的擴充應用北京世紀智源教育科技有限公司·37·在很多實際應用系統(tǒng)中,有些開關量或并行數(shù)據(jù)需要直接輸入/輸出,如鍵盤,數(shù)碼管等,主機可以隨時與這些設備進行信息交換。在這種情況下,應該遵循“輸出鎖存,輸入三態(tài)”與總線相連的原則。輸出口的主要功能是進行數(shù)據(jù)保持(鎖存),一般應用鎖存器電路芯片實現(xiàn)??勺鳛?位I/O端口擴展的芯片主要有74LS373、74LS377等。輸入口則需要采用8位三態(tài)門控制電路芯片,如74LS244等。7.5.38255可編程并行I/O接口擴展應用北京世紀智源教育科技有限公司·38·所謂可編程接口芯片是指其功能可由單片機的指令來加以改變,通過編程,可以使接口芯片執(zhí)行不同的接口功能。在單片機I/O擴展中常用的并行可編程接口芯片有:8255

可編程通用并行接口芯片8155帶RAM和定時器、計數(shù)器的可編程并行接口芯片8279

可編程鍵盤/顯示器接口芯片8255是由Intel公司生產(chǎn)的通用可編程并行接口芯片,它有3個8位并行I/O接口,具有三種工作方式,可以通過編程設置這三個端口是作為輸入口還是作為輸出口等功能。北京世紀智源教育科技有限公司·39·系統(tǒng)I/O擴展8255電路的原理圖如圖7.14所示。8255是一個40引腳雙列直插(DIP40)的集成電路芯片,它與單片機相連的引腳:D0~D7:雙向數(shù)據(jù)線,三態(tài),和單片機P0口數(shù)據(jù)總線相連。/CS—片選信號(低電平有效)/RD—讀信號(低電平有效)/WR—寫信號(低電平有效)A0、A1—端口選擇信號。RESET—復位信號(高電平有效)。復位之后,控制寄存器清除,各端口被置為輸入方式。

北京世紀智源教育科技有限公司·40·讀寫控制邏輯用于實現(xiàn)8255的硬件管理,其內(nèi)容包括芯片的選擇,口的尋址以及規(guī)定各端口和單片微機之間的數(shù)據(jù)傳送方向。詳見表7-2

8255A接口工作狀態(tài)選擇表。8255由以下4個部分組成:數(shù)據(jù)端口。8255有三個8位數(shù)據(jù)端口:端口A,端口B和端口C。其中,A口和B口是單純的數(shù)據(jù)口,而C口既可以用做數(shù)據(jù)口,又可以作為控制口,來實現(xiàn)對A口和B口的控制。北京世紀智源教育科技有限公司·41·

A組和B組的控制電路。這兩組控制電路可以根據(jù)CPU的命令字來控制8255的工作方式。它們的控制寄存器可以接收CPU發(fā)出的控制字,并根據(jù)命令字分別決定兩組的工作方式。它們還可以根據(jù)CPU的命令字對端口C的每一位實現(xiàn)按位“復位”或“置位”。數(shù)據(jù)總線緩沖器。數(shù)據(jù)總線緩沖器為8位雙向三態(tài)緩沖器,可以直接與AT89C51的P0口數(shù)據(jù)線相連,擴展系統(tǒng)中,與I/O操作有關的數(shù)據(jù),控制字和狀態(tài)信息都是通過該緩沖器進行傳送。讀/寫控制邏輯。讀/寫控制邏輯電路負責管理8255的數(shù)據(jù)傳輸過程。它接收及其他來自系統(tǒng)地址總線的信號A0、A1和控制總線信號、和RESET,將這些信號進行組合后,得到對A、B兩組控制部件的控制命令,并將命令發(fā)送給這兩個部件,從而完成對數(shù)據(jù)、狀態(tài)信息和控制信息的傳輸。北京世紀智源教育科技有限公司·42·8255的控制字8255是可編程接口芯片,使用8255時,必須要把控制字寫入8255的控制字寄存器。8255的控制字有兩種:工作方式控制字和C口按位置位/復位控制字。工作方式控制字,工作方式控制字用于確定各口的工作方式及數(shù)據(jù)傳送方向;端口C按位置位/復位控制字。北京世紀智源教育科技有限公司·43·對于工作方式控制字要說明的幾點:端口A可以工作于方式0、方式1、方式2共三種工作方式,可以作為輸入端口或輸出端口;端口B可以工作于方式0、方式1兩種工作方式,可以作為輸入端口或輸出端口;在方式1或方式2下,對C口的定義(輸入或輸出)不影響作為聯(lián)絡線使用的C口各位功能。最高位(D7)是特征位。固定為1,D7=1,標明是設定方式選擇控制字。D7=0,表示是端口C按位置位/復位控制字。D3、D2、D1選擇端口C要進行置位/復位操作的。北京世紀智源教育科技有限公司·44·8255的工作方式8255有三種工作方式:方式0、方式1和方式2。這些工作方式可以利用軟件編程來設定。①方式0(基本輸入/輸出方式)不需要任何選通信號,A口、B口及C口的高4位和低4位都可以設定為輸入或輸出,各個口可以設定為輸入和輸出的任何組合。方式0適用于無條件的數(shù)據(jù)傳輸,也可以把C口的某一位作為狀態(tài)位,實現(xiàn)查詢式的數(shù)據(jù)傳送。北京世紀智源教育科技有限公司·45·②方式1(選通輸入/輸出方式)也稱為應答方式。在這種工作方式下,A口和B口分別用于數(shù)據(jù)的輸入/輸出。而C口則作為數(shù)據(jù)傳送的聯(lián)絡信號。方式1適用于查詢方式或中斷方式的數(shù)據(jù)輸入/輸出。③方式2(雙向數(shù)據(jù)傳送方式)只有端口A才能選擇這種工作方式。在這種工作方式下,A口為8位雙向傳輸口,而C口的PC7~PC3則用作輸入/輸出的同步控制信號。A口輸入或輸出的數(shù)據(jù)都可以被鎖存。此時端口B仍可獨立工作在方式0或方式1。北京世紀智源教育科技有限公司·46·7.6A/D、D/A轉換器接口應用測控系統(tǒng)是單片機應用的重要領域之一。在測控系統(tǒng)中,被采集的實時信號多數(shù)是連續(xù)變化的物理量,即模擬信號。如:速度、溫度、電流、電壓等等。在單片機應用系統(tǒng)中,凡是遇到有模擬量的地方,都要進行模擬量向數(shù)字量,或者數(shù)字量向模擬量的轉換,涉及單片機的模/數(shù)(A/D)和數(shù)/模(D/A)轉換的接口技術。北京世紀智源教育科技有限公司·47·7.6.1ADC0809轉換器接口應用A/D轉換器用于將連續(xù)的模擬信號轉換成適合于數(shù)字處理的二進制數(shù),實現(xiàn)模擬量到數(shù)字量的轉換。依照轉換原理,A/D轉換器可分:計數(shù)式A/D轉換器、雙積分式A/D轉換器、逐位比較式A/D轉換器及并行式A/D轉換器等。常用的是雙積分式A/D轉換器和逐次逼近式A/D轉換器。A/D轉換器的主要技術指標有:分辨率、轉換時間、量程等。ADC0809模數(shù)轉換實驗的電路原理圖請見圖7.15。北京世紀智源教育科技有限公司·48·ADC0809的主要性能特征ADC0809是采用CMOS工藝制成的8位8通道逐次逼近式模數(shù)轉換器。它的主要特性是:轉換時間為100μs;模擬電壓輸入范圍為0~+5V,無需調(diào)零和滿刻度調(diào)整;功耗低,約為15mW;分辨率為8位;三態(tài)鎖存輸出;采用28引腳雙列直插式封裝。ADC0809的內(nèi)部邏輯結構ADC0809的內(nèi)部邏輯結構由圖7.16ADC0809的內(nèi)部邏輯結構所示。由邏輯圖可以看出,ADC0809芯片主要由三部分構成:8路模擬量的選通開關、8位A/D轉換器(圖內(nèi)虛線框起的部分)和三態(tài)輸出數(shù)據(jù)鎖存器。其余還包括:模擬開關的地址鎖存和譯碼電路等。北京世紀智源教育科技有限公司·49·圖7.16ADC0809的內(nèi)部邏輯結構北京世紀智源教育科技有限公司·50·7.6.2DAC0832轉換器接口應用D/A轉換器是一種將數(shù)字信號轉換成模擬信號的器件。大多數(shù)常用的數(shù)/模轉換器的數(shù)字輸入是二進制或BCD碼形式的,輸出的可以是電流也可以是電壓,而且多數(shù)是電流。如系統(tǒng)需要電壓輸出,則需要使用運算放大器組成電流—電壓轉換器將電流輸出轉換為電壓輸出。D/A轉換器可按照其輸入口是否具有鎖存器而將其分為內(nèi)部有鎖存器的D/A和內(nèi)部無鎖存器的D/A。D/A轉換器的主要技術指標有:分辨率、轉換精度、影響精度的誤差(增益誤差,零位誤差等)、轉換速度、輸出的電壓/電流范圍。北京世紀智源教育科技有限公司·51·圖7.17系統(tǒng)擴展DAC0832數(shù)模轉換電路原理圖北京世紀智源教育科技有限公司·52·DAC0832的主要性能特征:DAC0832是采用CMOS工藝制造的8位電流輸出型D/A轉換器,其主要性能是:輸入數(shù)字量為8位,輸出類型為電流;邏輯電平與TTL兼容;電流建立時間為1μs,功耗低,為20Mw,具有單緩沖、雙緩沖和直通三種數(shù)據(jù)輸入工作方式。采用20引腳雙列直插式封裝。北京世紀智源教育科技有限公司·53·DAC0832的內(nèi)部邏輯結構DAC0832的內(nèi)部邏輯結構如圖7.18

所示,芯片內(nèi)部由一個8位的輸入鎖存器、一個8位的DAC寄存器和一個8位D/A轉換器以及控制電路組成。輸入鎖存器和DAC寄存器可以分別控制,從而可以根據(jù)需要接成兩級輸入鎖存的雙緩沖模式,一級輸入鎖存的單緩沖方式,或接成完全直通的無緩沖方式。兩級緩沖結

溫馨提示

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

評論

0/150

提交評論