第7章_MCS-51單片機最小系統(tǒng)_第1頁
第7章_MCS-51單片機最小系統(tǒng)_第2頁
第7章_MCS-51單片機最小系統(tǒng)_第3頁
第7章_MCS-51單片機最小系統(tǒng)_第4頁
第7章_MCS-51單片機最小系統(tǒng)_第5頁
已閱讀5頁,還剩73頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 單片機內資源少,容量小,在進行較復雜過程的單片機內資源少,容量小,在進行較復雜過程的控制時,它自身的功能遠遠不能滿足需要。為此,應控制時,它自身的功能遠遠不能滿足需要。為此,應擴展其功能。擴展其功能。 MCS-51單片機的擴展性能較強,根據需要,單片機的擴展性能較強,根據需要, 可擴展:可擴展: ROM、RAM; 定時定時 / 計數器;計數器; 并行并行I / O口、口、 串行口;串行口; 中斷系統(tǒng)擴展等。中斷系統(tǒng)擴展等。5-1 MCS-515-1 MCS-51單片機最小系統(tǒng)單片機最小系統(tǒng)一、一、8051/8751硬件最小系統(tǒng)硬件最小系統(tǒng)對于片內有對于片內有ROM型單片機,其自身可以構成最小

2、系統(tǒng)型單片機,其自身可以構成最小系統(tǒng) 該系統(tǒng)的資源如下:該系統(tǒng)的資源如下: 4KB ROM,128B RAM; 五源中斷系統(tǒng);五源中斷系統(tǒng); 兩個十六位加一定時兩個十六位加一定時 / 計數器;計數器; 一個全雙工串行一個全雙工串行UART; 四個并行四個并行I / O口???。二、二、8031硬件最小系統(tǒng)硬件最小系統(tǒng) 8031單片機片內無單片機片內無ROM,若要正常工作,必需外配,若要正常工作,必需外配ROM。外接外接ROM后,后,P3口、口、P2口、口、P0口均被占用只剩下口均被占用只剩下P1口作口作I / O口用,其它功能不變。口用,其它功能不變。 圖中:圖中:/E 三態(tài)門控制端三態(tài)門控制端

3、 G 低電平鎖存低電平鎖存 三總線的概念三總線的概念: :地址總線地址總線 AB,P0口提供(口提供(A7 A0);); P2口提供(口提供(A15 A8),共),共16位。位。數據總線數據總線 DB,P0口提供(口提供(D7 D0),共),共8位。位??刂瓶偩€控制總線 CB,ALE 、 、 、 、 等。等。EAPSENWRRD存儲器的擴展存儲器的擴展一、三總線的連接一、三總線的連接 1、數據線的連接、數據線的連接 P0口的八位線承擔此任,此時不用外接上拉電阻??诘陌宋痪€承擔此任,此時不用外接上拉電阻。2、地址線的連接、地址線的連接 P0口承擔地址低八位線,口承擔地址低八位線,A0 A7; P

4、2口承擔地址高八位線??诔袚刂犯甙宋痪€。A8 A15。注意:注意:P0口線地址口線地址 / 數據分時復用,需用地址鎖存器數據分時復用,需用地址鎖存器 74LS373鎖存地址。鎖存地址。 A10 A8A7 A0D7 D0 CB3、控制線的連接、控制線的連接 對存儲器來講控制線無非是:芯片的對存儲器來講控制線無非是:芯片的選通選通控制、控制、讀寫讀寫控制。控制。 單片機與外部器件數據交換要遵循單片機與外部器件數據交換要遵循兩個重要原則:兩個重要原則: 一是,地址唯一性,一個單元一個地址。一是,地址唯一性,一個單元一個地址。 二是,同一時刻,二是,同一時刻,CPU只能訪問一個地址,即只能與一只能訪

5、問一個地址,即只能與一 個單元交換數據。個單元交換數據。 不交換時,外部器件處于鎖閉狀態(tài),對總線呈浮空狀態(tài)。不交換時,外部器件處于鎖閉狀態(tài),對總線呈浮空狀態(tài)。 讀讀 / 寫寫:CPU向外部設備發(fā)出的讀向外部設備發(fā)出的讀/寫控制命令。寫控制命令。 EPROM:/OE /PSEN SRAM: /WE /WR /OE /RD 選通選通:CPU與器件交換數據或信息,需先發(fā)出選通信號與器件交換數據或信息,需先發(fā)出選通信號 /CE或或/CS,以便選中芯片。,以便選中芯片。6116與2764在0800H DFFFH范圍內地址重疊,這是不是違反交換原則呢?不會!因為,不會!因為,6116是是SRAM,2764

6、是是EPROM。除地址和選。除地址和選通信號外,還有讀通信號外,還有讀/寫控制信號起作用。寫控制信號起作用。RAM /WE /WR /OE /RD ROM /OE /PSEN可用來區(qū)分二器件小結:小結:1)CPU與外設數據交換的原則是什么?與外設數據交換的原則是什么? 2)決定存儲器芯片在系統(tǒng)中地址范圍的兩個因素是)決定存儲器芯片在系統(tǒng)中地址范圍的兩個因素是 什么?什么? 布置作業(yè):布置作業(yè): P125 5.4、 5.5第七章第七章 單片機單片機I/OI/O口擴展及應用口擴展及應用 7.1 I/O7.1 I/O口擴展概述口擴展概述 7.1.1 I/O口擴展的原因口擴展的原因 MCS-51系列單

