




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第第9章章 MCS-51擴(kuò)展擴(kuò)展I/O接口的設(shè)計(jì)接口的設(shè)計(jì)9.1 I/O接口擴(kuò)展概述接口擴(kuò)展概述9.2 MCS-51與可編程并行與可編程并行I/O芯片芯片8255A的接口設(shè)計(jì)的接口設(shè)計(jì)9.3 MCS-51與可編程與可編程RAM/IO芯片芯片8155H的接口的接口9.4 用用74LS TTL電路擴(kuò)展并行電路擴(kuò)展并行I/O口口9.5 用用MCS-51的串行口擴(kuò)展并行口的串行口擴(kuò)展并行口I/O (輸入輸入/輸出輸出)接口是接口是MCS-51與外設(shè)交換數(shù)字信息的橋梁。與外設(shè)交換數(shù)字信息的橋梁。I/O擴(kuò)展也屬于系統(tǒng)擴(kuò)展的一部分。擴(kuò)展也屬于系統(tǒng)擴(kuò)展的一部分。真正用作真正用作I/O口線的只有口線的只有P1口
2、的口的8位位I/O線和線和P3口的某些位線??诘哪承┪痪€。在多數(shù)應(yīng)用系統(tǒng)中,在多數(shù)應(yīng)用系統(tǒng)中,MCS-51單片機(jī)都需要外擴(kuò)單片機(jī)都需要外擴(kuò)I/O接口電路。接口電路。9.1 I/O接口擴(kuò)展概述接口擴(kuò)展概述I/O接口電路應(yīng)滿足以下要求:接口電路應(yīng)滿足以下要求:1. 實(shí)現(xiàn)和不同外設(shè)的速度匹配實(shí)現(xiàn)和不同外設(shè)的速度匹配大多數(shù)外設(shè)的速度很慢,無(wú)法和大多數(shù)外設(shè)的速度很慢,無(wú)法和s量級(jí)的單片機(jī)速度相比量級(jí)的單片機(jī)速度相比。單片機(jī)只有在確認(rèn)外設(shè)已為數(shù)據(jù)傳送做好準(zhǔn)備的前提下才單片機(jī)只有在確認(rèn)外設(shè)已為數(shù)據(jù)傳送做好準(zhǔn)備的前提下才能進(jìn)行能進(jìn)行I/O操作。操作。想知道外設(shè)是否準(zhǔn)備好,需想知道外設(shè)是否準(zhǔn)備好,需I/O接口電
3、路與外設(shè)之間傳送狀接口電路與外設(shè)之間傳送狀態(tài)信息。態(tài)信息。9.1.1 I/O接口的功能接口的功能2. 輸出數(shù)據(jù)鎖存輸出數(shù)據(jù)鎖存由于由于單片機(jī)工作速度快單片機(jī)工作速度快,數(shù)據(jù)在數(shù)據(jù)總線上保留的時(shí)間十,數(shù)據(jù)在數(shù)據(jù)總線上保留的時(shí)間十分短暫,分短暫,無(wú)法滿足慢速外設(shè)的數(shù)據(jù)接收無(wú)法滿足慢速外設(shè)的數(shù)據(jù)接收。I/O電路應(yīng)具有電路應(yīng)具有數(shù)據(jù)鎖存器,以保證接收設(shè)備接收。數(shù)據(jù)鎖存器,以保證接收設(shè)備接收。3. 輸入數(shù)據(jù)三態(tài)緩沖輸入數(shù)據(jù)三態(tài)緩沖輸入設(shè)備向單片機(jī)輸入數(shù)據(jù)時(shí),數(shù)據(jù)總線上面可能輸入設(shè)備向單片機(jī)輸入數(shù)據(jù)時(shí),數(shù)據(jù)總線上面可能“掛掛”有多個(gè)數(shù)據(jù)源,為不發(fā)生沖突,只允許當(dāng)前時(shí)刻正在進(jìn)有多個(gè)數(shù)據(jù)源,為不發(fā)生沖突,只允
4、許當(dāng)前時(shí)刻正在進(jìn)行數(shù)據(jù)傳送的數(shù)據(jù)源使用數(shù)據(jù)總線,其余的數(shù)據(jù)源應(yīng)處行數(shù)據(jù)傳送的數(shù)據(jù)源使用數(shù)據(jù)總線,其余的數(shù)據(jù)源應(yīng)處于隔離狀態(tài)。于隔離狀態(tài)。9.1.1 I/O接口的功能接口的功能首先清楚首先清楚I/O接口接口 (Interface) 和和I/O端口端口 (Port) 的概念。的概念。I/O端口端口:簡(jiǎn)稱簡(jiǎn)稱I/O口口,指具有端口地址的寄存器或緩沖器。,指具有端口地址的寄存器或緩沖器。I/O接口:接口:是指單片機(jī)與外設(shè)間的是指單片機(jī)與外設(shè)間的I/O接口芯片。接口芯片。一個(gè)一個(gè)I/O接口芯片可以有多個(gè)接口芯片可以有多個(gè)I/O端口:端口:(1)數(shù)據(jù)口數(shù)據(jù)口 (2)命令口命令口(3)狀態(tài)口狀態(tài)口I/O端口
5、編址端口編址是給所有是給所有I/O接口中的寄存器編址。接口中的寄存器編址。9.1.2 I/O端口的編址端口的編址I/O端口編址兩種方式:端口編址兩種方式:獨(dú)立編址獨(dú)立編址與與統(tǒng)一編址統(tǒng)一編址。1. 獨(dú)立編址方式獨(dú)立編址方式I/O寄存器地址空間和存儲(chǔ)器地址空間寄存器地址空間和存儲(chǔ)器地址空間分開編址分開編址,但需一,但需一套專門的讀寫套專門的讀寫I/O的指令和控制信號(hào)。的指令和控制信號(hào)。2. 統(tǒng)一編址方式統(tǒng)一編址方式I/O寄存器與數(shù)據(jù)存儲(chǔ)器單元同等對(duì)待寄存器與數(shù)據(jù)存儲(chǔ)器單元同等對(duì)待,統(tǒng)一編址。不需要,統(tǒng)一編址。不需要專門的專門的I/O指令,直接使用訪問(wèn)數(shù)據(jù)存儲(chǔ)器的指令進(jìn)行指令,直接使用訪問(wèn)數(shù)據(jù)存儲(chǔ)
6、器的指令進(jìn)行I/O操作,簡(jiǎn)單、方便且功能強(qiáng)。操作,簡(jiǎn)單、方便且功能強(qiáng)。9.1.2 I/O端口的編址端口的編址MCS-51使用統(tǒng)一編址的方式使用統(tǒng)一編址的方式每一接口芯片中的一個(gè)功能寄存器每一接口芯片中的一個(gè)功能寄存器(端口端口)的地址就相當(dāng)于一的地址就相當(dāng)于一個(gè)個(gè)RAM單元。單元。為實(shí)現(xiàn)和不同的外設(shè)的速度匹配,為實(shí)現(xiàn)和不同的外設(shè)的速度匹配,I/O接口必須根據(jù)不同外設(shè)接口必須根據(jù)不同外設(shè)選擇恰當(dāng)?shù)倪x擇恰當(dāng)?shù)腎/O數(shù)據(jù)傳送方式。數(shù)據(jù)傳送方式。 I/O數(shù)據(jù)傳送的幾種傳送方式是:數(shù)據(jù)傳送的幾種傳送方式是:(1) 同步傳送同步傳送 (2) 異步傳送異步傳送 (3) 中斷傳送。中斷傳送。9.1.3 I/O
7、數(shù)據(jù)的幾種傳送方式數(shù)據(jù)的幾種傳送方式1. 同步傳送方式同步傳送方式(無(wú)條件傳送無(wú)條件傳送)當(dāng)外設(shè)速度和單片機(jī)的速度相比擬時(shí),常采用同步傳送方當(dāng)外設(shè)速度和單片機(jī)的速度相比擬時(shí),常采用同步傳送方式,最典型的同步傳送就是單片機(jī)和外部數(shù)據(jù)存儲(chǔ)器之間式,最典型的同步傳送就是單片機(jī)和外部數(shù)據(jù)存儲(chǔ)器之間的數(shù)據(jù)傳送。的數(shù)據(jù)傳送。2. 查詢傳送方式查詢傳送方式 (條件傳送,異步式傳送條件傳送,異步式傳送)查詢外設(shè)查詢外設(shè)“準(zhǔn)備好準(zhǔn)備好”后,再進(jìn)行數(shù)據(jù)傳送。后,再進(jìn)行數(shù)據(jù)傳送。優(yōu)點(diǎn):優(yōu)點(diǎn):通用性好,硬件連線和查詢程序十分簡(jiǎn)單。通用性好,硬件連線和查詢程序十分簡(jiǎn)單。缺點(diǎn):缺點(diǎn):效率不高。效率不高。為提高效率,通常采
8、用中斷傳送方式。為提高效率,通常采用中斷傳送方式。3. 中斷傳送方式中斷傳送方式外設(shè)準(zhǔn)備好后,發(fā)中斷請(qǐng)求,單片機(jī)進(jìn)入與外設(shè)數(shù)據(jù)傳送外設(shè)準(zhǔn)備好后,發(fā)中斷請(qǐng)求,單片機(jī)進(jìn)入與外設(shè)數(shù)據(jù)傳送的中斷服務(wù)程序,進(jìn)行數(shù)據(jù)的傳送。中斷服務(wù)完成后又返的中斷服務(wù)程序,進(jìn)行數(shù)據(jù)的傳送。中斷服務(wù)完成后又返回主程序繼續(xù)執(zhí)行。工作效率高。回主程序繼續(xù)執(zhí)行。工作效率高。9.1.3 I/O數(shù)據(jù)的幾種傳送方式數(shù)據(jù)的幾種傳送方式如何實(shí)現(xiàn)如何實(shí)現(xiàn)I/O接口的擴(kuò)展。接口的擴(kuò)展。Intel公司的配套可編程公司的配套可編程I/O接口芯接口芯片的種類齊全,為擴(kuò)展片的種類齊全,為擴(kuò)展I/O接口提供了很大的方便。接口提供了很大的方便。9.1.4
9、 I/O接口電路接口電路常用的外圍常用的外圍I/O接口芯片有:接口芯片有:(1) 8255A:可編程的通用并行接口電路可編程的通用并行接口電路(3個(gè)個(gè)8位位I/O口口)。(2) 8155H:可編程的可編程的IO/RAM擴(kuò)展接口電路擴(kuò)展接口電路(2個(gè)個(gè)8位位I/O口口,1個(gè)個(gè)6位位I/O口口, 256個(gè)個(gè)RAM字節(jié)單元,字節(jié)單元,1個(gè)個(gè)14位的減法定位的減法定時(shí)器時(shí)器/計(jì)數(shù)器計(jì)數(shù)器)。此外,此外,74LS系列的系列的TTL電路電路也可以作為也可以作為MCS-51的擴(kuò)展的擴(kuò)展I/O口,如口,如74LS244、 74LS273等。等。利用利用串行口串行口來(lái)擴(kuò)展并行來(lái)擴(kuò)展并行I/O口。口。9.2.1
10、8255A芯片介紹芯片介紹8255A是是Intel公司生產(chǎn)的公司生產(chǎn)的可編程可編程并行并行I/O接口芯片,具有接口芯片,具有3個(gè)個(gè)8位的并行位的并行I/O口,有口,有3種工作方式,可通過(guò)編程改變其功能,種工作方式,可通過(guò)編程改變其功能,因而因而使用靈活方便,通用性強(qiáng)使用靈活方便,通用性強(qiáng)。1. 引腳說(shuō)明引腳說(shuō)明40只引腳,只引腳,雙列直插式封裝雙列直插式封裝,引腳功能如下:,引腳功能如下:9.2 MCS-51與可編程并行與可編程并行I/O芯片芯片8255A的接口的接口9.2.1 8255A芯片介紹芯片介紹D7D0:三態(tài)雙向數(shù)據(jù)線,與單片機(jī)數(shù)據(jù)總線連接。三態(tài)雙向數(shù)據(jù)線,與單片機(jī)數(shù)據(jù)總線連接。CS
11、*:片選信號(hào)線,低電平有效,表示本芯片被選中。片選信號(hào)線,低電平有效,表示本芯片被選中。RD*:讀出信號(hào)線,控制讀出信號(hào)線,控制8255A中數(shù)據(jù)的讀出。中數(shù)據(jù)的讀出。WR*:寫入信號(hào)線,控制向?qū)懭胄盘?hào)線,控制向8255A數(shù)據(jù)的寫入。數(shù)據(jù)的寫入。Vcc:+5V電源。電源。PA7PA0: A口輸入口輸入/輸出線。輸出線。PB7PB0: B口輸入口輸入/輸出線。輸出線。PC7PC0: C口輸入口輸入/輸出線。輸出線。A1、A0:地址線,用來(lái)選擇地址線,用來(lái)選擇8255A內(nèi)部的內(nèi)部的4個(gè)端口。個(gè)端口。9.2.1 8255A芯片介紹芯片介紹2. 內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)9.2.1 8255A芯片介紹芯片介紹(1
12、)端口端口A、B、C功能和結(jié)構(gòu)上有些差異功能和結(jié)構(gòu)上有些差異PA口:口:1個(gè)個(gè)8位數(shù)據(jù)輸出鎖存器和緩沖器;位數(shù)據(jù)輸出鎖存器和緩沖器; 1個(gè)個(gè)8位數(shù)據(jù)輸位數(shù)據(jù)輸入鎖存器。入鎖存器。PB口:口: 1個(gè)個(gè)8位數(shù)據(jù)輸出鎖存器和緩沖器;位數(shù)據(jù)輸出鎖存器和緩沖器; 1個(gè)個(gè)8位數(shù)據(jù)輸位數(shù)據(jù)輸入緩沖器。入緩沖器。PC口:口: 1個(gè)個(gè)8位數(shù)據(jù)輸出鎖存器;位數(shù)據(jù)輸出鎖存器; 1個(gè)個(gè)8位數(shù)據(jù)輸入緩沖器。位數(shù)據(jù)輸入緩沖器。PC口可在軟件的控制下,口可在軟件的控制下,分為兩個(gè)分為兩個(gè)4位端口位端口,作為,作為PA口、口、PB口選通方式操作時(shí)的狀態(tài)控制信號(hào)??谶x通方式操作時(shí)的狀態(tài)控制信號(hào)。9.2.1 8255A芯片介紹芯
13、片介紹(2) A組和組和B組控制電路組控制電路A組:組:PA口和口和PC口的上半部口的上半部(PC7PC4);B組:組:PB口和口和PC口的下半部口的下半部(PC3PC0)??筛鶕?jù)可根據(jù)“命令字命令字”對(duì)對(duì)PC口按位口按位“置置1”或或“清清0”。(3) 數(shù)據(jù)總線緩沖器線數(shù)據(jù)總線緩沖器線三態(tài)雙向,作為三態(tài)雙向,作為8255A與單片機(jī)數(shù)據(jù)線之間接口,傳送數(shù)與單片機(jī)數(shù)據(jù)線之間接口,傳送數(shù)據(jù)、指令、控制命令及外部狀態(tài)信息。據(jù)、指令、控制命令及外部狀態(tài)信息。(4) 讀讀/寫控制邏輯電路線寫控制邏輯電路線該電路接收該電路接收CPU發(fā)來(lái)的控制信號(hào)、發(fā)來(lái)的控制信號(hào)、RESET、地址信號(hào)、地址信號(hào)A1、A0等
14、。對(duì)端口進(jìn)行讀寫。等。對(duì)端口進(jìn)行讀寫。9.2.1 8255A芯片介紹芯片介紹A1A0RD*WR*CS*工作狀態(tài)工作狀態(tài)00010讀端口讀端口A:A口數(shù)據(jù)口數(shù)據(jù)數(shù)據(jù)總線數(shù)據(jù)總線讀端口讀端口B:B口數(shù)據(jù)口數(shù)據(jù)數(shù)據(jù)總線數(shù)據(jù)總線 讀端口讀端口C:C口數(shù)據(jù)口數(shù)據(jù)數(shù)據(jù)總線數(shù)據(jù)總線010101001000100寫端口寫端口A:總線數(shù)據(jù):總線數(shù)據(jù)A口口寫端口寫端口B:總線數(shù)據(jù):總線數(shù)據(jù)B口口寫端口寫端口C:總線數(shù)據(jù):總線數(shù)據(jù)C口口寫控制字:總線數(shù)據(jù)寫控制字:總線數(shù)據(jù)控制字寄存器控制字寄存器0110010100111001數(shù)據(jù)總線為三態(tài)數(shù)據(jù)總線為三態(tài)11010非法狀態(tài)非法狀態(tài)110數(shù)據(jù)總線為三態(tài)數(shù)據(jù)總線為三態(tài)各
15、端口的工作狀態(tài)與控制信號(hào)的關(guān)系各端口的工作狀態(tài)與控制信號(hào)的關(guān)系如表如表9-1所示。所示。9.2.1 8255A芯片介紹芯片介紹8255A有三種工作方式:有三種工作方式: (1) 方式方式0:基本輸入輸出;基本輸入輸出;(2) 方式方式1:選通輸入輸出;選通輸入輸出;(3) 方式方式2:雙向傳送雙向傳送(僅僅A口有口有)。1. 工作方式選擇控制字工作方式選擇控制字三種工作方式由方式控制字來(lái)決定。三種工作方式由方式控制字來(lái)決定??刂谱指袷饺缦?。控制字格式如下。9.2.2 工作方式選擇控制字及工作方式選擇控制字及C口置位口置位/復(fù)位控制字復(fù)位控制字9.2.2 工作方式選擇控制字及工作方式選擇控制字及
16、C口置位口置位/復(fù)位控制字復(fù)位控制字C口上半部分口上半部分(PC7PC4)隨隨A口稱為口稱為A組組;C口下半部分口下半部分(PC3PC0)隨隨B口稱為口稱為B組組。其中其中A口可工作于方式口可工作于方式0、1、和、和2,而,而B口只能工作在方式口只能工作在方式0和和1。例如:例如:寫入工作方式控制字寫入工作方式控制字95H可將可將8255A編程為:編程為:A口方式口方式0輸入,輸入,B口方式口方式1輸出,輸出,C口口的上半部分的上半部分(PC7 PC4)輸出,輸出,C口的下半部分口的下半部分(PC3PC0)輸入。輸入。9.2.2 工作方式選擇控制字及工作方式選擇控制字及C口置位口置位/復(fù)位控制
17、字復(fù)位控制字2. C口按位置位口按位置位/復(fù)位控制字復(fù)位控制字可對(duì)可對(duì)C口口8位中的任一位置位中的任一位置“1”或清或清“0”。用于位控。用于位控。9.2.2 工作方式選擇控制字及工作方式選擇控制字及C口置位口置位/復(fù)位控制字復(fù)位控制字例如:例如:控制字控制字07H寫入控制寫入控制口,置口,置“1”PC3;08H寫入寫入控制口,控制口,PC4清清0。1. 方式方式0基本的輸入基本的輸入/輸出方式。輸出方式。MCS-51可對(duì)可對(duì)8255A進(jìn)行數(shù)據(jù)的進(jìn)行數(shù)據(jù)的無(wú)條件傳送無(wú)條件傳送。例如例如: 從口線讀入一組開關(guān)狀態(tài),向端口輸出數(shù)字量,控制從口線讀入一組開關(guān)狀態(tài),向端口輸出數(shù)字量,控制一組指示燈的亮
18、、滅。不需要聯(lián)絡(luò)信號(hào),一組指示燈的亮、滅。不需要聯(lián)絡(luò)信號(hào),9.2.3 8255A的三種工作方式的三種工作方式基本功能為:基本功能為:(1) 具有兩個(gè)具有兩個(gè)8位端口位端口(A、B)和兩個(gè)和兩個(gè)4位端口位端口(C的上半部分的上半部分和下半部分和下半部分)。(2) 任一個(gè)端口都可以設(shè)定為輸入或輸出,各端口的輸入、任一個(gè)端口都可以設(shè)定為輸入或輸出,各端口的輸入、輸出可構(gòu)成輸出可構(gòu)成16種組合。種組合。(3) 數(shù)據(jù)輸出鎖存,輸入不鎖存。數(shù)據(jù)輸出鎖存,輸入不鎖存。例例 假設(shè)假設(shè)8255A的控制字寄存器地址為的控制字寄存器地址為FF7FH,則令,則令A(yù)口口和和C口的高口的高4位工作在方式位工作在方式0輸出
19、,輸出, B口和口和C口的低口的低4位位工作于方式工作于方式0輸入,輸入,初始化程序初始化程序:MOV DPTR,#0FF7FH ;控制字寄存器地址送;控制字寄存器地址送DPTR MOV A,#83H ;方式控制字;方式控制字83H送送AMOVX DPTR,A ;83H送控制字寄存器送控制字寄存器9.2.3 8255A的三種工作方式的三種工作方式2. 方式方式1選通輸入選通輸入/輸出工作方式。輸出工作方式。A口和口和B口通常用于口通常用于I/O數(shù)據(jù)傳送,數(shù)據(jù)傳送,C口用作口用作A口和口和B口的聯(lián)絡(luò)線,以中斷方式傳送數(shù)據(jù)。口的聯(lián)絡(luò)線,以中斷方式傳送數(shù)據(jù)。(1) 方式方式1輸入輸入控制聯(lián)絡(luò)信號(hào)如圖
20、控制聯(lián)絡(luò)信號(hào)如圖9-5所示,所示,STB*與與IBF構(gòu)成了一對(duì)應(yīng)答構(gòu)成了一對(duì)應(yīng)答聯(lián)絡(luò)信號(hào)聯(lián)絡(luò)信號(hào),各個(gè)控制聯(lián)絡(luò)信號(hào)的功能如下圖:,各個(gè)控制聯(lián)絡(luò)信號(hào)的功能如下圖:9.2.3 8255A的三種工作方式的三種工作方式STB*: 選通輸入,是由輸入外設(shè)送來(lái)的輸入信號(hào)。選通輸入,是由輸入外設(shè)送來(lái)的輸入信號(hào)。IBF:輸入緩沖器滿,高電平有效。表示數(shù)據(jù)已送入輸入緩沖器滿,高電平有效。表示數(shù)據(jù)已送入8255A的輸入鎖存器,它由的輸入鎖存器,它由STB*信號(hào)的下降沿置位,由信號(hào)的下降沿置位,由RD* 信號(hào)的上升沿使其復(fù)位。信號(hào)的上升沿使其復(fù)位。INTR:中斷請(qǐng)求信號(hào),高電平有效。由中斷請(qǐng)求信號(hào),高電平有效。由8
21、255A輸出,向單片輸出,向單片機(jī)發(fā)中斷請(qǐng)求。機(jī)發(fā)中斷請(qǐng)求。INTE A:A口中斷允許,由口中斷允許,由PC4的置位復(fù)位控制;的置位復(fù)位控制; INTE B:B口中斷允許,由口中斷允許,由PC2的置位復(fù)位控制。的置位復(fù)位控制。9.2.3 8255A的三種工作方式的三種工作方式A口的方式口的方式1輸入輸入工作方式見圖工作方式見圖9-6。9.2.3 8255A的三種工作方式的三種工作方式(2) 方式方式1輸出輸出如圖如圖9-7所示所示。OBF*與與ACK*構(gòu)成了一對(duì)應(yīng)答聯(lián)絡(luò)信號(hào),各構(gòu)成了一對(duì)應(yīng)答聯(lián)絡(luò)信號(hào),各信號(hào)的功能如下:信號(hào)的功能如下:OBF*:輸出緩沖器滿信號(hào),輸出緩沖器滿信號(hào),8255A給外
22、設(shè)的聯(lián)絡(luò)信號(hào),外給外設(shè)的聯(lián)絡(luò)信號(hào),外設(shè)可以將數(shù)據(jù)取走。設(shè)可以將數(shù)據(jù)取走。ACK*:外設(shè)的響應(yīng)信號(hào),外設(shè)已將數(shù)據(jù)取走。外設(shè)的響應(yīng)信號(hào),外設(shè)已將數(shù)據(jù)取走。INTR*:中斷請(qǐng)求信號(hào)。表示該數(shù)據(jù)已被外設(shè)取走,請(qǐng)求中斷請(qǐng)求信號(hào)。表示該數(shù)據(jù)已被外設(shè)取走,請(qǐng)求 單片機(jī)繼續(xù)輸出下一個(gè)數(shù)據(jù)。單片機(jī)繼續(xù)輸出下一個(gè)數(shù)據(jù)。INTE A:中斷允許,由中斷允許,由PC6的置位復(fù)位控制。的置位復(fù)位控制。INTE B:中斷允許,由中斷允許,由PC2的置位復(fù)位控制。的置位復(fù)位控制。9.2.3 8255A的三種工作方式的三種工作方式B口的方式口的方式1輸出如圖輸出如圖9-8所示:所示:9.2.3 8255A的三種工作方式的三種工
23、作方式3.方式方式2只有只有A口才能設(shè)定為方式口才能設(shè)定為方式2。圖。圖9-9為方式為方式2工作示意圖。工作示意圖。在方式在方式2下,下,PA7PA0為雙向?yàn)殡p向I/O總線??偩€。當(dāng)當(dāng)輸入輸入時(shí),時(shí),PA7PA0受受STBA*和和IBFA控制,其工作過(guò)程和方控制,其工作過(guò)程和方式式1輸入時(shí)相同;輸入時(shí)相同;當(dāng)當(dāng)輸出輸出時(shí),時(shí),PA7PA0受受OBFA*、ACKA*控制,其工作過(guò)程控制,其工作過(guò)程和方式和方式1輸出時(shí)相同。輸出時(shí)相同。9.2.3 8255A的三種工作方式的三種工作方式9.2.3 8255A的三種工作方式的三種工作方式1. 硬件接口電路硬件接口電路如如圖圖9-10是是8031擴(kuò)展擴(kuò)
24、展1片片8255A的電路圖。的電路圖。74LS373是地址是地址鎖存器,鎖存器,P0.1、P0.0經(jīng)經(jīng)74LS373與與8255A的地址線的地址線A1、A0連接;連接; P0.7經(jīng)經(jīng)74LS373與片選端相連,其他地址線懸空。與片選端相連,其他地址線懸空。2. 端口地址確定端口地址確定圖圖9-10中中8255A各端口寄存器的地址為:各端口寄存器的地址為:A口:口:FF7CHB口:口:FF7DHC口:口:FF7EH控制寄存器:控制寄存器:FF7FH9.2.4 MCS-51單片機(jī)和單片機(jī)和8255A的接口的接口3. 軟件編程軟件編程例例9-1 要求要求8255A工作在方式工作在方式0,且,且A口作
25、為輸入,口作為輸入,B口、口、C口作為輸出,程序如下:口作為輸出,程序如下:MOV A, #90H ;A口方式口方式0輸入,輸入,B口、口、C口輸出的方式口輸出的方式;控制字送;控制字送AMOV DPTR, #0FF7FH ;控制寄存器地址;控制寄存器地址DPTRMOVX DPTR, A;方式控制字;方式控制字控制寄存器控制寄存器MOV DPTR, #0FF7CH;A口地址口地址DPTRMOVX A, DPTR;從;從A口讀數(shù)據(jù)口讀數(shù)據(jù)MOV DPTR, #0FF7DH;B口地址口地址DPTRMOV A, #DATA1;要輸出的數(shù)據(jù);要輸出的數(shù)據(jù)DATA1AMOVX DPTR, A;將;將DA
26、TA1送送B口輸出口輸出MOV DPTR, #0FF7EH;C口地址口地址DPTRMOV A, #DATA2 ;DATA2AMOVX DPTR, A ;將數(shù)據(jù);將數(shù)據(jù)DATA2送送C口輸出口輸出9.2.4 MCS-51單片機(jī)和單片機(jī)和8255A的接口的接口例例9-2 對(duì)端口對(duì)端口C的置位的置位/復(fù)位。復(fù)位。把把PC5置位,控制字為置位,控制字為0BH MOV R1, #7FH ;控制口地址;控制口地址R1 MOV A, #0BH;控制字;控制字AMOVX R1, A;控制字;控制字控制口,控制口,PC5=1把把PC5復(fù)位,控制字為復(fù)位,控制字為0AHMOV R1, #7FH;控制口地址;控制口
27、地址R1 MOV A, #0AH;控制字;控制字AMOVX R1, A;控制字;控制字控制口,控制口,PC5=09.2.4 MCS-51單片機(jī)和單片機(jī)和8255A的接口的接口9.3 MCS-51單片機(jī)與單片機(jī)與8155H的接口的接口9.3 .1 8155H芯片介紹芯片介紹1. 8155H的邏輯結(jié)構(gòu)的邏輯結(jié)構(gòu) 如圖如圖9-11所示。所示。2. 8155H的引腳功能的引腳功能(1) AD7AD0(8條條)(2) I/O總線總線(22條條)(3) 控制總線控制總線(8條條) RESET:復(fù)位輸入線復(fù)位輸入線 CE*和和IO/M* RD*和和WR* ALE:地址鎖存允許地址鎖存允許 TIMERIN和和
28、IMEROUT*:(4) 電源線電源線(2條條) Vcc:+5V電源電源 Vss:地地9.3 .1 8155H芯片介紹芯片介紹CE*IO/M*AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0所選的端口所選的端口01000命令命令/狀態(tài)寄存器狀態(tài)寄存器01001A口口01010B口口01011C口口01100計(jì)數(shù)器低計(jì)數(shù)器低8位位01101計(jì)數(shù)器高計(jì)數(shù)器高6位位00RAM單元單元3. CPU對(duì)對(duì)8155H I/O端口的控制端口的控制(1) 8155H各端口地址分配各端口地址分配9.3 .1 8155H芯片介紹芯片介紹(2) 8155H的命令字的命令字(3) 8155H的狀態(tài)字的狀態(tài)
29、字9.3 .1 8155H芯片介紹芯片介紹1. 存儲(chǔ)器方式存儲(chǔ)器方式對(duì)片內(nèi)對(duì)片內(nèi)RAM單元進(jìn)行讀寫,若單元進(jìn)行讀寫,若IO/M*=0和和CE*=0,則通過(guò),則通過(guò)AD7AD0上的地址對(duì)上的地址對(duì)RAM存儲(chǔ)器任一單元讀寫。存儲(chǔ)器任一單元讀寫。2. I/O方式方式8155H的的I/O方式分為方式分為基本基本I/O和和選通選通I/O兩種工作方式,兩種工作方式,如表如表9-3所示??蓪?duì)片內(nèi)任一寄存器讀寫,端口地址由所示??蓪?duì)片內(nèi)任一寄存器讀寫,端口地址由A2、A1、A0三位決定三位決定(見表見表9-2)。9.3.2 8155H的工作方式的工作方式C口口通用通用I/O方式方式選通選通I/O方式方式ALT
30、1ALT2ALT3ALT4PC0輸入輸入輸出輸出AINTR(A口中斷口中斷)AINTR(A口中斷口中斷)PC1輸入輸入輸出輸出ABF(A口緩沖器滿口緩沖器滿)ABF(A口緩沖器滿口緩沖器滿)PC2輸入輸入輸出輸出ASTB* (A口選通口選通)ASTB* (A口選通口選通)PC3輸入輸入輸出輸出輸出輸出BINTR(B口中斷口中斷)PC4輸入輸入輸出輸出輸出輸出BBF(B口緩沖器滿口緩沖器滿)PC5輸入輸入輸出輸出輸出輸出BSTB* (B口選通口選通)表表9-3 C口在兩種口在兩種I/O工作方式下各位定義工作方式下各位定義 9.3.2 8155H的工作方式的工作方式(1) 基本基本I/O方式方式(
31、2) 選通選通I/O方式方式 (見右圖見右圖) a. 選通選通I/O輸入輸入b. 選通選通I/O輸出輸出3. 內(nèi)部定時(shí)器內(nèi)部定時(shí)器/計(jì)數(shù)器及使用計(jì)數(shù)器及使用14位的減位的減1定時(shí)器定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器,計(jì)數(shù)長(zhǎng)度和計(jì)數(shù)方式由寫入計(jì),計(jì)數(shù)長(zhǎng)度和計(jì)數(shù)方式由寫入計(jì)數(shù)寄存器的控制字來(lái)確定。數(shù)寄存器的控制字來(lái)確定。計(jì)數(shù)器的兩個(gè)寄存器的格式如圖計(jì)數(shù)器的兩個(gè)寄存器的格式如圖9-16。T13T0:計(jì)數(shù)器長(zhǎng)度計(jì)數(shù)器長(zhǎng)度M2、M1:設(shè)置定時(shí)器的設(shè)置定時(shí)器的4種輸出方式種輸出方式9.3.2 8155H的工作方式的工作方式4種工作方式及相應(yīng)輸出波形種工作方式及相應(yīng)輸出波形如圖如圖9-17。9.3.2 8155H的工作方
32、式的工作方式9.3.3 MCS-51與與8155H接口及軟件編程接口及軟件編程1. MCS-51與與8155H的硬件的硬件接口電路接口電路2. 8155H的編程舉例的編程舉例初始化程序設(shè)計(jì)初始化程序設(shè)計(jì)例例9-3 若若A口定義為基本輸入方式,口定義為基本輸入方式,B口定義為基本輸出方口定義為基本輸出方式,對(duì)輸入脈沖進(jìn)行式,對(duì)輸入脈沖進(jìn)行24分頻,初始化程序如下:分頻,初始化程序如下:START: MOV DPTR, 7F04H ;指針指向定時(shí)器低;指針指向定時(shí)器低8位位 MOV A, 18H ;計(jì)數(shù)初值;計(jì)數(shù)初值24送送A, MOVX DPTR, A ;計(jì)數(shù)初值低計(jì)數(shù)初值低8位裝入定時(shí)器位裝入
33、定時(shí)器 INC DPTR ;指針指向定時(shí)器高;指針指向定時(shí)器高8位位 MOV A, 40H ;設(shè)定時(shí)器連續(xù)方波輸出;設(shè)定時(shí)器連續(xù)方波輸出 MOVX DPTR,A ;計(jì)數(shù)初值高計(jì)數(shù)初值高6位裝入定時(shí)器位裝入定時(shí)器 MOV DPTR, 7F00H ;指向命令;指向命令/狀態(tài)口狀態(tài)口 MOV A, #0C2H ;設(shè)定命令控制字;設(shè)定命令控制字 MOVX DPTR, A ;A口輸入,口輸入,B口輸出口輸出,開定時(shí)器開定時(shí)器9.3.3 MCS-51與與8155H接口及軟件編程接口及軟件編程9.3.3 MCS-51與與8155H接口及軟件編程接口及軟件編程例例9-4 讀讀8155的的F1H單元。單元。MO
34、V DPTR, 7EF1H ;指針指向;指針指向8155的的F1H單元單元MOVX A, DPTR ;F1H單元內(nèi)容送單元內(nèi)容送A例例9-5 將立即數(shù)將立即數(shù)41H寫入寫入8155 RAM的的20H單元。單元。MOV A, #41HMOV DPTR, 7E20H ;指針指向;指針指向8155的的20H單元單元MOVX DPTR, A ;立即數(shù);立即數(shù)41H送送8155的的20H單元單元利用利用74LS273和和74LS244,將,將P0口擴(kuò)展成簡(jiǎn)單的輸入、輸出口口擴(kuò)展成簡(jiǎn)單的輸入、輸出口的電路。的電路。74LS273輸出端接輸出端接8個(gè)個(gè)LED發(fā)光二極管,以顯示發(fā)光二極管,以顯示8個(gè)按鈕開關(guān)個(gè)
35、按鈕開關(guān)狀態(tài),某位低電平時(shí)二極管發(fā)光。狀態(tài),某位低電平時(shí)二極管發(fā)光。74LS244是緩沖驅(qū)動(dòng)器,擴(kuò)展輸入口,接是緩沖驅(qū)動(dòng)器,擴(kuò)展輸入口,接8個(gè)按鈕開關(guān)。個(gè)按鈕開關(guān)。74LS273和和74LS244的工作受的工作受8031的的P2.0、RD*、WR*三條控三條控制線控制。制線控制。電路的工作原理如下電路的工作原理如下:當(dāng)當(dāng)P2.0=0,WR*=0(RD*=)時(shí)選中寫時(shí)選中寫74LS273, 8031通過(guò)通過(guò)P0口輸出數(shù)據(jù)到口輸出數(shù)據(jù)到74LS273,;,;當(dāng)當(dāng)P2.0=0,RD*=0(WR*=1)時(shí)選中讀時(shí)選中讀74LS244, 某開關(guān)按下時(shí)則某開關(guān)按下時(shí)則對(duì)應(yīng)位輸入為對(duì)應(yīng)位輸入為“0”。9.4
36、 用用74LS TTL電路擴(kuò)展并行電路擴(kuò)展并行I/O口口輸出程序段:輸出程序段:MOV A, #data ;數(shù)據(jù);數(shù)據(jù)AMOV DPTR, #0FEFFH;I/O地址地址DPTRMOVX DPTR,A ;WR*為低,數(shù)據(jù)經(jīng)為低,數(shù)據(jù)經(jīng)74LS273口輸出口輸出輸入程序段:輸入程序段:MOV DPTR, #0FEFFH ;I/O地址地址DPTRMOVX A, DPTR;RD*為低,為低,74LS244口數(shù)據(jù)讀入內(nèi)部口數(shù)據(jù)讀入內(nèi)部RAM例例9-6 編寫程序把按鈕開關(guān)狀態(tài)通過(guò)圖編寫程序把按鈕開關(guān)狀態(tài)通過(guò)圖9-20中的發(fā)光二極管顯中的發(fā)光二極管顯示出來(lái)。示出來(lái)。程序如下:程序如下:DDIS: MOV DPTR,#0FEFFH ;輸入口地址;輸入口地址DPTRLP:MOVX A
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能制造的安全性與隱私保護(hù)的策略及實(shí)施路徑
- ?;髽I(yè)安全生產(chǎn)投入與保障方案
- 互動(dòng)式教學(xué)在高中化學(xué)課堂中的應(yīng)用研究
- 中外教育史知到課后答案智慧樹章節(jié)測(cè)試答案2025年春泰山學(xué)院
- 中外園林漫賞知到課后答案智慧樹章節(jié)測(cè)試答案2025年春青島農(nóng)業(yè)大學(xué)
- 電廠閥門修理施工方案
- 三級(jí)人力資源管理師-《三級(jí)企業(yè)人力資源管理師專業(yè)》綜合模考卷1
- 2025年耐高溫濾料項(xiàng)目建議書
- 25學(xué)年教案語(yǔ)文(必修上冊(cè))162《登泰山記》
- 2025屆新疆維吾爾自治區(qū)二模歷史試題(原卷版+解析版)
- 簡(jiǎn)析建筑工程中綠色建筑材料的應(yīng)用
- 2024年度全國(guó)社會(huì)工作者《社會(huì)工作實(shí)務(wù)》考試題含答案
- 2025年上半年四川能投宜賓市敘州電力限公司招聘易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 心理戰(zhàn)、法律戰(zhàn)、輿論戰(zhàn)
- 三坐標(biāo)考試試題和答案
- 深圳市機(jī)電產(chǎn)品出口貿(mào)易現(xiàn)狀及發(fā)展對(duì)策研究
- 2025年中國(guó)郵政集團(tuán)公司長(zhǎng)春市分公司招聘22人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 骨科手術(shù)術(shù)后切口護(hù)理技巧培訓(xùn)課程
- 2025年中國(guó)人保壽險(xiǎn)招聘筆試參考題庫(kù)含答案解析
- DB37T 2640-2022 監(jiān)獄安全防范系統(tǒng)建設(shè)技術(shù)規(guī)范
- 2024上半年四川教師招聘《教育公共基礎(chǔ)》真題
評(píng)論
0/150
提交評(píng)論