第71章典型可編程接口芯片及應(yīng)用_第1頁(yè)
第71章典型可編程接口芯片及應(yīng)用_第2頁(yè)
第71章典型可編程接口芯片及應(yīng)用_第3頁(yè)
第71章典型可編程接口芯片及應(yīng)用_第4頁(yè)
第71章典型可編程接口芯片及應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩54頁(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)介

1、7.1 可編程中斷控制器8259 8259是一個(gè)可編程中斷控制器。一片8259能控制8級(jí)向量中斷,通過(guò)級(jí)聯(lián)方式(用9片8259),最多可構(gòu)成64級(jí)向量中斷系統(tǒng)??蓪?duì)各級(jí)INTR請(qǐng)求進(jìn)行優(yōu)先權(quán)管理,8259具有完全嵌套,循環(huán)優(yōu)先級(jí),特定屏蔽等多種優(yōu)先權(quán)管理方式。對(duì)每一級(jí)中斷請(qǐng)求進(jìn)行均可依需要給予屏蔽或開(kāi)放。當(dāng)CPU響應(yīng)INTR中斷請(qǐng)求后,8259可提供相應(yīng)的中斷類(lèi)型碼,從而使CPU迅速轉(zhuǎn)入中斷服務(wù)程序入口。8259設(shè)計(jì)有多種工作方式,可通過(guò)編程選擇。7.1.1 8259的內(nèi)部結(jié)構(gòu)和引腳D7D0INTAINT中斷請(qǐng)求寄存器中斷屏蔽寄存器數(shù)據(jù)總線緩沖器IR0IR7讀/寫(xiě)控制邏輯級(jí)聯(lián)緩沖器比較器RDW

2、RA0CSCAS0CAS1CAS2SP/EN優(yōu)先權(quán)判別電路中斷服務(wù)寄存器控制邏輯 初始化命令寄存器組和 操作命令寄存器組1 與處理器接口 CPU數(shù)據(jù)總線緩沖器讀/寫(xiě)控制邏輯內(nèi)部控制邏輯DB8位CSWRRDA0所有與CPU交換信息通過(guò)它進(jìn)出CPU CPU通過(guò)它實(shí)現(xiàn) 8259 的讀/寫(xiě)操作控制以及對(duì) 8259進(jìn)行初始化操作 對(duì)8259芯片內(nèi)部實(shí)現(xiàn)控制操作,使8259按初始化編程操作來(lái)工作同一端口地址對(duì)應(yīng)的寄存器的區(qū)別方法利用讀寫(xiě)信號(hào)區(qū)別寫(xiě)入的控制寄存器和讀出的狀態(tài)寄存器 由信息字節(jié)中的標(biāo)志位說(shuō)明是哪個(gè)寄存器由芯片內(nèi)順序控制邏輯按一定順序識(shí)別不同的寄存器 A0 RD WR CS功能 0 1 0 0

3、1 1 0 0 0 0 1 0 1 0 1 0 1 1 0 1寫(xiě)入ICW1、OCW2和OCW3寫(xiě)入ICW2ICW4和OCW1讀出IRR、ISR和查詢字讀出IMR數(shù)據(jù)總線高阻狀態(tài)數(shù)據(jù)總線高阻狀態(tài)2 中斷控制中斷請(qǐng)求寄存器IRR保存8條外界中斷請(qǐng)求信號(hào)IR0IR7的請(qǐng)求狀態(tài)Di位為1表示IRi引腳有中斷請(qǐng)求;為0表示無(wú)請(qǐng)求中斷服務(wù)寄存器ISR保存正在被8259服務(wù)著的中斷狀態(tài)(用于記錄已被獲準(zhǔn)的中斷請(qǐng)求,即將與IR對(duì)應(yīng)的IS位置位)Di位為1表示IRi中斷正在服務(wù)中;為0表示沒(méi)有被服務(wù)注意:ISR除存放正在被服務(wù)的中斷源外,還包括尚未服務(wù)完而中途被別的中斷源暫時(shí)中止的中斷 中斷屏蔽寄存器IMR保存