7、片機共有四個并行系列單片機共有四個并行I/O口,分別是口,分別是P0、P1、P2和和P3。其中。其中P0口一般作地址線的低八位和數據線使用;口一般作地址線的低八位和數據線使用;P2口口作地址線的高八位使用;作地址線的高八位使用;P3是一個雙功能口,其第二功能是一是一個雙功能口,其第二功能是一些很重要的控制信號,所以些很重要的控制信號,所以P3一般使用其第二功能。這樣供用一般使用其第二功能。這樣供用戶使用的戶使用的I/O口就只剩下口就只剩下P1口了。另外,這些口了。另外,這些I/O口沒有狀態(tài)寄口沒有狀態(tài)寄存和命令寄存的功能,因此難以滿足復雜的存和命令寄存的功能,因此難以滿足復雜的I/O操作要求。

8、操作要求。 7.1.2 I/O口的編址技術口的編址技術 用戶可以通過對用戶可以通過對I/O口進行讀和寫操作來完成數據的輸口進行讀和寫操作來完成數據的輸入和輸出。入和輸出。例如:例如:P0口的地址為口的地址為80H。用戶可以使用。用戶可以使用MOV指令對指令對P0口口進行寫操作。進行寫操作。 MOV P0, A 7.1.3 單片機單片機I/O傳送的方式傳送的方式 1. 無條件傳送方式 2. 查詢方式3. 中斷方式 中斷方式大大提高了單片機系統(tǒng)的工作效率,所以在中斷方式大大提高了單片機系統(tǒng)的工作效率,所以在單片機中被廣泛應用。單片機中被廣泛應用。 (自學)(自學)7.2 簡單簡單I/O口擴展口擴展

9、 7.2.1 簡單輸入口擴展簡單輸入口擴展1. 輸入口擴展 簡單輸入口擴展使用的集成芯片,比較典型的如簡單輸入口擴展使用的集成芯片,比較典型的如74LS244芯片。圖芯片。圖7.1為為74LS244芯片的引腳。芯片的引腳。 74LS244是是8位三態(tài)門,當位三態(tài)門,當/CS1、/CS2均為低電平時,均為低電平時,允許輸入數據;否則,為高阻態(tài)。允許輸入數據;否則,為高阻態(tài)。 圖圖7.1 74LS244芯片的引腳芯片的引腳 圖圖7.2 74LS244擴展輸入口擴展輸入口1510CCV1115201CS2CS1A12A13A14A13A22A21A24A21Y12Y13Y14Y11Y22Y23Y24

10、Y2GND輸入設備74LS2441CS2CS地址選通信號RDALEP074LS373271674LS24474LS2447.2.2 簡單輸出口擴展簡單輸出口擴展1. 簡單輸出口擴展使用的典型芯片簡單輸出口擴展使用的典型芯片 簡單輸出口擴展通常使用簡單輸出口擴展通常使用74LS37774LS377芯片,該芯片是一個具芯片,該芯片是一個具有有“使能使能”控制端的鎖存器。其信號引腳如圖控制端的鎖存器。其信號引腳如圖7.47.4所示。所示。其中:其中:1D8D 為為8位數據輸入線;位數據輸入線;1Q8Q 為為8位數據輸出線;位數據輸出線;CK 為時鐘信號,上升沿數據鎖存;為時鐘信號,上升沿數據鎖存;/

11、G /G 為使能控制信號,低電平有效。為使能控制信號,低電平有效。 VCC 為為5V電源。電源。 74LS377的邏輯電路如圖的邏輯電路如圖7.5所示。所示。 圖圖7.4 74LS377引腳圖引腳圖 圖圖7.5 74LS377的邏輯電路的邏輯電路 由邏輯電路可知,由邏輯電路可知,74LS377是由是由D觸發(fā)器組成的,觸發(fā)器組成的,D觸觸發(fā)器在上升沿輸入數據,即在時鐘信號(發(fā)器在上升沿輸入數據,即在時鐘信號(CK)由低電平跳)由低電平跳變?yōu)楦唠娖綍r,數據進入鎖存器。變?yōu)楦唠娖綍r,數據進入鎖存器。其功能表如表其功能表如表7-1所示。所示。G1Q1D3D6D2D7DGND4D7Q2Q8Q4QCK5Q

12、3Q6Q5D8DCCV74LS3778D1DCKG1Q8QDQCKGGCKDQ/G=0 輸出輸出/G=1 保存保存 輸出口擴展連接:輸出口擴展連接:擴展單輸出口只需要一片擴展單輸出口只需要一片74LS377,其連接電路如圖,其連接電路如圖7.6所示。所示。 1Q8Q1D8DP0.0P0.7 WR地址譯碼信號80C5174LS377輸出設備CKGCkDQ1XXQ0 0 110 00X0XQ0 G表表7-1 74LS377功能表功能表 圖圖7.6 74LS377作輸出口擴展作輸出口擴展 使能無效使能無效連通連通鎖存狀態(tài)鎖存狀態(tài)2、用鎖存器擴展簡單的、用鎖存器擴展簡單的8位輸出口位輸出口 8031

13、P2.7 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 /WR74LS377/GD7 Q7D6 Q6D5 Q5D4 Q4D3 Q3D2 Q2D1 Q1D0 Q0/CP 輸出設備輸出設備D7D6D5D4D3D2D1D074LS377為為8D鎖存器,八入八出,一時鐘鎖存器,八入八出,一時鐘CK,一鎖存允許,一鎖存允許/G。/G = 0時,時,CK 的上升沿,輸入數據并鎖存。的上升沿,輸入數據并鎖存。MOV DPTR,#7FFFH ;指向;指向74LS377MOV A,#data ;取輸出的數據;取輸出的數據MOVX DPTR,A ;通過;通過74LS377送出數據

