微型計算機(jī)的接口技術(shù)_第1頁
微型計算機(jī)的接口技術(shù)_第2頁
微型計算機(jī)的接口技術(shù)_第3頁
微型計算機(jī)的接口技術(shù)_第4頁
微型計算機(jī)的接口技術(shù)_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

輸入輸出學(xué)習(xí)要點:輸入輸出接口芯片8255和8253的工作方式及初始化編程。

可編程并行接口8255A并行接口:與CPU、外設(shè)的通信都是并行通信的接口8255A的基本功能:1。兩個8位I/O口:A口和B口兩個4位I/O口:C的高4位口和C的低4位口2。三種工作方式,即方式0:基本I/O方式,無固定聯(lián)絡(luò)線,A、B、C

方式1:選通I/O方式,有固定聯(lián)絡(luò)線,A、B

方式2:雙向I/O方式,有固定聯(lián)絡(luò)線,A3。具有方式控制字和C口置1/置0控制字內(nèi)部結(jié)構(gòu)和引腳:方式控制字:信號與操作:

1A組控制B組控制

C口置位1/置0控制字:

0無效位選擇置復(fù)位選擇說明:(1)按位控制字寫入8255的控制口。(2)該控制字僅對8255的端口輸出鎖存器操作。例:設(shè)8255A的控制口地址為00EEH,要求對端口C的PC7置1,則控制字00001111B=0FH,要求對端口C的PC3清零,控制字為00000110B=06H。下面的程序可以實現(xiàn)上述要求:

MOVAL,0FH

;對PC7置1的控制字

MOVDX,00EEH

;控制口地址送DX

OUTDX,AL

;對PC7置1操作

MOVAL,06H

;對PC3置0的控制字

OUTDX,AL

;對PC3進(jìn)行置0的操作8255A的工作方式1、方式0—基本輸入輸出方式(1)輸入a.端口A,B和PC7~PC4及PC3~PC0都可工作于此方式。b.在此方式下,口線直接與端口輸入緩沖器相連,輸入不具有鎖存功能。c.CPU對數(shù)據(jù)口的輸入指令讀取口線當(dāng)前狀態(tài)。(2)輸出a.端口A,B和PC7~PC4及PC3~PC0都可編程工作于此方式。b.在此方式下,輸出口線直接與端口輸出鎖存器相連,端口輸出緩沖器被打開。c.CPU對數(shù)據(jù)口的輸出指令把數(shù)據(jù)輸出到端口輸出鎖存器,并達(dá)到端口口線。例:用8255A控制三個發(fā)光二極管依秩序循環(huán)顯示。

8255A0A1CS+5V200譯碼器D7~D08088CPUA0A1PA0

PA1

PA2端口地址340H-343HA2-A15發(fā)光二極管IORRDWRIOW用8255A控制三個發(fā)光二極管顯示。8255A的端口地址為:

A端口:340HB端口:341HC端口:342H

控制口:343H

試編寫8255初始化程序段和控制三個發(fā)光二極管顯示程序段。開始8255A初始化延時BX

顯示代碼地址CX=0?YNBX=BX+1CX=CX-1CX

3輸出到PA口1、程序框圖:1)設(shè)A口為輸出口,方式0。B口輸入,方式0,則方式選擇控制字為10000010

B=

82

H。2)A口輸出代碼:

00000110

06H,1號發(fā)光二極管亮

00000101

05H,2號發(fā)光二極管亮

0000001103H,3號發(fā)光二極管亮3)軟件延時2、軟件設(shè)計參考程序:DATASEGMENTCOTREQU343H ;8255A控制口地址PB_AEQU340H ;8255A的A口地址LEDDB06H,05H,03H;LED顯示值DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA…...

MOVDX,COTR;控制口地址

MOVAL,82HOUTDX,AL;A口為方式0輸出,B口為輸入

MOVDX,PB_A;A口地址

LP:MOVCX,3LEABX,LED;1號燈代碼地址

DON:MOVAL,[BX]

OUTDX,AL;1,2,3循環(huán)點亮

CALL

DELAY

;調(diào)延時1ms程序

INCBX

DECCXJNZDONJMPLPDEALY

PROCNEAR

;軟件延時

PUSHCX

MOVCX,186L:NOPNOPLOOPL

POPCX

RETDEALY

