第8章微機(jī)原理_第1頁(yè)
第8章微機(jī)原理_第2頁(yè)
第8章微機(jī)原理_第3頁(yè)
第8章微機(jī)原理_第4頁(yè)
第8章微機(jī)原理_第5頁(yè)
已閱讀5頁(yè),還剩45頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

8.1微機(jī)的輸入/輸出接口電路所謂接口就是連接CPU與外設(shè)之間的部件,它完成CPU與外設(shè)之間的信息傳送。

外設(shè)一般具有如下特點(diǎn):①品種繁多②工作速度慢③信號(hào)類型與電平種類不同微機(jī)中為什么要用到輸入輸出接口?第八章微機(jī)的并行/串行接口技術(shù)8.1.1CPU與外設(shè)之間的接口信息數(shù)字量__二進(jìn)制表示的數(shù)據(jù)、圖形、文字等模擬量__

連續(xù)變化的量,溫度、壓力、流量等開關(guān)量__

兩個(gè)狀態(tài)(開/關(guān))外設(shè)信息數(shù)據(jù)信息狀態(tài)信息__反映當(dāng)前外設(shè)所處的工作狀態(tài)(Ready,Busy)控制信息__CPU發(fā)給外設(shè),以控制外設(shè)工作(開/關(guān))

I/O接口的組成及與系統(tǒng)的連接8.1.2簡(jiǎn)單I/O接口的組成程序控制方式中斷控制方式DMA控制方式(直接存儲(chǔ)器存取方式)傳送方式無(wú)條件傳送(同步傳送方式)條件傳送(查詢傳送方式)8.1.3CPU與外設(shè)的數(shù)據(jù)傳送控制方式無(wú)條件傳送程序---無(wú)條件傳送輸入口輸出口選中信號(hào)NMOVDX,8000HINAL,DXOUTDX,ALJMPN端口地址:

8000H查詢輸入方式狀態(tài)口數(shù)據(jù)輸入口查詢輸入方式設(shè):現(xiàn)有狀態(tài)口地址為PORT_S,輸入口地址為PORT_IN,傳送數(shù)據(jù)的總字節(jié)數(shù)為COUNT,請(qǐng)編寫查詢式輸入數(shù)據(jù)的程序段

MOVBX,0;初始化地址指針BXMOCCX,COUNT;字節(jié)數(shù)READ:INAL,PORT_S;讀入狀態(tài)位

TESTAL,80H;數(shù)據(jù)是否準(zhǔn)備好

JZREAD;否,循環(huán)檢測(cè)

INAL,PORT_IN;已準(zhǔn)備好,讀入數(shù)據(jù)

MOV[BX],AL;存到內(nèi)存緩沖區(qū)中

INCBX;修改地址指針

LOOPREAD;未傳送完,繼續(xù)傳送

;已傳送完初始化讀入狀態(tài)數(shù)據(jù)準(zhǔn)備好輸入數(shù)據(jù)給CPU數(shù)據(jù)送內(nèi)存?zhèn)魉屯闥NNY查詢輸入方式查詢輸出方式123查詢輸出方式

設(shè):狀態(tài)口的地址為PORT_S,輸出數(shù)據(jù)口的地址為PORT_OUT,傳送數(shù)據(jù)的總字節(jié)數(shù)為COUNT,編寫查詢式輸出數(shù)據(jù)的程序。(D1狀態(tài))

MOVCX.COUNT;傳送的字節(jié)敷

READ:INAL,PORT_S;輸入狀態(tài)位

TESTAL,02H;忙否?JNZREAD;忙,循環(huán)檢測(cè)

MOVAL,輸出數(shù)據(jù);不忙

OUTPORT_OUT,AL;輸出數(shù)據(jù)

LOOPREAD;末傳送完,循環(huán)

;已送完查詢輸出方式并行通信

—就是把一個(gè)字符的各數(shù)位用幾條連線同時(shí)進(jìn)行傳輸?shù)倪^程。優(yōu)點(diǎn):傳輸速度快、信息率高;缺點(diǎn):隨著傳輸距離的增加,電纜的開銷會(huì)成為突出的問題;應(yīng)用場(chǎng)合:要求傳輸率高,傳輸距離較短的場(chǎng)合。8.2

并行接口技術(shù)8.2.1

并行接口概述并行接口

—能實(shí)現(xiàn)并行通信的接口。并行的類型:

單獨(dú)的輸入接口

如:讀卡機(jī)接口單獨(dú)的輸出接口

如:打印機(jī)接口輸入/輸出接口

如:磁盤接口并行接口的組成并行輸入/輸出接口分類硬接線型可編程型△可編程型__工作方式和功能是可以軟件編程加以改變。