4、對(duì)中斷請(qǐng)求信號(hào)IR的屏蔽狀態(tài)中斷屏蔽寄存器IMR的每一位可對(duì)IRR中相應(yīng)的中斷源進(jìn)行屏蔽,如果禁止某IR提出中斷請(qǐng)求,就將其中在IMR中的相應(yīng)位量“1”。優(yōu)先權(quán)分析器PR對(duì)保存在IRR的各個(gè)中斷請(qǐng)求經(jīng)過(guò)判斷,確定其中一個(gè)為最高優(yōu)先權(quán),然后在中斷響應(yīng)周期時(shí)間將它選通到中斷服務(wù)寄存器中。3 中斷級(jí)連一個(gè)系統(tǒng)中,8259可以級(jí)連,有一個(gè)主8259,若干個(gè)(最多8個(gè))從8259級(jí)連時(shí),主8259的三條級(jí)連線CAS0CAS2作為輸出線,連至每個(gè)從8259的CAS0CAS2每個(gè)從8259的中斷請(qǐng)求信號(hào)INT,連至主8259的一個(gè)中斷請(qǐng)求輸入端IR主8259的INT線連至CPU的中斷請(qǐng)求輸入端SP/EN在非

5、緩沖方式下,規(guī)定該8259是主片(SP1)還是從片(SP0)7.1.2 8259的中斷工作過(guò)程(1)有中斷請(qǐng)求時(shí),IRR中相應(yīng)位置1(2)若有至少中斷請(qǐng)求是允許的,則8259由INT引腳向CPU發(fā)中斷請(qǐng)求(3)若CPU處于開(kāi)中斷,則在當(dāng)前指令執(zhí)行完后,通過(guò)引腳INTA響應(yīng)(4)8259在收到INTA信號(hào)后,使ISR中相應(yīng)位置1,并且將IRR中的相應(yīng)位清0(5)CPU發(fā)出第二個(gè)INTA信號(hào)時(shí),8259送出一個(gè)8位的中斷向量號(hào),CPU據(jù)此將找到中斷服務(wù)子程序并轉(zhuǎn)去執(zhí)行。(6)8259如工作在AEOI模式,則在接收到第二個(gè)INTA信號(hào)時(shí),將ISR中的相應(yīng)位置0,否則直至中斷服務(wù)子程序結(jié)束時(shí),發(fā)出EO

6、I命令將ISR中的相應(yīng)位清0。8259A的中斷過(guò)程動(dòng)畫(huà)示意返回7.1.3 8259的工作方式普通全嵌套方式特殊全嵌套方式自動(dòng)循環(huán)方式特殊循環(huán)方式優(yōu)先權(quán)固定方式優(yōu)先權(quán)循環(huán)方式設(shè)置優(yōu)先權(quán)方式普通中斷結(jié)束方式特殊中斷結(jié)束方式自動(dòng)中斷結(jié)束方式非自動(dòng)中斷結(jié)束方式結(jié)束中斷處理方式屏蔽中斷源方式普通屏蔽方式特殊屏蔽方式中斷觸發(fā)方式邊沿觸發(fā)方式電平觸發(fā)方式數(shù)據(jù)線連接方式緩沖方式非緩沖方式1設(shè)置優(yōu)先權(quán)方式普通全嵌套方式8259的中斷優(yōu)先權(quán)順序固定不變,從高到低依次為IR0、IR1、IR2、IR7中斷請(qǐng)求后,8259對(duì)當(dāng)前請(qǐng)求中斷中優(yōu)先權(quán)最高的中斷IRi予以響應(yīng),將其向量號(hào)送上數(shù)據(jù)總線,對(duì)應(yīng)ISR的Di位置位,至