14、送出數據P2.7接接 /G , 所以,所以,74LS373的口地址為的口地址為7FFFH。P0口是數據總線口,作口是數據總線口,作I / O口用時只能分時使用,為此,輸出口用時只能分時使用,為此,輸出數據時需要鎖存數據時需要鎖存。鎖存器和緩沖器的特點及使用鎖存器和緩沖器的特點及使用組成鎖存器的單元電路:組成鎖存器的單元電路:觸發(fā)器。觸發(fā)器。 帶時鐘控制端,有記憶功能。帶時鐘控制端,有記憶功能。組成緩沖器的單元電路:組成緩沖器的單元電路:門電路。門電路。 三態(tài)傳輸電路,沒有有記憶三態(tài)傳輸電路,沒有有記憶功能。功能。CK /G=0,數據鎖存,數據鎖存,數據總線的變化不影響輸數據總線的變化不影響輸出

15、出Q0Q7 D0D7Q7Q7DB連外設連外設CK/G使能端使能端A0A7D0D7DB使能端使能端/CE/CE=0,A0A7 D0D7 /CE=1,懸空狀態(tài),輸入關閉。懸空狀態(tài),輸入關閉。高阻抗對高阻抗對DB不產生影響不產生影響7.3 8255可編程通用并行可編程通用并行I/OI/O接口芯片接口芯片可編程器件的特點:可編程器件的特點:可以通過軟件設置不同的工作方可以通過軟件設置不同的工作方式,作為連接式,作為連接CPU和外設的接口,使用十分靈活,通和外設的接口,使用十分靈活,通用性強。用性強。7.3.1 可編程通用并行可編程通用并行I/OI/O接口概述接口概述簡單簡單I/OI/O口擴展:口擴展:

16、實現數據緩沖和鎖存。實現數據緩沖和鎖存。可編程可編程I/OI/O口擴展:口擴展:還具有狀態(tài)寄存和命令寄存功能,還具有狀態(tài)寄存和命令寄存功能,可通過軟件編程,確定擴展芯片的工作方式。可通過軟件編程,確定擴展芯片的工作方式。典型芯片有:典型芯片有: 8255A8255A,82518251等。等。7.3.1、8255A的外部引腳和內部結構的外部引腳和內部結構 1 1、引腳圖引腳圖:2、8255A的的內部結構內部結構1 1)口電路)口電路三個三個8 8位口:位口:PA,PB,PCPA,PB,PC。(24)(24)PAPA、PBPB是單純的數據口;是單純的數據口;PCPC口既可作數據口,也可作口既可作數

17、據口,也可作控制口,用于控制口,用于PAPA、PBPB口的控口的控制;制;PCPC7-4 7-4 ,控制,控制PAPA;PCPC3-03-0 ,控制控制PBPB;PA PA 、PCPC7-4 7-4 ,稱為稱為A A組組PBPB、 PCPC3-03-0 ,稱為稱為B B組組內部結構內部結構2)總線接口電路)總線接口電路數據總線緩沖器數據總線緩沖器:和單片機數據總線相連,是:和單片機數據總線相連,是8位的雙位的雙向三態(tài)緩沖器,所有數據(包括控制字、狀態(tài)字)都向三態(tài)緩沖器,所有數據(包括控制字、狀態(tài)字)都通過該緩沖起器傳送。通過該緩沖起器傳送。 /CS: 片選信號線,低電平(有效)時,才選中該芯片

18、選信號線,低電平(有效)時,才選中該芯 片,才能對片,才能對 8255進行操作。進行操作。 /RD : 讀信號線,低電平有效;讀信號線,低電平有效; /WR : 寫信號線,低寫信號線,低高電平有效;高電平有效; RESET:復位輸入信號,高電平有效時,復位復位輸入信號,高電平有效時,復位8255。 復位后復位后8255的的PA口、口、PB口和口和PC口均被定為口均被定為 輸入。連到單片機的輸入。連到單片機的RESET。 A0A1:口地址選擇信號線。口地址選擇信號線。8255內部共有三個口,內部共有三個口,P PA口、口、P PB口、口、P PC口和一個控制寄存器供用戶編程。的不同編碼可分別選口

19、和一個控制寄存器供用戶編程。的不同編碼可分別選擇上述三個口和一個控制寄存器。地址編碼如表擇上述三個口和一個控制寄存器。地址編碼如表7-2所示。所示。 端口端口0 0PA口0 1PB口1 0PC口1 1控制寄存器10AA表表7-2 地址編碼地址編碼 3)3)控制邏輯電路控制邏輯電路 (A A組、組、B B組)組) 表表7-3 8255A的的讀寫控制表讀寫控制表所選端口操作00 001A口讀A口00 010A口寫A口00 101B口讀B口00 110B口寫B(tài)口01 001C口讀C口01 010C口寫C口01 110控制寄存器寫控制寄存器1 高阻狀態(tài)CS10AARDWRA口口DBCPU7.3.2 8