8位三態(tài)單向緩沖器(LS244)

8位三態(tài)雙向緩沖器(LS245)

8位三態(tài)數(shù)據(jù)鎖存器(LS373)常用芯片電路包括:具有緩沖的輸入/輸出寄存器可供CPU訪問的控制和狀態(tài)寄存器與外設(shè)進(jìn)行交換數(shù)據(jù)的控制與聯(lián)絡(luò)信號(hào)線等△硬接線型__工作方式和功能是由硬線連接固定的,不能用軟件編程加以改變。8.2.2

可編程并行接口芯片8255A

一、8255的內(nèi)部結(jié)構(gòu)和功能

8255的內(nèi)部結(jié)構(gòu)3個(gè)8位數(shù)據(jù)端口:A口、B口、C口RESET復(fù)位后控制寄存器內(nèi)容都被清零所有端口均被置成輸入方式(讀端口A)(讀端口B)(讀端口C)(寫端口A)(寫端口B)(寫端口C)(寫控制字)方式選擇控制字置位/復(fù)位控制字

8255的控制字

▲方式選擇控制字___用來(lái)定義各端口的工作方式▲置位/復(fù)位控制字___用于對(duì)端口C的位(任意)進(jìn)行置位或復(fù)位工作方式方式0__基本輸入/輸出方式方式1__選通輸入/輸出方式方式2__雙向總線I/O方式二、8255的控制字C口低四位I/OD7D6D5D4D3D2D1D0D7=1標(biāo)志位A口方式00:方式001:方式11X:方式2A口I/O1:輸入0:輸出C口高四位I/O1:輸入0:輸出B口方式0:方式01:方式1B口I/O1:輸入0:輸出1:輸入0:輸出(1)、方式選擇控制字8255工作方式控制字的應(yīng)用例如:若要求8255A各端口為下列工作狀態(tài):A口:方式0輸出口

B口:方式1輸入口上C口:方式0輸入口下C口輸出:此時(shí)為B口的聯(lián)絡(luò)線則相應(yīng)的控制字為:10001110B(8EH)例一:設(shè)8255A的4個(gè)尋址地址號(hào)為60H一63H,試編寫出下列各種情況的初始化程序。①將A組和B組設(shè)置成方式0,A口、、B口為輸入,C口為輸出口。②將A組工作方式設(shè)置成方式2,B組為方式1,B口作為輸出口。解:①M(fèi)OVAL,10010010BOUT63H,AL②MOVAL,11000100BOUT63H,ALD7D6D5D4D3D2D1D0

D7=0標(biāo)志位任意值位選擇000選中PC0001選中PC1111選中PC71置位0復(fù)位(2)、端口C置位/復(fù)位控制字注:

C端口置位/復(fù)位控制字盡管是對(duì)C端口進(jìn)行操作,但該控制字必須寫入控制口地址,而不是寫入C端口D7D6D5D4D3D2D1D0

D7=0標(biāo)志位任意值1置位0復(fù)位位選擇000選中PC0001選中PC1111選中PC7例如:——端口C的PC7位要求置1,PC3位置0,控制口地址為00EEH,根據(jù)要求控制字應(yīng)設(shè)為

00001

111PC7置1

00000

110PC3置0程序:

MOVAL,OFH;調(diào)入控制字內(nèi)容

MOVDX,00EEH;調(diào)入控制口地址

OUTDX,ALMOVAL,06HOUTDX,AL例二:設(shè)有2片8255A芯片,在系統(tǒng)中的連接如圖所示。當(dāng)8255AD0—D7數(shù)據(jù)線與數(shù)據(jù)總線低8位相連時(shí),其4個(gè)端口的地址號(hào)為何值?若與數(shù)據(jù)總線高8位相連時(shí),又為何值?1#:28H,2AH,2CH,2EH2#:30H,32H,34H,36H如接高8位1#:29H,2BH,2DH,2FH2#:31H,33H,35H,37H(一)、8255的工作方式方式0__基本輸入/輸出方式方式1__選通輸入/輸出方式方式2__雙向總線I/O方式三、8255的工作方式和C口狀態(tài)字查詢傳輸(1)、方式0__基本輸入/輸出方式

___適用于不需用聯(lián)絡(luò)信號(hào)(應(yīng)答)或不使用中斷聯(lián)系的簡(jiǎn)單輸入輸出電路(CPU可直接用輸入/輸出指令操作,不需要聯(lián)絡(luò)信號(hào))

①任何一個(gè)端口均可作為輸入或輸出端口,各端口之間沒有規(guī)定必然的聯(lián)系②各個(gè)端口的輸入或輸出,可以有16種不同的組合③輸出有鎖存功能

