MCS_51單片機與8255A的接口設(shè)計
所謂可編程的接口芯片是指其功能可由微處理機的指令來加以改變的接口芯片,利用編程的方法,可以使一個接口芯片執(zhí)行不同的接口功能。目前,各生產(chǎn)廠家已提供了很多系列的可編程接口,MCS-51單片機常用的兩種接口芯片是8255以及8155。
8255和MCS-51相連,可以為外設(shè)提供三個8位的I/O端口:A口、B口和C口,三個端口的功能完全由編程來決定。
1. 8255的內(nèi)部結(jié)構(gòu)和引腳排列
下圖7為8255的內(nèi)部結(jié)構(gòu)和引腳圖。
(1)A口、B口和C口。A口、B口和C口均為8位I/O數(shù)據(jù)口,但結(jié)構(gòu)上略有差別。A口由一個8位的數(shù)據(jù)輸出緩沖/鎖存器和一個8位的數(shù)據(jù)輸入緩沖/鎖存器組成。B口由一個8位的數(shù)據(jù)輸出緩沖/鎖存器和一個8位的數(shù)據(jù)輸入緩沖器組成。三個端口都可以和外設(shè)相連,分別傳送外設(shè)的輸入/輸出數(shù)據(jù)或控制信息。
(2) A、B組控制電路。這是兩組根據(jù)CPU的命令字控制8255工作方式的電路。A組控制A口及C口的高4位,B組控制B口及C口的低4位。
(3) 數(shù)據(jù)緩沖器。這是一個雙向三態(tài)8位的驅(qū)動口,用于和單片機的數(shù)據(jù)總線相連,傳送數(shù)據(jù)或控制信息。
(4) 讀/寫控制邏輯。這部分電路接收MCS-51送來的讀/寫命令和選口地址,用于控制對8255的讀/寫。
(5) 數(shù)據(jù)線(8條):D0~D7為數(shù)據(jù)總線,用于傳送CPU和8255之間的數(shù)據(jù)、命令和狀態(tài)字。
(6) 控制線和尋址線(6條)。
RESET:復(fù)位信號,輸入高電平有效。一般和單片機的復(fù)位相連,復(fù)位后,8255所有內(nèi)部寄存器清0,所有口都為輸入方式。
WR和RD: 讀/寫信號線,輸入,低電平有效。當為0時(必為1),所選的8255處于讀狀態(tài),8255送出信息到CPU。反之亦然。
(6)CS:片選線,輸入,低電平有效。
(7) A0、A1:地址輸入線。當=0,芯片被選中時,這兩位的4種組合00、01、10、11分別用于選擇A、B、C口和控制寄存器。
(8)I/O口線(24條):PA0~PA7、PB0~PB7、PC0~PC7為24條雙向三態(tài)I/O總線,分別與A、B、C口相對應(yīng),用于8255和外設(shè)之間傳送數(shù)據(jù)。
(9) 電源線(2條):VCC為+5 V,GND為地線。
2. 8255的控制字
8255的三個端口具體工作在什么方式下,是通過CPU對控制口的寫入控制字來決定的。8255有兩個控制字:方式選擇控制字和C口置/復(fù)位控制字。用戶通過程序把這兩個控制字送到8255的控制寄存器(A0A1=11),這兩個控制字以D7來作為標志。
1) 方式選擇控制字
方式選擇控制字的格式和定義如下圖所示。
2) C口置/復(fù)位控制字
C口置/復(fù)位控制字的格式和定義如下圖所示。C口具有位操作功能,把一個置/復(fù)位控制字送入8255的控制寄存器,就能將C口的某一位置1或清0而不影響其它位的狀態(tài)。
3. 8255的工作方式
8255有三種工作方式:方式0、方式1、方式2。方式的選擇是通過上述寫控制字的方法來完成的。
編輯:admin 最后修改時間:2018-05-19