ENDPCODEENDSEND2、方式1—選通輸入輸出方式(1)選通輸入方式信號說明:a.STB選通輸入:低電平有效,表示外設(shè)送出新的數(shù)據(jù)。b.IBF輸入緩沖區(qū)滿:輸出,高電平有效。通知外設(shè)輸入緩沖區(qū)滿,不要送新數(shù)據(jù),由CPU讀取數(shù)據(jù)清除。c.INTR中斷請求信號:輸出,高電平有效,可向CPU申請中斷。d.INTE中斷允許,INTEA是C口輸出鎖存器的PC4,INTEB是C口輸出鎖存器的PC2,由它們分別控制A口和B口的中斷申請。INTE=1中斷允許,INTE=0中斷禁止。例:8255A端口A工作在方式1,A口輸入,允許A口中斷,編寫初始化程序。

MOVDX,PCTR;控制口地址送DXMOVAL,10110000B;A口方式1輸入OUTDX,ALMOVAL,00001001B;置PC4=1,允許中斷OUTDX,AL;方式1輸入時序

信號說明:a.OBF輸出緩沖器滿,輸出,低電平有效,通知外設(shè)端口已有可用數(shù)據(jù)。b.ACK收到信號,輸入,低電平有效。外設(shè)通知8255已取走數(shù)據(jù),由其清除OBF,并置“1”

。c.INTR中斷請求信號,輸出,高電平有效,可向CPU申請中斷。d.INTE中斷允許信號INTEA為PC6輸出鎖存器,INTEB為PC2輸出鎖存器。INTE=1中斷允許,INTE=0禁止中斷。方式1輸出時序例:中斷方式打印機(jī)接口及編程(方式1應(yīng)用)

8255A工作在方式1,即端口A工作在方式1輸出,外加一片中斷控制器8259A,端口A的中斷輸出線PC3通過8259A向CPU申請中斷,可以構(gòu)成中斷方式打印接口電路,如圖8-15所示。設(shè)8255A的4個端口地址分別為:244H,245H,246H,247H,試編寫打印機(jī)驅(qū)動程序。分析:用PC7作為打印機(jī)的選通信號,打印機(jī)的作為外設(shè)給8255A的應(yīng)答信號(PC6),

8255A的中斷請求輸出信號PC3接至中斷控制器8259A的IR38255A的控制字為:10101000BPC6置位:

00001101B即

0DH,允許8255A的端口A方式1輸出中斷假設(shè)8259A初始化時寫入ICW2的值為08H,則8255A的端口A的中斷類型碼是0BH(對應(yīng)IR3),此中斷類型碼對應(yīng)的中斷向量應(yīng)放到中斷向量表從002CH開始的4個存儲單元中主程序

MAIN:

MOVDX,247H

MOVAL,0A8H

OUTDX,AL

;設(shè)置8255A的控制字

XORAX,AXMOVDS,AXCLIMOVAX,OFFSETRINGMOV[002CH],AX

MOVAX,SEGRING

MOV[002EH],AX

MOVDX,247HMOVAL,0DH;PC6為1,允許端口A方式1輸出中斷

OUTDX,AL

MOVDI,OFFSETBUFF;設(shè)置地址指針

MOVCX,99;設(shè)置計數(shù)器初值

MOVDX,244H

MOVAL,[DI]OUTDX,AL;輸出第一個字符

INCDI

STINEXT:

HLT;等待中斷

LOOPNEXT

ABC:

CLIMOVAH,4CHINT21HRING:

MOV

DX,244HMOVAL,[DI]OUTDX,AL

;從端口A輸出一個字符

INC DI

;修改地址指針 IRET

;中斷返回

中斷服務(wù)子程序效數(shù)據(jù)。(3)ACKA輸入,低電平有效。外設(shè)發(fā)出ACKA打開A口輸出緩沖器,讀取數(shù)據(jù),同時清除OBFA,并使INTR有效。(4)STBA選通信號,輸入,低電平有效,外設(shè)準(zhǔn)備好數(shù)據(jù),通過STBA把數(shù)據(jù)鎖存到端口輸入鎖存器,同時使IBFA和INTRA有效。(5)IBFA輸入緩沖區(qū)滿,輸出,高電平有效。通知外設(shè)端口已有數(shù)據(jù)。該信號由CPU對數(shù)據(jù)端口讀操作清除。(6)INTE中斷允許信號INTE1為PC6輸出鎖存器INTE2為PC4輸出鎖存器INTE=1中斷允許INTE=0禁止中斷。3、方式2—雙向方式僅A口有此方式??刂菩盘枺海?)INTR中斷請求信號,輸出,高電平有效,向CPU提出中斷請求。由輸出ACKA或輸入STBA使中斷申請信號有效。(2)OBFA輸出緩沖器滿,輸出,低電平有效,通知外設(shè)端口已有有方式2輸入輸出操作時序 MOV CX,256 MOV AL,10000001B OUT 83H,AL MOV AL,00001111B OUT 83H,ALWAITK:IN AL,82H TEST AL,04H JNZ WAITK MOV AL,[BX] OUT 80H,AL MOV AL,00001110B OUT 83H,AL NOP NOP MOV AL,00001111B OUT 83H,AL INC BX LOOP WAITK MOV AH,4CH INT 21H例:

8255與打印機(jī)的連接8255工作于方式?用PC7、PC2做聯(lián)絡(luò)線可編程定時/計數(shù)器8253定時的作用:1。用作時間標(biāo)準(zhǔn);2。作為一些接口的工作節(jié)拍;3。信息傳輸時的同步。計數(shù):1。定時與計數(shù)本質(zhì)是一樣的:計數(shù);2。定時的輸入信號具有周期性,計數(shù)的輸入信號是隨機(jī)的。如何實現(xiàn)定時?軟件方法:用一段程序?qū)崿F(xiàn)延時利用程序循環(huán)延遲指定的時間缺點:CPU占用率?延時精度?兼容?硬件方法:定時/計數(shù)器電路利用脈沖計數(shù)在設(shè)定的時間輸出定時信號●8253是一種硬件定時/計數(shù)器芯片8253的功能:1。三個獨立的、功能相同的16位減1計數(shù)器;2。B、BCD3。有六種工作方式4。最高計數(shù)速度:2MHZ。8253的內(nèi)部結(jié)構(gòu)及引腳:8253的引腳8253端口信號與功能選擇:CSA1A0RDWR功能

00001從計數(shù)器0讀出計數(shù)值

00101從計數(shù)器1讀出計數(shù)值

01001從計數(shù)器2讀出計數(shù)值

00010對計數(shù)器0設(shè)置計數(shù)初值

00110對計數(shù)器1設(shè)置計數(shù)初值01010對計數(shù)器2設(shè)置計數(shù)初值

01110寫控制寄存器

1XXXX數(shù)據(jù)總線為三態(tài)

0XX11數(shù)據(jù)總線為三態(tài)

0110X非法狀態(tài)8253一個計數(shù)器的結(jié)構(gòu):計數(shù)器內(nèi)部結(jié)構(gòu)編程結(jié)構(gòu)—程序員的觀點計數(shù)器(3個)——包括控制寄存器(1個)——

存放控制命令字(8位)(只寫)占用4個地址—3個計數(shù)器,1個控制寄存器16位初值寄存器(只寫)16位計數(shù)寄存器(減1計數(shù)器)16位鎖存寄存器(只讀)(當(dāng)前計數(shù)初值)8253的控制字:計數(shù)器讀寫格式工作方式BCD

控制字寫入控制口,各位含義如下:SC1SC0:計數(shù)器通道選擇

00通道001通道110通道211非法RW1RW0:計數(shù)器讀寫選擇

00計數(shù)器鎖存

01只讀寫低8位

10只讀寫高8位

11先低8位,再高8位

M2M1M0:計數(shù)器工作方式選擇000方式0001方式1x10方式2x11方式3100方式4101方式5BCD:計數(shù)器進(jìn)制選擇

016位二進(jìn)制計數(shù)器

1BCD碼計數(shù)器(二)8253工作方式1、模式0——

計數(shù)結(jié)束產(chǎn)生中斷方式1(可編程單穩(wěn))

方式2(分頻器)

方式3(方波發(fā)生器)

方式4(軟件觸發(fā)選通方式)

方式5(硬件觸發(fā)選通方式)

初始化程序流程寫控制字寫計數(shù)值低8位寫計數(shù)值高8位*非必須寫入順序:可按計數(shù)器分別寫入控制字和初值。也可先寫所有計數(shù)器控制字,再寫入它們的初值例:若8253的地址為40H、41H、42H、43H,選擇計數(shù)器0,工作在方式0,計數(shù)初值為4,采用二進(jìn)制計數(shù),則初始化程序如下:讀8253的當(dāng)前計數(shù)值:先鎖存,后讀數(shù)值。例:MOVAL,00000000BOUT43H,ALINAL,40HMOVAL,10HOUT43H,ALMOVAL,4OUT40H,AL用8253監(jiān)視一個生產(chǎn)流水線,每通過50個工件,揚聲器響5秒鐘,頻率為2000Hz。其原理如圖所示。圖中工件從光源與光敏三極管間通過時,在晶體管的發(fā)射極會產(chǎn)生一個脈沖,此脈沖作為8253計數(shù)器的CLK

溫馨提示

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

評論

0/150

提交評論