A端口B端口C高四位C第四位使用場(chǎng)合:無(wú)條件傳輸(同步傳送)

特點(diǎn):利用8255檢測(cè)開關(guān)的開與關(guān),圖如下,要求A口開關(guān)閉合相應(yīng)B口數(shù)碼管發(fā)光,編制初始化程序段和檢測(cè)程序。例三、解:端口地址:0F0H,0F2H,0F4H,0F6HMOVAL,10010000B;初始化

OUT0F6H,ALA1:MOVDX,0F0H;檢測(cè)程序

INAL,DXNOTALOUT0F2H,ALJMPA1例四、8255作為連接打印機(jī)的接口,工作于方式0,設(shè)端口A、B、C、控制口地址分別是00D0H、00D2H、00D4H、00D6H,電路接線如下圖,編制初始化程序段并將[DI]的一個(gè)字符發(fā)送給打印機(jī)。CPU80868255打印機(jī)STBBUSYPC6PC2PA7--PA0D7-D0D7-D0解:端口地址:00D0H、00D2H、00D4H、00D6H

MOVAL,10000001B;8255初始化

OUT0D6H,AL

……A1:MOVDX,0D4H;檢測(cè)PC2是否為0

INAL,DXTESTAL,04HJNZA1MOVDX,0D0H;送字符到A口

MOVAL,[DI]OUTDX,ALINCDIMOVDX,0D6H;PC6產(chǎn)生正脈沖

MOVAL,00001101BOUT

DX,ALDECAL

OUTDX,ALJMPA1(2)、方式1__選通輸入/輸出方式特點(diǎn):▲端口A、端口B均可工作在方式1下,且均能對(duì)數(shù)據(jù)鎖存,但必須在聯(lián)絡(luò)信號(hào)控制下完成數(shù)據(jù)的輸入/輸出。▲如果端口A或端口B工作在方式1下,則各需用C的3位配合工作,產(chǎn)生相應(yīng)的控制聯(lián)絡(luò)信號(hào)?!丝贑中未配合方式1工作的各位可設(shè)定方式0工作特征使用場(chǎng)合:方式1選通輸入方式選通輸出方式分類:__須使用聯(lián)絡(luò)信號(hào)或中斷信號(hào)建立工作關(guān)系的電路。&PC4INTEAPA7--PA0RDPC5PC3PC6,7STBA(選通)IBFA(輸入緩沖器滿)INTRA(中斷請(qǐng)求)端口A方式1輸入&INTEBPB7--PB0RDPC2PC1PC0STBBIBFBINTRB端口B方式1輸入△

方式1選通輸入方式控制信號(hào)I/OPC6,7I/O中斷允許方式1選通輸入時(shí)序INTRIBFSTB輸入數(shù)據(jù)RDBAPC0PC2PC1PC3PC5PC4PC7PC6圖I/OI/O&INTEAPA7--PA0WRPC4,5端口A方式1輸出PC7PC6PC3OBFAACKAINTRAI/O&INTEBPB7--PB0WR端口B方式1輸出PC1PC2PC0OBFBACKBINTRB△

方式1選通輸出方式控制信號(hào)BAPC2PC1PC0PC6PC7PC3PC5PC4WROBFINTRACK輸出數(shù)據(jù)方式1選通輸出時(shí)序圖I/OI/O△

方式1選通輸入/輸出方式組合控制信號(hào)PA7--PA0PB7--PB0WRRDPC4STBAPC5IBFAPC3INTRAPC6,7I/OPC1PC2PC0OBFBACKBINTRBPA7--PA0PB7--PB0WRPC2PC1PC0STBBIBFBINTRBPC7PC6OBFAACKAPC3INTRAI/OPC4,5RDA口輸入B口輸出A口輸出B口輸入(3)、方式2__雙向總線I/O方式(A口)方式2的方式控制字和控制信號(hào)>=1PC3PC7PC6PC4PC5INTE2INTE1PA7--PA0&&PC2---PC0INTRA(輸入輸出聯(lián)絡(luò)信號(hào))OBFAACKASTBAIBFAI/OWRRD輸出聯(lián)絡(luò)信號(hào)輸入聯(lián)絡(luò)信號(hào)(二)、C口狀態(tài)字說(shuō)明:

▲當(dāng)8255工作在方式0時(shí),C口各位用于輸入或輸出?!?dāng)8255工作在方式1時(shí),C口各位用于產(chǎn)生聯(lián)絡(luò)信號(hào)。