7、到中斷結(jié)束(ISR的Di位復(fù)位)在ISR的Di位置位期間,禁止再發(fā)生同級(jí)和低級(jí)優(yōu)先權(quán)的中斷,但允許高級(jí)優(yōu)先權(quán)中斷的嵌套特殊全嵌套方式優(yōu)先權(quán)自動(dòng)循環(huán)方式優(yōu)先權(quán)特殊循環(huán)方式普通全嵌套方式流程返回優(yōu)先權(quán)自動(dòng)循環(huán)方式在這種方式下,任何一級(jí)中斷請(qǐng)求被處理完后, 重新賦給它最低優(yōu)先級(jí),而將最高優(yōu)先級(jí)賦給比它低一級(jí)的中斷請(qǐng)求,其它中斷請(qǐng)求的優(yōu)先級(jí)則以循環(huán)方式類(lèi)推。優(yōu)先權(quán)特殊循環(huán)方式用戶根據(jù)要求用置優(yōu)先級(jí)命令指定最低優(yōu)先級(jí),例如設(shè)置IRi為最低優(yōu)先級(jí),則最高優(yōu)先級(jí)為IRi+1,其它各級(jí)按循環(huán)方式類(lèi)推。2 結(jié)束中斷處理方式8259利用中斷服務(wù)寄存器ISR判斷:某位為1,表示正在進(jìn)行中斷服務(wù);該位為0,就是該中斷

8、結(jié)束服務(wù)。中斷請(qǐng)求處理結(jié)束時(shí),需將ISR中相應(yīng)位清零。自動(dòng)中斷結(jié)束方式自動(dòng)EOI方式,在第二個(gè)INTA#結(jié)束時(shí)自動(dòng)將ISR中相應(yīng)位清零,只需將初始化命令字ICW4中的AEOI置為1即可實(shí)現(xiàn)這種方式普通中斷結(jié)束方式配合全嵌套優(yōu)先權(quán)方式使用當(dāng)CPU用輸出指令往8259發(fā)出普通中斷結(jié)束EOI命令時(shí),8259就會(huì)把所有正在服務(wù)的中斷中優(yōu)先權(quán)最高的ISR位復(fù)位特殊中斷結(jié)束方式配合循環(huán)優(yōu)先權(quán)方式使用CPU在程序中向8259發(fā)送一條特殊中斷結(jié)束命令,這個(gè)命令中指出了要清除哪個(gè)ISR位3 屏蔽中斷源方式普通屏蔽方式將IMR的Di位置1,則對(duì)應(yīng)的中斷IRi被屏蔽,該中斷請(qǐng)求不能從8259A送到CPU如果IMR的

9、Di位置0,則允許IRi中斷產(chǎn)生特殊屏蔽方式一般情況處理一個(gè)中斷時(shí),禁止同級(jí)或低級(jí)中斷進(jìn)入,但有些場(chǎng)合,在處理某個(gè)中斷時(shí),僅希望對(duì)本級(jí)屏蔽,可以響應(yīng)高級(jí)或低級(jí)中斷,此時(shí)采用這種方式。4 中斷觸發(fā)方式邊沿觸發(fā)方式8259將中斷請(qǐng)求輸入端出現(xiàn)的上升沿作為中斷請(qǐng)求信號(hào)電平觸發(fā)方式中斷請(qǐng)求端出現(xiàn)的高電平是有效的中斷請(qǐng)求信號(hào)5 數(shù)據(jù)線連接方式緩沖方式8259的數(shù)據(jù)線需加緩沖器予以驅(qū)動(dòng)8259把SP/EN引腳作為輸出端,輸出允許信號(hào),用以鎖存或開(kāi)啟緩沖器非緩沖方式SP/EN引腳為輸入端若8259級(jí)連,由其確定是主片或從片7.1.4 8259A的編程初始化編程8259開(kāi)始工作前,必須進(jìn)行初始化編程給8259

10、寫(xiě)入初始化命令字ICW中斷操作編程在8259工作期間可以寫(xiě)入操作命令字OCW將選定的操作傳送給8259,使之按新的要求工作還可以讀取8259的信息,了解工作狀態(tài)1 初始化命令字ICW流程D7D6D5D4D3D2D1D0初始化命令字ICW最多有4個(gè)8259在開(kāi)始工作前必須寫(xiě)入必須按照ICW1ICW4順序?qū)懭隝CW1和ICW2是必須寫(xiě)的ICW3和ICW4由工作方式?jīng)Q定Initialization Command Word表示可以任意為1為0都可以(建議為0) 1只能為1,作為標(biāo)志區(qū)別于OCW2,OCW3,它們也是A0=0。用D4=0為標(biāo)志ICW1(芯片控制 A0=0)1LTIMSNGLIC4D7D