20、255A的工作方式及數據的工作方式及數據I/O操作操作1、8255A的工作方式的工作方式(1)方式)方式0 基本輸入基本輸入/輸出方式輸出方式 A口、口、B口、口、C口(兩個口(兩個4位)均有此方式,可任意組合位)均有此方式,可任意組合16種方式。種方式。 適用于適用于無條件數據傳輸和無條件數據傳輸和查詢查詢傳輸傳輸,也可對,也可對C口進行位操口進行位操作。以作。以C口某一位的狀態(tài),實現查詢方式實現數據傳輸。是單片口某一位的狀態(tài),實現查詢方式實現數據傳輸。是單片機與外部設備之間的數據通道。機與外部設備之間的數據通道。(2)方式)方式1 選通輸入選通輸入/輸出方式輸出方式 僅僅PA口、口、PB口

21、有此方式,口有此方式, PC口中若干位作聯絡信號線,聯絡信號的組口中若干位作聯絡信號線,聯絡信號的組 合情況見合情況見表表表表表表 (3)方式)方式2 雙向傳送方式雙向傳送方式 僅僅PA口有此方式。口有此方式。PC3 PC7(5位口線)作聯絡位口線)作聯絡線。線。此時,此時,PB口只能工作在方式口只能工作在方式0。 PA口既可作為輸入端口,又可作為輸出端口。口既可作為輸入端口,又可作為輸出端口。PC口聯絡信號定義口聯絡信號定義 PC口口方式方式1方式方式2 輸入輸入輸出輸出輸入輸入輸出輸出 PC7/OBFA/OBFA PC6/ACKA/ACKA PC5IBFAIBFA PC4/STBA/STB

22、A PC3INTRA INTRA INTRA INTRA PC2/STBB /ACKB PC1IBFB/OBFA PC0INTRB INTRBPC口口方方 式式 1方方 式式 2輸輸 入入輸輸 出出輸輸 入入輸輸 出出PC7/OBFA/OBFAPC6/ACKA/ACKAPC5IBFAIBFAPC4/STBA/STBAPC3INTRAINTRAINTRAINTRAPC2/STBB/ACKBPC1IBFB/OBFAPC0INTRBINTRB各聯絡信號線的意義各聯絡信號線的意義:數據輸入數據輸入 /STB 輸入選通信號,外設發(fā)來。低電平有效;輸入選通信號,外設發(fā)來。低電平有效; IBF 輸入緩沖器滿

23、信號(狀態(tài)輸出),發(fā)給外設(通輸入緩沖器滿信號(狀態(tài)輸出),發(fā)給外設(通知外設數據未被取走,暫不能接收新數據。)知外設數據未被取走,暫不能接收新數據。)INTR 中斷請求信號,外部設備由中斷請求信號,外部設備由8255輸出發(fā)給單片機,輸出發(fā)給單片機,向向CPU發(fā)中斷請求。發(fā)中斷請求。INTE 中斷允許信號。中斷允許信號。 INTR= /STB * IBF * INTE /STBIBFINTR數據輸出數據輸出/ACK 外設響應信號(輸入),由外部設備發(fā)來(數據已送到外設響應信號(輸入),由外部設備發(fā)來(數據已送到外部設備)外部設備), ,表示數據已取走,向單片機發(fā)回響應信號。表示數據已取走,向單

24、片機發(fā)回響應信號。 /OBF 輸出緩沖器滿信號,輸出緩沖器滿信號, (8255輸出)發(fā)給外設(表示單片輸出)發(fā)給外設(表示單片機將數據已送到指定口,外部設備可以取走)。為狀態(tài)信息。機將數據已送到指定口,外部設備可以取走)。為狀態(tài)信息。INTR 中斷請求信號(輸出),高電平有效。表示數據已被外中斷請求信號(輸出),高電平有效。表示數據已被外設取走,請求設取走,請求CPU繼續(xù)輸出數據。繼續(xù)輸出數據。 INTR= /ACK */OBF * INTE/ACK/OBFINTR7.3.3 8255A的控制字及初始化程序的控制字及初始化程序 8255是編程接口芯片,通過控制字(控制寄存器)對其端口是編程接口

25、芯片,通過控制字(控制寄存器)對其端口的工作方式和的工作方式和C口各位的狀態(tài)進行設置??诟魑坏臓顟B(tài)進行設置。 8255共有兩個控制字,一個是共有兩個控制字,一個是工作方式控制字,工作方式控制字,另一個是另一個是C口口置位置位/復位控制字。復位控制字。這兩個控制字共用一個地址,這兩個控制字共用一個地址,通過最高位通過最高位來選擇使用那個控制字。來選擇使用那個控制字。1. 1. 工作方式控制字工作方式控制字 主要功能:確定主要功能:確定8255接口的接口的工作方式工作方式及及數據的傳送方向數據的傳送方向。各位的控制功能如圖各位的控制功能如圖7.13所示。所示。 0D1D2D3D4D5D6D7D標志

26、位1:方式控制字0:C口置位/復位控制字C口低四位輸入還是輸出0:輸出1:輸入B口輸入還是輸出0:輸出1:輸入B口工作方式0:方式01:方式1A口輸入還是輸出0:輸出1:輸入C口高四位輸入還是輸出0:輸出1:輸入A口工作方式00:方式001:方式11 :方式2圖圖7.13 8255工作方式控制字工作方式控制字 AB 對工作方式控制字作如下說明:對工作方式控制字作如下說明: l l A口可工作在方式口可工作在方式0、方式、方式1和方式和方式2,B口可工作在方口可工作在方式式0和方式和方式1 l l 在方式在方式1或方式或方式2下,對下,對C口的定義(輸入或輸出)不口的定義(輸入或輸出)不影響作為