▲當(dāng)8255工作在方式2時(shí),C口各位用于產(chǎn)生聯(lián)絡(luò)信號(hào)。方式1狀態(tài)字:輸入狀態(tài)字:I/OI/OINTRAINTEAIBFAINTEBIBFBINTRBA組狀態(tài)字B組狀態(tài)字方式1狀態(tài)字:輸出狀態(tài)字:A組狀態(tài)字B組狀態(tài)字OBFAINTRAI/OI/OINTEBOBFBINTRBINTEA方式2狀態(tài)字:A組狀態(tài)字B組狀態(tài)字OBFAINTRAIBFAXX

XINTE1INTE2方式1時(shí),作B口狀態(tài)字用方式0時(shí),作輸入輸出用9.28255的應(yīng)用例五:編寫8253初始化程序段。要求;計(jì)數(shù)器0工作在方式0,二進(jìn)制計(jì)數(shù),計(jì)數(shù)初值為8位;計(jì)數(shù)器1工作在方式3,BCD計(jì)數(shù),計(jì)數(shù)初值為4位十進(jìn)制計(jì)數(shù);計(jì)數(shù)器2工作作在方式2,二進(jìn)制計(jì)數(shù),計(jì)數(shù)初值為16位二進(jìn)制數(shù)。(8253的4個(gè)尋址地址號(hào)為40H一43H)解:MOVAL,00010000BOUT43H,ALMOVAL,01110111BOUT43H,ALMOVAL,10110100BOUT43H,AL例六、圖為開關(guān)狀態(tài)檢測(cè)電路和繼電器控制電路。當(dāng)開關(guān)K閉合時(shí),將驅(qū)動(dòng)對(duì)應(yīng)的繼電器(即動(dòng)作);若開關(guān)處于斷開狀態(tài),則無(wú)電流流過繼電器線圈,繼電器不動(dòng)作。若系每隔10ms檢測(cè)一次開關(guān)狀態(tài)和對(duì)繼電器作相應(yīng)控制,定時(shí)控制由8253完成,試編寫對(duì)8255A的初始化程序(初始態(tài)時(shí)應(yīng)保證繼電器不動(dòng)作)和完成上述功能的檢測(cè)、控制程序。解:定時(shí)采用查詢方式設(shè)CPU主頻為5MHZ,PCLK=2.5MHZ(T=400ns)①8253的初始化(端口40H-43H)N0=10ms/800ns=12500=30D4HMOVAL,00110010B;0#計(jì)方式1OUT43H,ALMOVAL,0D4H;30D4H送0#計(jì)

OUT40H,ALMOVAL,30HOUT40H,AL②8255的初始化(端口60H-63H)MOV

AL,10000011B;A口方式0輸出,PC0輸入OUT

63H,AL;B口方式0,輸入PC7輸出,MOV

AL,00001110B;PC7置0OUT

63H,ALMOV

AL,0FFH;初試A口,繼電器不動(dòng)作OUT

60H,AL③檢測(cè)控制程序L1:MOVAL,00001111B;PC7置1

OUT63H,AL

DECAL

OUT63H,ALL2:INAL,62H;讀PC0是否為高

TESTAL,01H;延時(shí)10ms

JZL2

INAL,61H;讀B口

NOTAL

OUT60H,AL

JMPL1例七、8255A的端口A經(jīng)過反相驅(qū)動(dòng)器連接一共陰極的七段發(fā)光二極管顯示器;端口B是中斷方式的輸入口。設(shè)8255A的中斷類型碼是30H。試畫出電路,(中斷接8259)編寫8255A和中斷初始化程序,并編寫中斷服務(wù)程序,用來(lái)實(shí)現(xiàn),當(dāng)CPU從端口B輸入的8位碼是偶數(shù)個(gè)1時(shí),LED上顯示E,否則顯示0。(8255口地址為60H~63H,8259A為一片,口地址為20H、21H)。十進(jìn)制數(shù)與十六進(jìn)制數(shù)對(duì)應(yīng)表①8255A、8259A和中斷向量表的初始化

……

CLIMOV

AL,10000110B;A口方式0輸出,B口方式1輸入OUT

63H,ALMOV

AX,0;設(shè)中斷向量MOV

DS,AXMOV

AX,offsetINTERMOV

[00C0H],AXMOV

AX,segINTERMOV

[00C2H],AXMOV

AL,00000101B;PC2置1,允許8255A中斷OUT

63H,ALMOV

AL,00011011B;8259A初始化OUT20H,ALMOVAL,30H;中斷類型碼OUT21H,ALMOVAL,00000001B;非緩沖OUT

21H,ALSTI;CPU開放中斷②中斷服務(wù)子程序INTERprocFar

pushax

sti

inal,61H;讀B口

addal,0

jPL1

moval,

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論