11、6D5D4D3D2D1D0中斷觸發(fā)方式:LTIM1,電平觸發(fā)方式LTIM0,邊沿觸發(fā)方式 規(guī)定單片或級(jí)連方式:SNGL1,單片方式SNGL0,級(jí)連方式是否寫(xiě)入ICW4IC41,要寫(xiě)入ICW4IC40,不寫(xiě)入ICW4ICW2(設(shè)置中斷類(lèi)型碼 A0=1)T7T6T5T4T3D7D6D5D4D3D2D1D0設(shè)置中斷向量號(hào)T7T3為中斷向量號(hào)的高5位低3位由8259自動(dòng)確定:IR0為000、IR1為001、IR7為111ICW3(A0=1)S7S6S5S4S3S2/ID2S1/ID1S0/ID0D7D6D5D4D3D2D1D0級(jí)連命令字主片8259:Si1對(duì)應(yīng)IRi接有從片;否則IRi沒(méi)有連接從片從片

12、8259:ID0ID2編碼說(shuō)明從片INT引腳接到主片哪個(gè)IR引腳CAS0 IR0CAS1 IR1CAS2 IR2 IR3INTA IR4 IR5INT IR6 IR7SP/EN CAS0INTA CAS1 CAS2INT IR0 IR1SP/EN IR7CAS0 IR0CAS1 IR1CAS2 IR2 IR3INTA IR4 IR5INT IR6 IR7SP/ENINTAINTR+5V8259級(jí)聯(lián)工作示意圖返回ICW4(方式控制 A0=1)000SFNMBUFM/SAEOIPMD7D6D5D4D3D2D1D0嵌套方式:特殊全嵌套方式(SFNM1)普通全嵌套方式(SFNM0)數(shù)據(jù)線的緩沖方式:緩

13、沖方式(BUF1)非緩沖方式(BUF0) 主片/從片選擇:主片(M/S=1)從片(M/S=0)中斷結(jié)束方式:自動(dòng)中斷結(jié)束(AEOI1)非自動(dòng)中斷結(jié)束(AEOI0)微處理器類(lèi)型:16位80 x86(PM1)8位8080/8085(PM0)初始化流程 2 操作命令字OCWD7D6D5D4D3D2D1D08259A工作期間,可以隨時(shí)接受操作命令字OCWOCW共有3個(gè):OCW1OCW3寫(xiě)入時(shí)沒(méi)有順序要求,需要哪個(gè)OCW就寫(xiě)入那個(gè)OCWOperation Command WordOCW1(中斷屏蔽 A0=1)M7M6M5M4M3M2M1M0D7D6D5D4D3D2D1D0屏蔽命令字內(nèi)容寫(xiě)入中斷屏蔽寄存器

14、IMRDiMi對(duì)應(yīng)IRi,為1禁止IRi中斷;為0允許IRi中斷。各位互相獨(dú)立。OCW2(優(yōu)先級(jí)循環(huán)和中斷結(jié)束A0=0)RSLEOI00L2L1L0D7D6D5D4D3D2D1D0R、SL和EOI配合使用產(chǎn)生中斷結(jié)束EOI命令和改變優(yōu)先權(quán)順序L2L0的3位編碼指定IR引腳 OCW3(A0=0)0ESMMSMM01PRRRISD7D6D5D4D3D2D1D0ESMM、SMM設(shè)置中斷屏蔽方式P、RR和RIS規(guī)定隨后讀取的狀態(tài)字含義3 讀取狀態(tài)字CPU可讀出IRR、ISR、IMR和查詢字A0為低,由OCW3中RR和RIS位設(shè)定讀取IRR或ISR,由OCW3中P位設(shè)定讀取查詢字而A0引腳為高電平時(shí)讀取