27、控制信號使用的影響作為控制信號使用的C口各位功能口各位功能 l l 最高位是標志位,作為方式控制字使用時,其值固定最高位是標志位,作為方式控制字使用時,其值固定為為1。 2. 2. 置位置位/ /復位控制字復位控制字 在某些情況下,在某些情況下,C口用來定義控制信號和狀態(tài)信號,因口用來定義控制信號和狀態(tài)信號,因此此C口的口的每一位每一位都可以進行置位或復位。對都可以進行置位或復位。對C口的置位或復口的置位或復位是由置位位是由置位/復位控制字進行的。各位的功能如圖復位控制字進行的。各位的功能如圖7.14所示。所示。其中,其中,最高位必須固定為最高位必須固定為“0”。0D1D2D3D4D5D6D0

28、標 志 位1: 方 式 控 制 字2: C口 置 位 /復 位 控 制 字未 使 用確 定 對 那 個 位 進 行置 位 或 復 位 。000:001:010:011:100:101:110:111:確 定 某 位 置 位 還 是 復 位0: 復 位1: 置 位PC0PC7圖圖7.14 8255置位置位/復位控制字復位控制字 3. 82553. 8255初始化初始化 8255初始化就是向控制寄存器寫入工作方式控制字初始化就是向控制寄存器寫入工作方式控制字和和C口置位口置位/復位控制字。復位控制字。例如,對例如,對8255各口作如下要求:各口作如下要求:(不用聯絡信號)不用聯絡信號) PA口口:

29、方式方式0,(輸入;,(輸入;1) PB口口:方式方式1,(輸出;,(輸出;0) PC口口:高位部分為輸出,高位部分為輸出,0 (PC4PC7為輸出)為輸出) 低位部分為輸入。低位部分為輸入。1(PC2PC0用于方式用于方式1選通選通 控制,控制,PC3為輸入。)為輸入。) 設設8255的擴展電路如圖的擴展電路如圖7.9所示,則控制寄存器的地所示,則控制寄存器的地址為址為7FFFH。按各口的設置要求,工作方式控制字為。按各口的設置要求,工作方式控制字為10010101,即,即95H。 初始化程序應為:初始化程序應為: MOV DPTR, #7FFFH ;8255控制字地址控制字地址 MOV A

30、, #95H MOVX DPTR, A ;工作方式控制字寫入;工作方式控制字寫入 MCS-51單片機可以和單片機可以和8255直接連接,圖直接連接,圖7.9給出了一給出了一種擴展電路。種擴展電路。 RESETCS70PAPA70PBPB70PCPCWR0 . 0P7 . 0P7 . 2P1A0A0D7D8031825574LS373RSTALERDRDWR圖圖7.9 8255的擴展邏輯電路的擴展邏輯電路 0D1D2D3D4D5D6D7D標志位1:方式控制字0:C口置位/復位控制字C口低四位輸入還是輸出0:輸出1:輸入B口輸入還是輸出0:輸出1:輸入B口工作方式0:方式01:方式1A口輸入還是輸

31、出0:輸出1:輸入C口高四位輸入還是輸出0:輸出1:輸入A口工作方式00:方式001:方式11 :方式28255工作方式控制字工作方式控制字 A組組B組組PA口口:方式方式0,PB口口:方式方式1,PC口口:高位部分為輸出,高位部分為輸出,0 (PC4PC7為輸出)為輸出) 低位部分為輸入。低位部分為輸入。1(PC2PC0用于方式用于方式1選通選通 控制,控制,PC3為輸入。)為輸入。)PC口用于置位口用于置位/復位控制字復位控制字例如:要求例如:要求PC5置位。假設置位。假設8255A的地址為的地址為:5FFCH5FFFH(PA、PB、PC和控制字地址)和控制字地址)初始化程序應為:初始化程

32、序應為: MOV DPTR, #5FFFH ;8255控制字地址控制字地址 MOV A, #0BH MOVX DPTR, A ;置位;置位/復位控制字寫入復位控制字寫入0D1D2D3D4D5D6D0標志位1:方式控制字2:C口置位/復位控制字未使用確定對那個位進行置位或復位。000:001:010:011:100:101:110:111:確定某位置位還是復位0:復位1:置位PC0PC7 8255置位置位/復位控制字復位控制字 P2.7 P0 ALE /RD /WR RST /EA1D 8D 2Q 1QG /OC/CS PA0PA7A1A0 PC7 PC0D0 D7/RD/WRRESETDB0D

33、B7BUSY/STB8利用利用8255方式方式0,實現,實現PA口作為輸出,口作為輸出,PB口作為輸入。口作為輸入。 8255的的CS/接接地址地址譯譯碼碼/CS0,PA口口地址地址為為8000H,PB口口地址地址為為8001H,PC口口地址地址為為8002H,命令命令字字地址地址為為8003H。PA0-PA7(PA 口口)接接LED0-LED7(LED燈燈)PB0-PB7(PB口口)接接K0-K7(開關量開關量)。數據數據線線、讀、讀/寫寫控制、控制、地址線地址線、復復位信號位信號已已接好。接好。8255實驗連線實驗連線連線說明連線說明程序清單:程序清單:mode equ 082h ; 方式

34、方式0,PA,PC輸出輸出,PB 輸入輸入Port A equ 8000h ; Port A地址地址Port B equ 8001h ; Port B地址地址Port C equ 8002h ; Port C地址地址CAddr equ 8003h ; 控控制字地址制字地址 org 0h mov a, #mode;方式方式0,PA,PC輸出輸出,PB 輸入輸入 mov dptr, #CAddr movx dptr,a ; 輸出輸出控控制字制字EX_B: mov dptr,#PortB movx a,dptr ; 讀讀入入PortB mov dptr,#PortA movx dptr,a ; 輸出

