版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
接口分類及功能可編程計(jì)數(shù)器/定時(shí)器8253-5
可編程并行接口芯片8255A可編程中斷控制器8259A第八章可編程接口芯片及應(yīng)用5-并行接口,常用于老式的并行打印機(jī)連接,也有一些老式游戲設(shè)備采用這種接口,目前較少用,主要是因?yàn)閭鬏斔俾瘦^慢,正在被USB或IEEE1394接口所取代6-串行接口,主要是用于以前的扁口鼠標(biāo)、Modem以及其它串口通信設(shè)備。不足之處是數(shù)據(jù)傳輸速率低,將被USB或IEEE1394接口所取代。4-鍵盤和鼠標(biāo)接口,它們的外觀結(jié)構(gòu)是一樣的,但不能用錯(cuò)。為便于識(shí)別,通常以不同顏色區(qū)分,綠色為鼠標(biāo)接口,而紫色為鍵盤接口。7、9-USB接口。也是一種串行接口,目前最新標(biāo)準(zhǔn)是2.0版,傳輸速率可達(dá)480MB/s。目前許多上設(shè)都采用這種設(shè)備接口,如Modem、打印機(jī)、掃描儀、數(shù)碼相機(jī)等。優(yōu)點(diǎn)數(shù)據(jù)傳輸速率高、支持即插即用、支持熱撥插、無需專用電源、支持多設(shè)備無PC獨(dú)立連接等。常用接口(一)10-雙絞以太網(wǎng)線接口,也稱為“RJ-45接口”。這要主板集成了網(wǎng)卡才會(huì)提供的,它是用于網(wǎng)絡(luò)連接的雙絞網(wǎng)線與主板中集成的網(wǎng)卡進(jìn)行連接。8-IEEE1394接口,目前最新版本仍為IEEE139495a版,最高傳輸速率為400MB/s,但它的IEEE1394b版將達(dá)到1.6GB/s的傳輸速率。它與USB類似,它也支持即插即用、熱撥插、多設(shè)備無PC連接等。由于它的標(biāo)準(zhǔn)使用費(fèi)比較高,目前仍受到許多限制,只是在一些高檔設(shè)備中應(yīng)用普遍,如數(shù)碼相機(jī)、高檔掃描儀等。11-聲卡輸入/輸出接口,在主板集成了聲卡后才提供的,通常在主板上都可看到這3個(gè)接口。常用的只有2個(gè),就是輸入和輸入出接口。通常也是用顏色來區(qū)分,最下面紅色的那個(gè)為輸出接口,接音箱、耳機(jī)等音頻輸入設(shè)備,而最上面的那個(gè)淺藍(lán)色的為音頻輸入接口,用于連接麥克風(fēng)、話筒之類音頻外設(shè)。常用接口(二)具有輸入和輸出功能的可編程接口電路,包括輸入接口,主要是8位的三態(tài)門;輸出接口,主要是8位的鎖存器;另外還有8位的多路轉(zhuǎn)換開關(guān)及控制此開關(guān)的寄存器FF。用戶對(duì)寄存器FF寫入的內(nèi)容稱為命令字或方式控制字。
寄存器FF稱為命令寄存器,相應(yīng)的端口稱為命令端口或控制端口。對(duì)可編程芯片初始化過程實(shí)際上就是對(duì)芯片的控制端口寫入各種命令字的操作過程。可編程接口概述
8253-5計(jì)數(shù)器/定時(shí)器
8259A中斷控制器
8255A并行I/O接口
8250串行I/O接口常用可編程接口芯片按接口功能:通用接口和專用接口。
通用接口:適用于大部分外設(shè),如行式打印機(jī)、電傳打字機(jī)和鍵盤等。分為并行接口和串行接口。并行接口:按字節(jié)傳送;串行接口:和CPU之間并行傳送,和外設(shè)之間串行傳送的。
專用接口:僅適用于某臺(tái)外設(shè)或某種微處理器,用于增強(qiáng)CPU的功能。接口分類1.緩沖鎖存數(shù)據(jù)通常CPU與外設(shè)工作速度不可能完全匹配,數(shù)據(jù)傳送中難免有等待的情況。為此,需把數(shù)據(jù)暫存在接口的緩沖寄存器或鎖存器中,以便緩沖或等待;而且,要為CPU提供有關(guān)外設(shè)的狀態(tài)信息。2.地址譯碼微機(jī)系統(tǒng)中,每個(gè)外設(shè)都被賦予一個(gè)相應(yīng)的地址編碼,外設(shè)接口電路能進(jìn)行地址譯碼,以選擇設(shè)備。外設(shè)與CPU之間有一些聯(lián)絡(luò)信號(hào),如外設(shè)中斷請(qǐng)求,CPU的響應(yīng)等信號(hào)都需要接口來傳送。3.傳送命令接口功能(一)4.碼制轉(zhuǎn)換CPU輸入輸出信號(hào)一般都是TTL電平,而外設(shè)信號(hào)就不一定是TTL電平。外設(shè)與CPU連接時(shí),要進(jìn)行電平轉(zhuǎn)換,使CPU與外設(shè)的電壓或電流相匹配。某些通信設(shè)備中,信號(hào)是以串行方式傳輸?shù)模?jì)算機(jī)代碼是以并行方式輸入輸出的,需要進(jìn)行并行碼與串行碼的互相轉(zhuǎn)換。5.電平轉(zhuǎn)換接口功能(二)24腳封裝的雙列直插式芯片。3路定時(shí)/計(jì)數(shù)口8位數(shù)據(jù)線2位片內(nèi)地址線3條控制線2條電源線8253引腳與功能結(jié)構(gòu)(一)D0~D7:數(shù)據(jù)線。A0~A1:地址線,用于選擇3個(gè)計(jì)數(shù)器中的一個(gè)及選擇控制字寄存器。RD:讀控制信號(hào),低有效。WR:寫控制信號(hào),低有效。CS:片選端,低有效。CLK0~2:計(jì)數(shù)器0#、1#、2#的時(shí)鐘輸入端。GATE0~2:計(jì)數(shù)器0#、1#、2#的門控制脈沖輸入端,由外部設(shè)備送入門控脈沖。OUT0~2:計(jì)數(shù)器0#、1#、2#的輸出端,由它接至外部設(shè)備,以控制其啟停。8253-5引腳的定義如下:8253引腳與功能結(jié)構(gòu)(二)3個(gè)獨(dú)立結(jié)構(gòu)完全相同的16位計(jì)數(shù)器。每個(gè)計(jì)數(shù)器均以減法計(jì)數(shù),可按二進(jìn)制或十進(jìn)制計(jì)數(shù),有6種工作方式,可通過編程選擇。8253內(nèi)部結(jié)構(gòu)(一)每個(gè)計(jì)數(shù)器內(nèi)部包括:計(jì)數(shù)初值寄存器計(jì)數(shù)執(zhí)行部件計(jì)數(shù)輸出寄存器8253內(nèi)部結(jié)構(gòu)(二)控制寄存器(寫操作)
初始值寄存器(讀寫操作)
CPU對(duì)8253寫入控制字,編程改變8253的功能CPU對(duì)8253寫入計(jì)數(shù)初值,使8253獲得定時(shí)量CPU從初值寄存器中讀取初值。計(jì)數(shù)初值的選擇和定時(shí)長(zhǎng)短以及時(shí)鐘頻率有關(guān)。注:上述二個(gè)寄存器可編程寫控制字時(shí)初值寄存器清08253內(nèi)部結(jié)構(gòu)(三)為16位計(jì)數(shù)器,完成減1操作根據(jù)計(jì)數(shù)狀態(tài)產(chǎn)生輸出波形注:解決16位計(jì)數(shù)器與8位數(shù)據(jù)線的矛盾
注:上述二個(gè)寄存器不可編程
計(jì)數(shù)器
計(jì)數(shù)輸出寄存器
8253內(nèi)部結(jié)構(gòu)(四)3個(gè)計(jì)數(shù)器和1個(gè)控制字寄存器,可通過地址線A0、A1,讀寫控制線RD、WR與選片CS進(jìn)行尋址,并實(shí)現(xiàn)相應(yīng)的操作。8253尋址方式8253工作方式(一)0001000010HMOVAL,10HOUT43H,AL;寫計(jì)數(shù)器0的控制字MOVAL,04HOUT40H,AL;寫計(jì)數(shù)器0的初值
控制字編程例1:8253工作為計(jì)數(shù)器0,方式0,初值為4,二進(jìn)制計(jì)數(shù),設(shè)寄存器地址為40H~43H計(jì)數(shù)器0寫低字節(jié)方式0二進(jìn)制計(jì)數(shù)8253工作方式(二)
77H控制字編程例2:8253工作為計(jì)數(shù)器1,方式3,初值為4020H,十進(jìn)制計(jì)數(shù),設(shè)寄存器地址為40H~43H0111011
1MOVAL,77HOUT43H,AL;寫計(jì)數(shù)器1的控制字MOVAL,20HOUT41H,AL;寫計(jì)數(shù)器1的低8位初值
MOVAL,40HOUT41H,AL;寫計(jì)數(shù)器1的高8位初值計(jì)數(shù)器1先寫低字節(jié)后寫高字節(jié)方式3十進(jìn)制計(jì)數(shù)8253工作方式(三)
A7H控制字編程例3:8253工作為計(jì)數(shù)器2,方式3,初值為4000H,十進(jìn)制計(jì)數(shù),設(shè)寄存器地址為40H~43H1010011
1MOVAL,0A7HOUT43H,AL;寫計(jì)數(shù)器2的控制字MOVAL,40HOUT42H,AL;僅寫計(jì)數(shù)器2的高8位初值計(jì)數(shù)器2寫高字節(jié)方式3十進(jìn)制計(jì)數(shù)8253工作方式(四)方式0—計(jì)數(shù)結(jié)束產(chǎn)生中斷輸出(軟件控制)方式1—重復(fù)觸發(fā)的單穩(wěn)輸出(硬件控制)方式2—分頻器(軟件控制)方式3—方波發(fā)生器(軟件控制)方式4—選通信號(hào)發(fā)生器(軟件觸發(fā))方式5—選通信號(hào)發(fā)生器(硬件觸發(fā))8253工作方式功能計(jì)數(shù)觸發(fā)特點(diǎn)(CLK)
門控特點(diǎn)(GATE)
波形輸出特點(diǎn)(OUT)不同工作方式有不同的計(jì)數(shù)脈沖的觸發(fā)特點(diǎn)不同工作方式門控電平方式有所不同不同工作方式會(huì)產(chǎn)生不同的輸出波形8253工作方式特點(diǎn)a、門控信號(hào)GATE必須為1,計(jì)數(shù)器才能計(jì)數(shù);b、計(jì)數(shù)時(shí)通道輸出端OUT一直為0;c、通道計(jì)數(shù)器計(jì)數(shù)到0后,OUT由0到1,同時(shí)計(jì)數(shù)器停止工作。方式0
計(jì)數(shù)結(jié)束,產(chǎn)生中斷控制門輸出端初始低電平8253工作方式0方式1
可編程單穩(wěn)觸發(fā)器
a、門控信號(hào)GATE是觸發(fā)信號(hào),上升沿有效。即開始計(jì)數(shù)是由GATE的上升沿觸發(fā)的;
b、觸發(fā)后,通道計(jì)數(shù)器開始計(jì)數(shù),輸出端OUT由高變低。
c、計(jì)數(shù)器計(jì)數(shù)到0,OUT再由低變高??刂崎T輸出端初始高電平8253工作方式1a、GATE門為1,計(jì)數(shù)器才能工作,對(duì)CLK端上的脈沖進(jìn)行計(jì)數(shù);b、當(dāng)計(jì)數(shù)器“減”計(jì)數(shù)到1時(shí),OUT由高變低,再經(jīng)過一個(gè)CLK周期,即計(jì)數(shù)器計(jì)數(shù)到0時(shí),OUT又跳變?yōu)楦?。方?輸出周期性負(fù)脈沖信號(hào),其寬度固定為一個(gè)CLK周期;c、當(dāng)計(jì)數(shù)器的值減為0時(shí),自動(dòng)重新裝入計(jì)數(shù)初值,實(shí)現(xiàn)循環(huán)計(jì)數(shù)。方式2
分頻器(也稱分頻脈沖產(chǎn)生器)控制門輸出端初始高電平8253工作方式2方式3
方波頻率發(fā)生器方式2雖然可以作分頻電路,但其輸出是窄脈沖,如果是方波,就只有選方式3方波寬度=n/2高電平寬度=(n+1)/2低電平寬度=(n-1)/2控制門輸出端初始低電平8253工作方式3方式4
軟件觸發(fā)選通脈沖a、門控信號(hào)GATE為高電平,計(jì)數(shù)器開始減1計(jì)數(shù),OUT維持高電平;b、當(dāng)計(jì)數(shù)器減到0,輸出端OUT變低,再經(jīng)過一個(gè)CLK輸入時(shí)鐘周期,OUT輸出又變高。初始高電平控制門輸出端8253工作方式4方式5
硬件觸發(fā)選通脈沖同方式4很相似,當(dāng)控制字寫入控制寄存器后,OUT變高。同方式4不同的一點(diǎn)是當(dāng)計(jì)數(shù)值寫入通道計(jì)數(shù)器后,通道并未被觸發(fā),也就是計(jì)數(shù)器并不立即開始計(jì)數(shù)。只有當(dāng)GATE信號(hào)的上升沿觸發(fā)通道后,通道計(jì)數(shù)器才開始計(jì)數(shù)??刂崎T輸出端初始高電平8253工作方式5用8253產(chǎn)生A/D轉(zhuǎn)換器的啟動(dòng)控制信號(hào)。采樣時(shí)間=L*N/F采樣頻率=F/M計(jì)數(shù)器工作模式計(jì)數(shù)值工作模式0#2M1#1N2#3L8253應(yīng)用舉例(一)計(jì)數(shù)器1和2串聯(lián)工作,門控信號(hào)由開關(guān)提供
CLK2=F OUT2=F/L CLK1=OUT2=F/LOUT1=F/(L*N)T=(L*N)/F計(jì)數(shù)器0的門控信號(hào)由OUT1提供,時(shí)間是(L*N)/F CLK0=F OUT0=F/M輸出負(fù)脈沖,經(jīng)過反相后變成正脈沖,啟動(dòng)A/D轉(zhuǎn)換器。如果F=10KHz,要求采樣時(shí)間5秒,采樣頻率100Hz,則
M=F/100=100
即M=100 N*L=5*10K=50K,選
N=50,L=1000假設(shè)端口地址是
0C0H~0C3H計(jì)數(shù)器工作模式計(jì)數(shù)值工作模式0#2M1#1N2#3L采樣時(shí)間=L*N/F采樣頻率=F/M8253應(yīng)用舉例(二)
MOVAL,00010100B;計(jì)數(shù)器0,寫低字節(jié),工作方式2,二進(jìn)制計(jì)數(shù)
OUT0C3H,AL;控制端口地址C3HMOVAL,100;計(jì)數(shù)值M=100 OUT0C0H,AL;計(jì)數(shù)器0,地址為C0H MOVAL,01010010B;計(jì)數(shù)器1,寫低字節(jié),工作方式1,二進(jìn)制計(jì)數(shù)
OUT0C3H,AL;控制端口地址C3HMOVAL,50;計(jì)數(shù)值N=50 OUT0C1H,AL;計(jì)數(shù)器1,地址為C1HMOVAL,10110111B;計(jì)數(shù)器3,先寫低、后寫高,工作方式3,十進(jìn)制計(jì)數(shù)
OUT0C3H,AL;控制端口地址C3HMOVAX,1000;計(jì)數(shù)值L=1000OUT0C2H,AL;先寫低字節(jié)
MOVAL,AHOUT0C2H,AL;再寫高字節(jié)程序如下:8253應(yīng)用舉例(三)40DIP封裝8
位A、B、C口8
位數(shù)據(jù)線2
位片內(nèi)地址線4
條控制線2
條電源線8255A引腳定義與功能(一)D0~D7:數(shù)據(jù)線,三態(tài)雙向8位緩沖器。A0~A1:地址線,用于選擇端口。RD:讀控制線,低有效。WR:寫控制線,低有效。CS:片選端,低有效。RESET:復(fù)位信號(hào),高有效。A口:8位數(shù)據(jù)輸入鎖存器和8位數(shù)據(jù)輸出鎖存器/緩沖器。B口:8位數(shù)據(jù)輸入緩沖器和8位數(shù)據(jù)輸出鎖存器/緩沖器。C口:8位數(shù)據(jù)輸入緩沖器和8位數(shù)據(jù)輸出鎖存器/緩沖器。8255A引腳定義與功能(二)8255A內(nèi)部結(jié)構(gòu)框圖(一)3個(gè)8位數(shù)據(jù)端口A、B、C各有不同特點(diǎn),可分別作為輸入端口或輸出端口。 A口與B口常作為獨(dú)立的輸入端口或輸出端口,C口則配合A口和B口工作。C口通過控制命令分成為2個(gè)4位端口,每個(gè)4位端口包含1個(gè)4位的輸入緩沖器和1個(gè)4位的輸出鎖存器/緩沖器,分別用來為A口和B口輸出控制信號(hào)和輸入狀態(tài)信號(hào)。1.數(shù)據(jù)端口A、B、C8255A內(nèi)部結(jié)構(gòu)框圖(二)兩個(gè)功能:接收來自芯片內(nèi)部數(shù)據(jù)總線上的控制字;接收來自讀寫控制邏輯電路的讀/寫命令,以此來決定兩組端口的工作方式和讀/寫操作。2.A組控制和B組控制部件8255A內(nèi)部結(jié)構(gòu)框圖(三)3.讀/寫控制邏輯電路管理數(shù)據(jù)傳輸過程:接收CS及來自地址總線的信號(hào)A1、A0和控制總線的信號(hào)RESET、WR、RD。將它們組合后,得到對(duì)A組控制部件和B組控制部件的控制命令,并送給這兩個(gè)部件,再由它們完成對(duì)數(shù)據(jù)、狀態(tài)信息和控制信息的傳輸。8255A內(nèi)部結(jié)構(gòu)框圖(四)4.數(shù)據(jù)總線緩沖器雙向三態(tài)8位數(shù)據(jù)緩沖器,8255A通過它與系統(tǒng)數(shù)據(jù)總線相連。輸入數(shù)據(jù)、輸出數(shù)據(jù)、CPU發(fā)給8255A的控制字都是通過該部件傳遞的。8255A內(nèi)部結(jié)構(gòu)框圖(五)8255A內(nèi)部有3個(gè)I/O端口和一個(gè)控制字端口,通過地址線A0、A1,讀寫控制線RD、WR與片選端CS進(jìn)行尋址并實(shí)現(xiàn)相應(yīng)的操作。:::8255A尋址方式方式0—基本輸入/輸出方式;方式1—選通輸入/輸出方式;方式2—雙向傳送方式。當(dāng)8255A接收到寫入控制口的控制字時(shí),對(duì)D7位標(biāo)志位進(jìn)行測(cè)試。8255A工作方式(一)若D7=1,方式選擇字。8255A工作方式(二)若D7=0,C口的置1/置0控制字。0XXXB2B1B01/0特征位D7D6D5D4D3D2D1D01=置10=置0C口PC0~PC7位的位編碼8255A工作方式(三)C端口的位選擇編碼D3D2D1
編碼D0=0D0=1000PC0LH001PC1LH010PC2LH011PC3LH100PC4LH101PC5LH110PC6LH111PC7LH8255A工作方式(四)
任何一個(gè)端口都可用作輸入或輸出。方式0:基本的輸入/輸出方式
由A口、B口、C口高4位與C口低4位4組組合成16種不同的輸入/輸出組態(tài)。100A口C口高4位0B口C口低4位特征位D7D6D5D4D3D2D1D0方式0A組B組定義B口為方式0
使用場(chǎng)合:同步傳送,查詢式傳送。8255A工作方式0方式1:選通輸入/輸出方式,適合中斷式傳送利用端口C提供的選通信號(hào)和應(yīng)答信號(hào),來控制輸入/輸出操作。端口A和端口B均為輸入方式10111/011X特征位D7D6D5D4D3D2D1D0方式1A口輸入B口輸入B口方式1PC6、PC71=輸入,0=輸出8255A工作方式1(一)端口A和端口B均為輸出方式10101/010X特征位D7D6D5D4D3D2D1D0方式1A口輸出B口輸出B口方式1PC4、PC51=輸入,0=輸出8255A工作方式1(二)端口A輸入、端口B輸出10111/010X特征位D7D6D5D4D3D2D1D0方式1A口輸入B口輸出B口方式1PC6、PC71=輸入,0=輸出8255A工作方式1(三)端口A輸出、端口B輸入10101/011X特征位D7D6D5D4D3D2D1D0方式1A口輸出B口輸入B口方式1PC4、PC51=輸入,0=輸出8255A工作方式1(四)方式2:選通雙向傳輸僅適用于端口A。11XXX1/01/01/0特征位D7D6D5D4D3D2D1D0方式2B組工作方式0=方式01=方式1PA0~PA70=輸出1=輸入PC0~PC20=輸出1=輸入8255A工作方式2例1:8255A作為連接打印機(jī)接口,工作在方式0,輸出。工作過程:需要打印時(shí),查詢打印機(jī)是否忙?不忙時(shí)通過8255A發(fā)送一個(gè)字符給打印機(jī)。為使打印機(jī)接收數(shù)據(jù),要生成一個(gè)選通脈沖(初始值是1,置0,再置1)。8255A應(yīng)用實(shí)例(一)A口:方式0、輸出數(shù)據(jù)C口上:方式0、PC6輸入狀態(tài)信號(hào)C口下:方式0、PC2輸出選通信號(hào)方式控制字為:10001000
B
(88H)80868255A打印機(jī)D7~D0PAPC2PC6STBBUSY100A口C口高4位0B口C口低4位特征位D7D6D5D4D3D2D1D0方式0A組B組定義B口為方式08255A應(yīng)用實(shí)例(二)
Setup:
MOV AL,88H ;設(shè)置工作方式
OUT 0D3H,AL MOV AL,5 ;置PC2為1
OUT 0D3H,AL
Ready:
INAL,0D2H TEST AL,40H ;測(cè)試PC6狀態(tài)
JNZ Ready MOV AL,BL ;打印的字符送AL中
OUT 0D0H,AL MOV AL,4 ;置PC2為0
OUT 0D3H,AL MOV AL,5 ;置PC2為1
OUT 0D3H,AL≥0.5ms設(shè)端口地址是:0D0H~0D3H,要打印的字符放在BL中。8255A應(yīng)用實(shí)例(三)芯片特點(diǎn)使用形式注:中斷源數(shù)量與芯片數(shù)量間的關(guān)系可編寫程序控制芯片的多項(xiàng)功能可提供多中斷源的中斷類型碼中斷源有多種觸發(fā)方式可屏蔽/允許輸入端的中斷源采用NMOS工藝制造,只需要一組5V電源單片方式—可提供8個(gè)中斷源級(jí)聯(lián)方式—最多可提供64個(gè)中斷源(9片)8259A芯片特點(diǎn)28DIP封裝8個(gè)中斷源輸入8位數(shù)據(jù)線1
位片內(nèi)地址線3
條控制線4
條級(jí)聯(lián)線2
條中斷請(qǐng)求響應(yīng)線2條電源線8259A引腳與功能結(jié)構(gòu)(一)與中斷源有關(guān)(14個(gè))
IR0~IR7—外部中斷源輸入引腳
INT—中斷請(qǐng)求輸出引腳
接8086CPU的INTRINTA—中斷響應(yīng)輸入引腳
接8086CPU的INTACAS0~CAS2—級(jí)連選擇線
SP/EN—級(jí)連控制線8259A引腳與功能結(jié)構(gòu)(二)與CPU有關(guān)(12個(gè))
D0~D7
—8位數(shù)據(jù)傳送線
CPU將控制字經(jīng)數(shù)據(jù)線傳給8259控制字寄存器外部中斷源IR0~IR7狀態(tài)經(jīng)數(shù)據(jù)線傳給CPU8259內(nèi)部寄存器與CPU的數(shù)據(jù)傳送
RD、WR—讀/寫控制線
CS—片選控制線
CS=L時(shí),8259片選有效
CS由譯碼電路產(chǎn)生
A0—片內(nèi)地址線
一線兩址,選定8259內(nèi)部寄存器
A0、CS構(gòu)成8259內(nèi)部寄存器地址8259A引腳與功能結(jié)構(gòu)(三)8259A中斷控制器包括8個(gè)主要功能部件。
8259A內(nèi)部結(jié)構(gòu)(一)1.
數(shù)據(jù)總線緩沖器三態(tài)雙向,通過引腳D0~D7與CPU的數(shù)據(jù)總線連接。用于傳送CPU發(fā)至8259的各種命令控制字、8259發(fā)至CPU的各種狀態(tài)信息,以及中斷響應(yīng)期間8259向CPU提供的中斷類型號(hào)。2.
讀/寫邏輯用于接收來自CPU的讀/寫控制信號(hào)、片選控制信號(hào)及內(nèi)部端口選擇信息。8259A內(nèi)部結(jié)構(gòu)(二)3.
級(jí)聯(lián)緩沖器/比較器為8259A提供級(jí)聯(lián)控制信號(hào)CAS0~CAS2與雙向功能信號(hào)SP/EN,以滿足8259A在緩沖工作與主從工作方式下的功能需要。4.
控制邏輯根據(jù)CPU對(duì)8259編程設(shè)定的工作方式產(chǎn)生內(nèi)部控制信號(hào),并在適當(dāng)?shù)臅r(shí)候向CPU發(fā)出中斷請(qǐng)求信號(hào)INT,以及將來自CPU的中斷響應(yīng)信號(hào)轉(zhuǎn)換為內(nèi)部所需的各種控制信號(hào)。8259A內(nèi)部結(jié)構(gòu)(三)5.8位中斷請(qǐng)求寄存器IRR用于接收并保存來自IR0~IR7上的外設(shè)中斷請(qǐng)求。6.8位中斷服務(wù)寄存器ISR用于記錄當(dāng)前CPU正在處理的中斷請(qǐng)求位。如有中斷嵌套,則該寄存器可能有多個(gè)位被同時(shí)置位。8259A內(nèi)部結(jié)構(gòu)(四)7.8位中斷屏蔽寄存器IMR用于屏蔽已被鎖存在IRR中的任何一個(gè)中斷請(qǐng)求級(jí)。對(duì)所有要屏蔽的中斷請(qǐng)求線,將相應(yīng)的位置“1”即可。8.
優(yōu)先級(jí)判別器PR用于確定IRR中所有未被屏蔽的中斷請(qǐng)求位的優(yōu)先級(jí)。在CPU發(fā)出第一個(gè)負(fù)脈沖時(shí),將具有最高優(yōu)先級(jí)的申請(qǐng)位存入服務(wù)狀態(tài)寄存器ISR中相應(yīng)的位置。若出現(xiàn)多級(jí)中斷,PR還負(fù)責(zé)將IRR中的最高優(yōu)先級(jí)和ISR中正在服務(wù)的中斷的優(yōu)先級(jí)作比較,以確定是否向CPU發(fā)出中斷請(qǐng)求。8259A內(nèi)部結(jié)構(gòu)(五)(1)初始化工作方式
8259初始化是由CPU發(fā)送2~4個(gè)初始化命令字ICW來實(shí)現(xiàn)的。(2)接收外設(shè)中斷請(qǐng)求初始化后8259進(jìn)入正常工作狀態(tài)。當(dāng)外部中斷源通過IRn引腳向8259發(fā)出有效的中斷請(qǐng)求時(shí),8259會(huì)自動(dòng)將其內(nèi)部中斷請(qǐng)求寄存器IRR的相應(yīng)位置1以記錄并保持外設(shè)的中斷請(qǐng)求。(3)中斷屏蔽判斷中斷請(qǐng)求寄存器IRR中的被置位與中斷屏蔽寄存器IMR的相應(yīng)位比較,如果沒有被屏蔽,信號(hào)被送入優(yōu)先級(jí)分析器。8259A中斷工作過程(一)(4)中斷判優(yōu)中斷請(qǐng)求進(jìn)入優(yōu)先權(quán)分析器PR后,PR將其中的最高優(yōu)先權(quán)與服務(wù)狀態(tài)寄存器ISR中正在處理的中斷優(yōu)先權(quán)比較以確定是否通過INT腳向CPU送出中斷請(qǐng)求信號(hào)。(5)中斷響應(yīng)
CPU在接收到8259的中斷請(qǐng)求信號(hào)后,如果CPU內(nèi)的中斷允許標(biāo)志IF=1,則在當(dāng)前指令執(zhí)行完后進(jìn)入中斷響應(yīng)周期。8259A中斷工作過程(二)CPU在中斷響應(yīng)周期中向8259回送兩個(gè)負(fù)脈沖。8259的控制邏輯在接收到第一個(gè)負(fù)脈沖后完成下列任務(wù):①禁止IRR不再受IR7~IR0信號(hào)的再次變化的影響(直到第二個(gè)結(jié)束);②將優(yōu)先權(quán)處理器PR確定的最高優(yōu)先級(jí)的中斷請(qǐng)求信號(hào)存入服務(wù)狀態(tài)寄存器ISR;③將中斷請(qǐng)求寄存器IRR的相應(yīng)位復(fù)位。8259的控制邏輯在接收到第二個(gè)負(fù)脈沖后,將寄存器ICW2的當(dāng)前內(nèi)容通過數(shù)據(jù)總線D0~D7送至CPU。8259A中斷工作過程(三)(6)中斷結(jié)束如果8259初始化為中斷自動(dòng)結(jié)束方式,即ICW4的AEOI=1,在第二個(gè)負(fù)脈沖結(jié)束時(shí),ISR中的被第一個(gè)負(fù)脈沖置位的位即被復(fù)位。如果8259初始化為非自動(dòng)結(jié)束中斷方式,即ICW4的AEOI=0,則等到中斷結(jié)束命令送到OCW2后,才清除ISR中的相應(yīng)位,表明中斷服務(wù)程序結(jié)束。8259A中斷工作過程(四)8259A強(qiáng)大中斷處理功能和各種靈活工作方式,是通過編程來設(shè)置的,即對(duì)8259A內(nèi)部有關(guān)寄存器寫入控制命令字來實(shí)現(xiàn)控制的。初始化命令字ICW(InitializationCommandWord):ICW1~ICW4,必須在初始化時(shí)分別寫入4個(gè)相應(yīng)的寄存器。一旦寫入,一般在系統(tǒng)運(yùn)行過程中就不再改變。操作命令字OCW(OperationCommandWord):也稱工作方式命令字OCW1~OCW3,必須在設(shè)置初始化命令后方能分別寫入3個(gè)相應(yīng)的寄存器。用來對(duì)中斷處理過程進(jìn)行動(dòng)態(tài)的操作與控制。在一個(gè)系統(tǒng)運(yùn)行過程中,操作命令字可以被多次設(shè)置。8259A控制字格式(一)若要使用8259若要改變8259的功能注:一般由系統(tǒng)程序完成注:一般由應(yīng)用程序完成
必須按規(guī)定向其寫入初始化命令字ICW1~ICW4使8259進(jìn)入工作狀態(tài)可隨時(shí)向其寫入操作命令字OCW1~OCW3使8259按要求工作8259A控制字格式(二)
8259實(shí)際端口地址一線二址,址1:A0=0;址2:A0=18259應(yīng)操作的端口
4個(gè)初始化命令字的寫操作
3個(gè)操作命令字的寫操作
3個(gè)寄存器IRR、ISR、IMR的讀操作
1個(gè)中斷類型號(hào)的讀操作注:2個(gè)地址怎樣完成11個(gè)讀寫操作8259A端口地址(一)A0RDWRCS對(duì)應(yīng)的讀/寫操作
0
0
1
0讀IRR、ISR、中斷狀態(tài)查詢碼
1
0
1
0讀IMR
0
1
0
0寫OCW2、OCW3、ICW1
1
1
0
0寫OCW1、ICW2、ICW3、ICW4X
1
1
0無操作,數(shù)據(jù)線呈高阻態(tài)XXX
1無操作,數(shù)據(jù)線呈高阻態(tài)8259A端口地址(二)
A0=0讀操作
—IRR、ISR、中斷類型號(hào)→CPU
注:解決1址3讀問題,用位控制定義讀入方法
A0=1讀操作
—僅IMR→CPU
A0=0寫操作
—CPU→ICW1、OCW2、OCW3
注:解決1址3寫問題,用位識(shí)別寫入法
A0=1寫操作
—CPU→ICW2、ICW3、ICW4、OCW1
注:解決1址4寫問題,用同址順序?qū)懭敕?259A端口地址(三)
ICW1、ICW2
為必寫初始化命令字
ICW3、ICW4
為選寫初始化命令字
ICW2、ICW3、ICW4
采用同址順序?qū)懭敕?/p>
注:ICW1的地址不同8259A初始化命令字(一)ICW1—芯片控制初始化命令字D7D6D5D4D3D2D1D0XXX1LTIMXSNGLIC4A00同址識(shí)別位1=電平觸發(fā)0=變沿觸發(fā)1=單片0=級(jí)聯(lián)1=需要設(shè)置ICW40=不需要設(shè)置ICW48259A初始化命令字(二)ICW2—中斷類型號(hào)初始化命令字D7D6D5D4D3D2D1D0A15A14A13A12A11A10A9A8A01
D2~D0—IR0~IR7的編碼
注:中斷類型號(hào)的低3位
D7~D3—中斷類型號(hào)的高5位
注:中斷類型號(hào)的高5位由用戶編程定義,
中斷類型號(hào)的低3位自動(dòng)產(chǎn)生,保證IR0~IR7連續(xù)
8259A初始化命令字(三)ICW3—主/從8259A初始化命令字A01D7D6D5D4D3D2D1D0S7S6S5S4S3S2S1S0若D0~D7為1,則IR0~IR7對(duì)應(yīng)端接有從8259芯片若D0~D7為0,則IR0~IR7對(duì)應(yīng)端未接從8259芯片主8259中ICW3的位定義8259A初始化命令字(四)A01D7D6D5D4D3D2D1D000000ID2ID1ID0從8259中ICW3的位定義D2~D0從8259的INT端接主8259的IRn
端的編碼,D7~D3未用例如:010表示從8259A連到主8259A的IRQ2。8259A初始化命令字(五)ICW4—方式控制初始化命令字A01D7D6D5D4D3D2D1D0000SFNMBUFM/SAEOIPM識(shí)別碼1=特殊的全嵌套方式0=非特殊的全嵌套方式緩沖方式時(shí):1=主8259A,0=從8259A1=緩沖方式0=非緩沖方式1=自動(dòng)復(fù)位ISR0=正常中斷結(jié)束1=8086/8088配置0=8080/8085配置8259A初始化命令字(六)
ICW按順序?qū)懭耄ㄏ葘懀?/p>
ICW1→ICW2→(ICW3)→(ICW4)
ICW2、ICW3、ICW4為同址順序?qū)懭敕?/p>
OCW按需要寫入(后寫)
OCW1、OCW2、OCW3無寫入順序
OCW2、OCW3為同址位識(shí)別寫入法8259A操作命令字(一)OCW1-寫IMR寄存器操作命令字D7
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度新型公寓托管出租合同范本3篇
- 二零二五年度智能廣告牌匾技術(shù)研發(fā)與應(yīng)用合同3篇
- 2025年度校園體育設(shè)施租賃管理服務(wù)合同3篇
- 二零二五年度服務(wù)貿(mào)易統(tǒng)計(jì)與分析合同3篇
- 二零二五年份白酒行業(yè)創(chuàng)新技術(shù)研發(fā)與應(yīng)用合同3篇
- 二零二五年度化妝品店會(huì)員折扣合同3篇
- 英語ai課程設(shè)計(jì)
- 通源課程設(shè)計(jì)哪個(gè)簡(jiǎn)單
- 二零二五年度智慧教育項(xiàng)目技術(shù)服務(wù)費(fèi)合同模板3篇
- 二零二五年度歷史文化名城保護(hù)建設(shè)項(xiàng)目合同補(bǔ)充條款3篇
- GJB9001C版標(biāo)準(zhǔn)培訓(xùn)課件
- 船舶防火與滅火(課件)
- 七、監(jiān)理工作重點(diǎn)、難點(diǎn)分析及對(duì)策
- 面膜中藍(lán)銅肽經(jīng)皮滲透性和改善皮膚衰老作用研究
- 湖北省荊州市八縣市2023-2024學(xué)年高一上學(xué)期1月期末考試 化學(xué) 含解析
- 專題05 說明文閱讀(必考題型梳理)50題-2023-2024學(xué)年八年級(jí)語文下學(xué)期期中專題復(fù)習(xí)(上海專用)(解析版)
- 《水文化概論》全套教學(xué)課件
- 2023年四川省公務(wù)員錄用考試《行測(cè)》真題卷及答案解析
- 社區(qū)共享菜園建設(shè)方案及實(shí)施計(jì)劃
- 光伏業(yè)務(wù)合同范例
- 華北理工大學(xué)《高等代數(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
評(píng)論
0/150
提交評(píng)論