15、的都是IMR查詢字反映8259是否有中斷請(qǐng)求8087中斷請(qǐng)求RAM奇偶錯(cuò)I/O通道檢查錯(cuò) NMI屏蔽寄存器屏蔽位8253定時(shí)器鍵盤(pán)未用異步通信卡(輔)異步通信卡(主)硬盤(pán)軟盤(pán)并行打印機(jī)NMIINTR01234567優(yōu)先級(jí)8088CPU8259I/O通道8259在IBM PC系列機(jī)上的應(yīng)用例 (P53):某火災(zāi)報(bào)警系統(tǒng)的部分接口電路如圖所示。該系統(tǒng) 具有溫度和煙霧濃度超限報(bào)警和自動(dòng)滅火功能。當(dāng)溫度或煙霧濃度超限時(shí),進(jìn)行光報(bào)警;兩者同時(shí)超限時(shí),進(jìn)行光、聲報(bào)警,并開(kāi)啟電磁閥,進(jìn)行噴淋滅火。按鍵A為手動(dòng)報(bào)警按鈕,按鍵B為解除報(bào)警按鈕。半導(dǎo)體溫度傳感器的溫度測(cè)量范圍為0127,對(duì)應(yīng)輸出電壓為0V5V。A

16、DC0809輸入電壓范圍為0V5V。開(kāi)關(guān)式集成煙霧傳感器報(bào)警時(shí)輸出高電平,正常工作時(shí)輸出低電平。8253的通道0、通道1、通道2均工作于方式3(方波發(fā)生器),按BCD碼計(jì)數(shù)。揚(yáng)聲器的報(bào)警聲音頻率為2kHz。8253、8255的方式控制字及8255的置位/復(fù)位控制字格式如圖所示。 GATE0A0 CLK0A1 OUT0RD CLK1WR 8253 GATE1CS GATE2 OUT1D7D0 CLK2 OUT2IOWIOR A1 A0 PA7PA0D7D0 PB0 PB1CS PB2WR PC0RDA1 PC4A0 8255 PC1 PC5 PC6 PC7D7D0 IN0ADDAADDB ADD

17、CEOC IN7 OESTARTALE ADC 0809+5V煙霧傳感器驅(qū)動(dòng)電磁閥噴淋頭溫度傳感器D7D08259CSA0驅(qū)動(dòng)揚(yáng)聲器驅(qū)動(dòng)1MHzD7D0D7D0發(fā)光二極管40H43H80H83HD7D020H21HA0+5V+5V按鍵B解除警報(bào)按鍵A手動(dòng)報(bào)警IR7IR1IR08255的方式控制字格式如下:8255 端口C按位置0/置1控制字作用:指定PC口的某一位(某一個(gè)引腳)輸出高平或低電平。注意:C口控制字雖然是對(duì)端口C操作,但應(yīng)寫(xiě)入到控制口地址,而不是寫(xiě)入到C數(shù)據(jù)口0D6D5D4D3D2D1D0特征位 不 用(寫(xiě)0)位 選 擇000=C口0位001=C口1位111=C口7位1=置位(高電

18、平)0=復(fù)位(低電平)8253的方式控制字(A1A011)計(jì)數(shù)器讀寫(xiě)格式工作方式BCDD7D6D5D4D3D2D1D000 計(jì)數(shù)器001 計(jì)數(shù)器110 計(jì)數(shù)器211 非法00 計(jì)數(shù)器鎖存命令 01 只讀寫(xiě)低字節(jié)10 只讀寫(xiě)高字節(jié)11 先讀寫(xiě)低字節(jié) 后讀寫(xiě)高字節(jié)000 方式0001 方式1X10 方式2X11 方式3100 方式4101 方式50 二進(jìn)制1 BCD碼示例部分初始化、主程序及中斷服務(wù)子程序如下:CODESEGMENTASSUME DS:DATA,CS:CODESTART: ;8259初始化MOV AL,13H ;初始化8259 ICW1OUT 20H,ALMOV AL, ;送中斷類(lèi)

19、型碼基值OUT 21H,ALMOV AL,0DHOUT 21H,AL;8255初始化MOV AL, ;置8255工作方式OUT 83H,ALMOV AL,00H ;C口初始化OUT 82H,AL91H 08H;8253初始化MOV AL,37H ;置8253通道0方式控制字OUT 43H,ALMOV AL,00H ;置8253通道0計(jì)數(shù)初值OUT 40H,ALMOV AL,10HOUT 40H,ALMOV AL, ;置8253通道1方式控制字OUT 43H,ALMOV AL,00H ;置8253通道1計(jì)數(shù)初值OUT 41H,ALMOV AL,10HOUT 41H,ALMOV AL, 0B7H;