35、到輸出到PortA mov r5,#2 call delay ljmp 0延時子程序延時子程序delay:mov r7,#0ddd: djnz r7,ddd djnz r6,ddd djnz r5,ddd ret end執(zhí)行程序,撥動開關執(zhí)行程序,撥動開關K0K7到不同位置,觀察到不同位置,觀察LED燈的燈的狀態(tài)變化。狀態(tài)變化。小結:小結:1、8255A有幾個并行有幾個并行I / O口?幾種工作方式?口?幾種工作方式? 2、工作方式控制字、置位、工作方式控制字、置位/復位控制字是如何定義的?復位控制字是如何定義的? 7.3 81557.3 8155可編程并行可編程并行I/OI/O接口芯片接口芯

36、片8155包括:包括:三個可編程三個可編程I/O口;口;A口:口: PA0PA7 (8位)位)B口:口: PB0PB7 (8位)位)C口:口: PC0PC5 (6位)位)256B靜態(tài)靜態(tài)RAM;1個個14位定時器(減位定時器(減1計數)計數)1個個8位地址鎖存器;位地址鎖存器;一些控制邏輯電路等。一些控制邏輯電路等。 (a)邏輯結構(b)引腳圖圖6-24 8155的邏輯結構及引腳一、一、8155的內部結構和引腳圖的內部結構和引腳圖6 引腳說明:引腳說明:地址地址/數據線:數據線:AD0 AD7 (復用線(復用線8根)根) 傳送地址、數據、命令、狀態(tài)等。傳送地址、數據、命令、狀態(tài)等。ALE=1時

37、,輸入低時,輸入低8位地址,位地址,否則是數據。否則是數據。 端口線端口線 (22根)根) PA7 PA0:A口輸入口輸入/輸出線,該口作輸入還是輸出,由軟件決定。輸出線,該口作輸入還是輸出,由軟件決定。 PB7 PB0:B口輸入口輸入/輸出線輸出線 PC5 PC0 :C口輸入口輸入/輸出線,輸出線,該口可作輸入、輸出口外,還可以該口可作輸入、輸出口外,還可以傳送控制和狀態(tài)信號,因此傳送控制和狀態(tài)信號,因此C口共有四種工作方式??诠灿兴姆N工作方式。地址鎖存信號:地址鎖存信號:ALE (輸入)。(輸入)。 在在ALE 的下降沿將單片機的低的下降沿將單片機的低8位地址及位地址及/CE和和 IO/M

38、的狀態(tài)的狀態(tài)都鎖存到都鎖存到8255內部寄存器中。內部寄存器中。RAM 或或I/O口口/選擇線:選擇線:IO/M 為為0時,選片內時,選片內RAM, AD0 AD7 為為00hFFh; 為為1時,選片內時,選片內8155的的I/O口,口, AD0 AD7 為口地址。為口地址。片選線:片選線:/CE 低電平時,選中本芯片。低電平時,選中本芯片。讀、寫控制線:讀、寫控制線:/RD、/WR 低電平有效,對低電平有效,對8155進行讀、寫操作。進行讀、寫操作。復位信號:復位信號:RESET。復位后,。復位后, 8155I/O口為輸入方式??跒檩斎敕绞健6〞r器定時器/計數器的脈沖輸入、輸出線:計數器的脈

39、沖輸入、輸出線: TIMERIN 、 TIMEROUT TIMERIN 定時器輸入(輸入定時器所需時鐘)定時器輸入(輸入定時器所需時鐘) TIMEROUT 定時器輸出(輸出所產生的方波脈沖)定時器輸出(輸出所產生的方波脈沖) 表表7-5 8155的端口地址編碼的端口地址編碼AD7AD6AD5AD4AD3AD2AD1AD0選中端口000命令命令/狀態(tài)寄存器狀態(tài)寄存器001A口口010B口口011C口口100定時器定時器/計數器計數器低低8位位101定時器定時器/計數器計數器高高8位位6+281558155的的RAMRAM和和I / OI / O口地址編碼口地址編碼包括:包括: 內部內部RAM 2

40、56B對應對應256個地址個地址 命令命令/狀態(tài)寄存器地址狀態(tài)寄存器地址 1個地址個地址 PA口地址口地址 1個地址個地址 PB口地址口地址 1個地址個地址 PC口地址口地址 1個地址個地址 定時器低定時器低8位地址位地址 1個地址個地址 定時器高定時器高8位地址位地址 1個地址個地址 二、二、81558155的工作方式與基本操作的工作方式與基本操作有三種基本操作有三種基本操作:1、作單片機片外、作單片機片外256B數據存儲器數據存儲器 當當IO / /M = 0時,時,8155只能作片外只能作片外RAM使用,與其它數據使用,與其它數據存儲器統(tǒng)一編址。用存儲器統(tǒng)一編址。用MOVX訪問。訪問。2

41、、作擴展、作擴展I / O口使用口使用 8155作作I/O 口時,口時,IO / /M = 1。PA口、口、PB口、口、PC口,可通口,可通過編程決定如何使用。過編程決定如何使用。命令寄存器(命令寄存器(命令控制字)命令控制字) I / O口工作方式。(只能寫)口工作方式。(只能寫)狀態(tài)標志寄存器狀態(tài)標志寄存器 PA口、口、PB口狀態(tài)標志??跔顟B(tài)標志。 (只能讀)(只能讀)I / O口工作方式有四種口工作方式有四種PC2PC1:p157ALT1:A口、口、B口口 基本基本I / O口,口, C口輸入;口輸入;ALT2: A口、口、B口口 基本基本I / O口,口, C口輸出;口輸出;ALT3:

42、 A口選通口選通I / O、B口基本口基本I / O、C口作聯絡線;口作聯絡線;ALT4: A口、口、B口選通口選通I / O、C口作聯絡線??谧髀摻j線。 81558155的的I/OI/O口工作方式的選擇是通過對口工作方式的選擇是通過對81558155的命令寄存的命令寄存器寫工作方式控制字來實現的器寫工作方式控制字來實現的81558155的控制(命令)字:的控制(命令)字: 這些端口的工作方式是由這些端口的工作方式是由81558155內部的命令寄存器(命內部的命令寄存器(命令字)來控制的。命令字除了規(guī)定端口的工作方式還規(guī)定令字)來控制的。命令字除了規(guī)定端口的工作方式還規(guī)定了定時器了定時器/ /

43、計數器的工作方式。命令字只能進行寫操作。其計數器的工作方式。命令字只能進行寫操作。其格式如圖格式如圖7.187.18所示。所示。圖圖7.18 8155的命令字的命令字P157P157 當當A A口或者口或者B B口以中斷方式進行數據傳送時,所需要的聯口以中斷方式進行數據傳送時,所需要的聯絡信號由絡信號由C C口提供,其中為口提供,其中為A A口提供,為口提供,為B B口提供。各聯絡信口提供。各聯絡信號的定義如表號的定義如表7-67-6所示。所示。0D1D2D3D4D5D6D7DA口工作方式0:輸入1:輸出B口工作方式0:輸入1:輸出A口中斷0:禁止1:允許C口工作方式00:ALT101:ALT