20、 置8253通道2方式控制字OUT 43H,AL 77H或7FH MOV AL, ;置8253通道2計(jì)數(shù)初值OUT 42H,ALMOV AL, ;OUT 42H,AL;中斷設(shè)置MOV AH,25H;設(shè)置中斷向量MOV AL,08H ;中斷類(lèi)型號(hào)為入口參數(shù)MOV BX, ;DS:DX指向4字節(jié)地址MOV DS,BXMOV DX, ;INT 21HMOV AH,25HMOV AL, ;MOV BX,SEG KEYAINTMOV DS,BX 00H 05H SEG KEYBINT OFFSET KEYBINT 09H MOV DX,OFFSET KEYAINTINT 21HSTI;數(shù)據(jù)采集MOV A

21、L,00H ;選ADC0809模擬量輸入通道號(hào)OUT 81H,ALLOP:MOV AL, ;置PC4=1,鎖存模擬量通道選擇號(hào)OUT 83H,ALNOPMOV AL,08H ;置PC4=0,啟動(dòng)A/D轉(zhuǎn)換OUT 83H,ALLOP1:IN AL,82H ;讀8255C口,查詢EOCTEST AL,01HJZ LOP1IN AL,80H ;讀A/D轉(zhuǎn)換結(jié)果CMP AL,0A0H ;判斷是否高于上限 09HJA ABOVEIN AL,82H ;判斷煙霧傳感器是否報(bào)警TEST AL,02HJNZ BJMOV AL,0EHOUT 83H,ALJMP LOPABOVE:IN AL,82HTEST AL,

22、02HJZ BJMOV AL,0F0H ;啟動(dòng)報(bào)警及滅火功能OUT 82H,ALJMP LOPBJ:MOV AL,0FH ;光報(bào)警OUT 83H,ALJMP LOP;中斷服務(wù)KEYAINT PROC FAR ;按鍵A中斷服務(wù)子程序PUSH AXMOV AL,0F0HOUT 82H,ALMOV AL,20H ;給8259發(fā)中斷結(jié)束命令OUT 20H,ALPOP AXIRETKEYAINT ENDP;中斷服務(wù)KEYBINT PROC FAR ;按鍵B中斷服務(wù)子程序PUSH AXMOV AL, ;OUT 82H,ALMOV AL,20H OUT 20H,ALPOP AXIRETKEYBINT END

23、PCODEENDSEND START 0XH或1XH請(qǐng)回答下列問(wèn)題:1、程序空白處填空。2、超限報(bào)警溫度是 。3、報(bào)警時(shí),發(fā)光二極管顯示器的閃爍頻率是 Hz4、僅溫度超限時(shí),報(bào)警燈閃爍報(bào)警,若此時(shí)報(bào)警條件解除,報(bào)警燈將(繼續(xù)、停止) 報(bào)警。5、火災(zāi)發(fā)生后,光、聲報(bào)警,滅火系統(tǒng)啟動(dòng),若此時(shí)報(bào)警條件解除,揚(yáng)聲器將(繼續(xù)、停止) 報(bào)警。6、火災(zāi)發(fā)生后,光、聲報(bào)警,滅火系統(tǒng)啟動(dòng),若報(bào)警條件未解除,按解除報(bào)警鍵B,滅火系統(tǒng)將(繼續(xù)、停止) 工作。 7、報(bào)警條件不成立,此時(shí)按手動(dòng)報(bào)警鍵A,滅火系統(tǒng)將(一直、工作一下馬上停止) 工作。 801停止繼續(xù)繼續(xù)一直例(P10):某實(shí)驗(yàn)室模擬行人過(guò)街交通信號(hào)燈控制系