44、210:ALT311:ALT4B口中斷0:禁止1:允許定時器工作方式:00:無操作01:停止計數10:計滿后停止11:開始計數 表表7-6 聯絡信號聯絡信號0PC1PC2PC3PC4PC5PCBSTBASTBASTBC口口對對A口控制(口控制(ALT3) 對對A口和口和B口控制(口控制(ALT4) AINTR AINTR ABF ABF 輸出 BINTR 輸出 BBF 輸出 聯絡信號共有三個,其中:聯絡信號共有三個,其中: INTR:中斷請求信號(輸出):中斷請求信號(輸出),高電平有效。送給,高電平有效。送給MCS-51單片機的外中斷請求。單片機的外中斷請求。 BF :緩沖器滿狀態(tài)信號(輸出

45、),高電平有效。緩沖器滿狀態(tài)信號(輸出),高電平有效。 :選通信號(輸入),低電平有效。數據輸入時,:選通信號(輸入),低電平有效。數據輸入時, 是外設送來的選通信號;數據輸出時,是外設送來的選通信號;數據輸出時, 是外設送來的應答信是外設送來的應答信號。號。 以中斷方式進行數據輸入輸出時,其過程和以中斷方式進行數據輸入輸出時,其過程和8255基本相同,基本相同,在此不作贅述。在此不作贅述。 81558155的狀態(tài)字的狀態(tài)字 狀態(tài)字只能讀不能寫,所以狀態(tài)字只能讀不能寫,所以8155的命令字和狀態(tài)字共用一的命令字和狀態(tài)字共用一個地址。當對命令個地址。當對命令/狀態(tài)字進行寫操作時,狀態(tài)字進行寫操作

46、時,寫進去的是命令寫進去的是命令,當對命令當對命令/狀態(tài)字進行讀操作時,狀態(tài)字進行讀操作時,讀出來的是狀態(tài)。讀出來的是狀態(tài)。狀態(tài)字用狀態(tài)字用于寄存各端口及定時器于寄存各端口及定時器/計數器的工作狀態(tài)。其格式如圖計數器的工作狀態(tài)。其格式如圖7.19所所示。示。 STBSTBSTB0D1D2D3D4D5D6DINTRA:A口中斷請求ABF:A口緩沖器滿/空INTRB:B口中斷請求INTEA:A口中斷允許TIMER:定時器中斷(計數滿時為高電平,讀出狀態(tài)字或硬件復位為低電平 BBF:B口緩沖器滿/空INTEB:B口中斷允許 圖圖7.19 8155的狀態(tài)字的狀態(tài)字 BF 緩沖器滿標志;緩沖器滿標志;

47、INTR 端口中斷請求標志;端口中斷請求標志; INTE 端口中斷允許標志;(端口中斷允許標志;(和命令字統(tǒng)一和命令字統(tǒng)一) TIMER 定時器中斷請求。定時器中斷請求。3、作定時器、作定時器/計數器使用計數器使用 8155的定時器的定時器/計數器是一個計數器是一個14位的減法計數器,由兩個位的減法計數器,由兩個8位位寄存器構成,如圖寄存器構成,如圖7.21所示。以其中的低所示。以其中的低14位組成計數器,剩位組成計數器,剩下的兩個高位(下的兩個高位(M2, M1 )用于定義計數器輸出的信號形式。)用于定義計數器輸出的信號形式。 圖圖7.21 8155定時器定時器/計數器的計數格式計數器的計數

48、格式0D1D2D3D4D5D6D7D2M1M13T12T11T10T9T8T輸出方式計數器高6位0D1D2D3D4D5D6D7D6T5T4T3T2T1T0T7T計數器低8位100101定時器的工作狀態(tài)控制由命令字的定時器的工作狀態(tài)控制由命令字的D6D7確定確定D6D7 =00,不影響計數器工作,不對計數器操作。,不影響計數器工作,不對計數器操作。D6D7 =01,如計數器未啟動,則無操作。計數器已運,如計數器未啟動,則無操作。計數器已運 行,則停止。行,則停止。D6D7 =10,如計數器正在計數,達計數值時停止。,如計數器正在計數,達計數值時停止。D6D7 =11,啟動計數。,啟動計數。 如計

49、數器沒運行,則裝入計數器方式和計數值如計數器沒運行,則裝入計數器方式和計數值 后開始計數。如計數器已運行,溢出后按新的后開始計數。如計數器已運行,溢出后按新的 方式和計數值工作。方式和計數值工作。 MCS-51MCS-51與與8155 8155 定時器定時器/ /計數器比較計數器比較 8155的定時器的定時器/計數器是減法計數,而計數器是減法計數,而MCS-51單片機單片機的定時器的定時器/計數器卻是加法計數,因此確定計數初值的計數器卻是加法計數,因此確定計數初值的方法是不同的。方法是不同的。 MCS-51MCS-51單片機單片機的定時器的定時器/計數器有多種工作方式,計數器有多種工作方式,

50、8155的定時器的定時器/計數器只有一種固定的工作方式,即計數器只有一種固定的工作方式,即14位計數。通過軟位計數。通過軟件方法進行計數初加載。件方法進行計數初加載。 MCS-51MCS-51單片機單片機的定時器計數器有兩種計數脈沖。定時功能時,以機的定時器計數器有兩種計數脈沖。定時功能時,以機器周期為計數脈沖;計數功能時,從芯片外部引入計數脈沖。器周期為計數脈沖;計數功能時,從芯片外部引入計數脈沖。 8155的定時器的定時器/計數器,計數器, 不論是定時功能還是計數功能都是由外部提不論是定時功能還是計數功能都是由外部提供計數脈沖,其信號引腳是供計數脈沖,其信號引腳是TIMERINTIMERI

51、N。 MCS-51MCS-51單片機單片機的定時器的定時器/ /計數器,計數溢出時,自動置位計數器,計數溢出時,自動置位TCONTCON寄存器寄存器的計數溢出標志位(的計數溢出標志位(TFTF), ,供用戶查詢或中斷方式使用;供用戶查詢或中斷方式使用; 81558155的定時器的定時器/ /計數器,計數溢出時向芯片外部輸出一個信號計數器,計數溢出時向芯片外部輸出一個信號(TIMEROUTTIMEROUT)。而且這一信號還有脈沖和方波兩種形式,可由用戶進行)。而且這一信號還有脈沖和方波兩種形式,可由用戶進行選擇。具體由選擇。具體由 M2, M1 兩位定義:兩位定義: M2M1 =00 單個方波單

52、個方波M2M1 =01 連續(xù)方波連續(xù)方波M2M1 =10 單個脈沖單個脈沖M2M1 =11 連續(xù)脈沖連續(xù)脈沖這四種輸出形式如圖這四種輸出形式如圖7.22所示。所示。2M1M 0 00 11 01 1單個方波連續(xù)方波單個脈沖連續(xù)脈沖開始計數停止計數圖圖7.22 8155信號輸出波形信號輸出波形 三、三、8031單片機與單片機與8155的接口的接口 因為因為8155的許多信號與的許多信號與MCS-51單片機兼單片機兼容,所以容,所以 8155與與MCS-51單片機可以直接連接單片機可以直接連接而不需要任何外加邏輯器件。表而不需要任何外加邏輯器件。表7-7列出了這列出了這些信號的對應關系。些信號的對

53、應關系。RDWRWR8155MCS-51單片機8155MCS-51單片機P0口ALEALERESETRST 這種方法實際就是編址技術中的這種方法實際就是編址技術中的線選法線選法。例如以。例如以 接接 ,則,則8155與與8051的連接如圖的連接如圖7.20所示。所示。 這種這種 信號產生方法中,對信號產生方法中,對8155需要使用需要使用16位地址進行編位地址進行編址。這種方法適應于有多片址。這種方法適應于有多片I/O擴展及存儲器擴展的較大單片機系擴展及存儲器擴展的較大單片機系統(tǒng)中,因此要使用片選信號。例如圖中使用統(tǒng)中,因此要使用片選信號。例如圖中使用 作為片選信號與作為片選信號與/CS/CS

54、直接相連。直接相連。 70 ADADRD表表7-7 8155與與MCS-51單片機兼容的信號單片機兼容的信號0 . 2PM/IOM/IO1 . 2PRDRESET70PAPA70PBPB50PCPCWR80518155RST7 . 0P0 . 0PALEWRRD0AD7ADALEM/IOCS1 . 2P0 . 2P 圖圖7.20 高位地址直接作為信號高位地址直接作為信號 假設沒有用到的地址位其值為系統(tǒng)復位后的值,即為假設沒有用到的地址位其值為系統(tǒng)復位后的值,即為1。則。則 時時,端口地址范圍為:端口地址范圍為:0FDF8H0FDFDH; 時,時,8155內部內部RAM地址范圍是:地址范圍是:0FC00H0FCF

溫馨提示

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

評論

0/150

提交評論