24、統(tǒng)的 部分接口電路如圖所示。平時(shí),8段LED顯示器不顯示,而發(fā)光二極管紅燈(LED1)亮,綠燈(LED2)滅。若有行人要過(guò)街,按下按鍵A或B后,8段LED顯示器立即顯示60s倒計(jì)時(shí)并保持紅燈亮,綠燈滅。一旦倒計(jì)時(shí)時(shí)間到,則變?yōu)榧t燈滅,綠燈亮, 8段LED顯示器此時(shí)顯示30s倒計(jì)時(shí)讓行人通過(guò),該倒計(jì)時(shí)時(shí)間到,則系統(tǒng)恢復(fù)到平時(shí)狀態(tài)。圖中驅(qū)動(dòng)器均為同相驅(qū)動(dòng)器。8253的通道0、通道1、通道2均工作于方式2(分頻器),按BCD碼計(jì)數(shù)。利用它的通道1輸出OUT1經(jīng)反相器接8259的IR7,產(chǎn)生1s定時(shí)中斷。按鍵A和按鍵B信號(hào)經(jīng)或門(mén)接8259的IR2,產(chǎn)生中斷請(qǐng)求。8255的PC4經(jīng)驅(qū)動(dòng)后接按鍵A和按鍵B

25、的一端,來(lái)控制是否允許按鍵產(chǎn)生中斷請(qǐng)求,8255的PC5接8253的GATE0和GATE1,以控制通道0和通道1的計(jì)數(shù)。8253和8255的方式控制字見(jiàn)圖。 GATE0A0 GATE1A1 RDWR 8253 CLK0 CS OUT0D7D0 CLK1 OUT1IOWIOR A1 A0 PA7PA0D7D0CS PB7PB0WR RDA1 8255A0 PC4PC0 PC5dpa十位D7D08259CSA01MHzD7D0D7D0綠燈40H43H80H83HD7D020H21HA0按鍵B按鍵AIR7IR2驅(qū)動(dòng)器1驅(qū)動(dòng)器2驅(qū)動(dòng)器3dpa個(gè)位紅燈+PC1PC0PC4PC2PC3af b de c

26、g dp八段LED顯示器8255的方式控制字格式如下:8255 端口C按位置0/置1控制字作用:指定PC口的某一位(某一個(gè)引腳)輸出高平或低電平。注意:C口控制字雖然是對(duì)端口C操作,但應(yīng)寫(xiě)入到控制口地址,而不是寫(xiě)入到C數(shù)據(jù)口0D6D5D4D3D2D1D0特征位 不 用(寫(xiě)0)位 選 擇000=C口0位001=C口1位111=C口7位1=置位(高電平)0=復(fù)位(低電平)8253的方式控制字(A1A011)計(jì)數(shù)器讀寫(xiě)格式工作方式BCDD7D6D5D4D3D2D1D000 計(jì)數(shù)器001 計(jì)數(shù)器110 計(jì)數(shù)器211 非法00 計(jì)數(shù)器鎖存命令 01 只讀寫(xiě)低字節(jié)10 只讀寫(xiě)高字節(jié)11 先讀寫(xiě)低字節(jié) 后讀

27、寫(xiě)高字節(jié)000 方式0001 方式1X10 方式2X11 方式3100 方式4101 方式50 二進(jìn)制1 BCD碼示例P11 初始化程序及主程序?yàn)镾TART,按鍵中斷服務(wù)子程序?yàn)镵EYINT,定時(shí)中斷服務(wù)子程序?yàn)門(mén)IMEINT,程序如下:DATE SEGMENTTABDB 3FH,06H,5BH, ,6FH;09的段碼DATAENDSCODESEGMENTASSUME DS:DATA,CS:CODESTART: MOV AL,13H ;初始化8259 ICW1OUT 20H,ALMOV AL,08H ;送中斷類(lèi)型碼基值OUT 21H,ALMOV AL,0DH ;一般中斷結(jié)束方式OUT 21H,

28、AL MOV AL, ;置8255工作方式OUT 83H,ALXOR AL,AL ;A口、B口、C口初始化OUT 80H,ALOUT 81H,ALOUT 82H,ALMOV AL, 35H ;置8253通道0方式控制字OUT ,ALMOV AL,00H ;置8253通道0計(jì)數(shù)初值OUT 40H,AL MOV AL,10H OUT 40H,ALMOV AL,75H;置8253通道1方式控制字OUT 43H,AL 43H80H MOV AL, ;置8253通道1計(jì)數(shù)初值OUT 41H,ALMOV AL, ;OUT 41H,AL MOV AH,25H;設(shè)置中斷向量MOV AL,0AH ;中斷類(lèi)型號(hào)為入口參數(shù)MOV BX; ;DS:DX指向4字節(jié)地址MO

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論