82538255A8259A初始化程序_第1頁
82538255A8259A初始化程序_第2頁
82538255A8259A初始化程序_第3頁
82538255A8259A初始化程序_第4頁
82538255A8259A初始化程序_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、8253的初始化程序1.確定端口地址:0310H、0312H、0314H、0316H2.確定工作方式(假設(shè)工作方式為): 通道0,方式3通道1,方式1通道2,方式53.確定計(jì)數(shù)值: 通道0:N0=1MHz/2KHz=500通道1:N1480us/(1/1mhz)=480通道2:N2=264確定控制字:通道0:00110111B通道1:01110011B通道2:10011011B對(duì)3個(gè)通道的初始化程序如下:;通道0初始化程序MOV DX, 316HMOV AL,00110111BOUT DX,ALMOV DX,310HMOV AL,00HOUT DX, ALMOV AL,05HOUT DX,AL

2、;通道1的初始化程序MOV DX, 316HMOV AL, 001110011BOUT DX, ALMOV DX, 312HMOV AL, 80HOUT DX, ALMOV AL, 04HOUT DX, AL;通道2初始化程序MOV DX, 316HMOV AL, 10011011BOUT DX, ALMOV DX, 314HMOV AL,26HOUT DX,AL; MOV AL,00H; OUT DX,AL8255A初始化程序?qū)?255A進(jìn)行初始化,要求端口A工作于方式1,輸入;端口B工作于方式0,輸出;端口C的高4位配合端口A工作,低4位為輸入。1. 確定控制字端口地址:006CH。2.

3、確定工作方式:端口A,工作方式1,輸入端口B,工作方式0,輸出端口C,C0為輸入,C4為配合工作3. 確定方式選擇控制字:1 011 1 00 1H(B9H)對(duì)3個(gè)端口的初始化程序如下MOV AL,B9HMOV DX,006CHOUT DX,AL另一個(gè)8255A初始化程序已知某8255A在系統(tǒng)中占用888BH號(hào)端口地址,現(xiàn)欲安排其PA,PB,PC口全部為輸出,PA,PB口均工作于方式0模式,并將PC6置位,使PC3復(fù)位,試編寫出相應(yīng)的初始化程序:1. 確定端口地址控制字以及PC口置位復(fù)位端口,8BH2. 確定工作方式3. 確定方式選擇控制字MOV AL, 80H OUT 8BH,ALMOV A

4、L,ODH OUT 8BH,ALMOV AL,06HOUT 8BH,AL在8259A內(nèi)部有兩組寄存器:一組為命令寄存器,用于存放CPU寫入的初始化命令字ICW1ICW4(initialization command words);另一組為操作命令寄存器,用于存放CPU寫入的操作命令字OCW1OCW3(operation command words)。1初始化命令字ICW的格式當(dāng)?shù)刂肪€A0為1時(shí),8259A提供了4個(gè)(ICW1ICW4)初始化命令字,并規(guī)定了嚴(yán)格的初始化步驟。8259A是中斷系統(tǒng)的核心器件,對(duì)它的初始化編程要涉及中斷系統(tǒng)的軟、硬件的許多問題,而且一旦完成初始化,所有硬件中斷源和中

5、斷處理程序都必須受其制約。(1)ICW1的格式ICW1的格式如圖6.12所示。  圖6.12ICW1的格式IC4 (ICW4 needed /no ICW4 needed):指示在初始化時(shí)是否需要寫入命令字ICW4。在80x86 CPU系統(tǒng)中需要定義ICW4,設(shè)IC41。SNGL(single/cascade mode):指示8259A在系統(tǒng)中使用單片還是多片級(jí)聯(lián)。SNGL1為單片,SNGL0為多片級(jí)聯(lián)。ADI(call address interval):設(shè)置調(diào)用時(shí)間間隔,在80486 CPU中無效。LTIM(level/edge triggered mode):定義IR

6、i的中斷請(qǐng)求觸發(fā)方式。LTIM1為電平觸發(fā),LTIM0為邊沿觸發(fā)。D4:ICW1的標(biāo)志位,恒為1。D5D7:未用,通常設(shè)置為0。(2)ICW2的格式ICW2用于設(shè)置中斷類型號(hào),格式如圖6.13所示。 圖6.13ICW2的格式ICW2中的低3位ID2ID0由中斷請(qǐng)求輸入端IRi(i07)的編碼自動(dòng)引入,高5位T7T3由用戶編程寫入。若ICW2寫入40H時(shí),則IR0IR7對(duì)應(yīng)的中斷類型號(hào)為40H47H。(3)ICW3的格式ICW3是級(jí)聯(lián)命令字,在級(jí)聯(lián)方式下才需要寫入。主片和從片所對(duì)應(yīng)的ICW3的格式不同,主片ICW3的格式如圖6.14所示,從片ICW3的格式如圖6.15所示。圖6.14主

7、片ICW3的格式圖6.15從片ICW3的格式  S7S0與IR7IR0相對(duì)應(yīng),若主片IRi(i07)引腳上連接從片,則Si1,否則Si0。ID2ID0是從片接到主片IRi上的標(biāo)識(shí)碼。例如,當(dāng)從片的中斷請(qǐng)求信號(hào)INT與主片的IR2連接時(shí),ID2ID0應(yīng)設(shè)置為010,D7D3未用,通常設(shè)置為0。在中斷響應(yīng)時(shí),主片通過級(jí)聯(lián)信號(hào)線CAS2CAS0送出被允許中斷的從片的標(biāo)識(shí)碼,各從片用自己的ICW3和CAS2CAS0進(jìn)行比較,二者一致的從片被確定為當(dāng)前中斷源,可以發(fā)送該從片的中斷類型碼。(4)ICW4的格式ICW4用于設(shè)定8259A的工作方式,其格式如圖6.16所示.圖6.16ICW4的格式m

8、P(microprocessor):設(shè)置CPU模式。mP1為80x86模式,mP0為8080/8085模式。AEOI(auto end of interrupt):設(shè)置8259A的中斷結(jié)束方式。AEOI1為自動(dòng)結(jié)束方式,AEOI0為非自動(dòng)結(jié)束方式。(master/slave):選擇緩沖級(jí)聯(lián)方式下的主片與從片。1為主片,0為從片。BUF(buffer):設(shè)置緩沖方式。BUF1為緩沖方式,BUF0為非緩沖方式。SFNM(special fully nested mode):設(shè)置特殊完全嵌套方式。SFNM1為特殊完全嵌套方式,SFNM0為非特殊完全嵌套方式D7D5:未定義,通常設(shè)置為0。需要注意:當(dāng)

9、多片8259A級(jí)聯(lián)時(shí),若在8259A的數(shù)據(jù)線與系統(tǒng)總線之間加入總線驅(qū)動(dòng)器,引腳作為總線驅(qū)動(dòng)器的控制信號(hào),D3位BUF應(yīng)設(shè)置為1,此時(shí)主片和從片的區(qū)分不能依靠引腳,而是由來選擇,當(dāng)0時(shí)為從片;當(dāng)1時(shí)為主片。如果BUF0,則定義無意義。2操作命令字OCW的格式操作命令字有OCW1, OCW2和OCW3。(1)OCW1的格式OWC1為中斷屏蔽字,寫入中斷屏蔽寄存器(IMR)中,對(duì)外部中斷請(qǐng)求信號(hào)IRi實(shí)行屏蔽,格式如圖6.17所示。圖6.17OCW1的格式當(dāng)某位Mi(interrupt mask)為1時(shí),則對(duì)應(yīng)的IRi請(qǐng)求被禁止;當(dāng)Mi為0時(shí),則對(duì)應(yīng)的IRi請(qǐng)求被允許。在工作期間可根據(jù)需要隨時(shí)寫入或

10、讀出。(2)OCW2的格式 OWC2用于設(shè)置中斷優(yōu)先級(jí)方式和中斷結(jié)束方式,其格式如圖6.18所示。圖6.18OCW2的格式L2L0(IR level to be acted upon):8個(gè)中斷請(qǐng)求輸入端IR7IR0的標(biāo)志位,用來指定中斷級(jí)別。L2L0指定的中斷級(jí)別是否有效,由SL(specific level)位控制。當(dāng)SL1時(shí),L2L0定義有效;當(dāng)SL0時(shí),L2L0定義無效。EOI(end of interrupt):中斷結(jié)束命令。若EOI1時(shí),在中斷服務(wù)子程序結(jié)束時(shí)向8259A回送中斷結(jié)束命令EOI,以便使中斷服務(wù)寄存器(ISR)中當(dāng) 前最高優(yōu)先權(quán)位復(fù)位(普通EOI方式),或由L2L0表

11、示的優(yōu)先權(quán)位復(fù)位(特殊EOI方式)。R(rotation):設(shè)置優(yōu)先權(quán)循環(huán)方式位。R1為優(yōu)先權(quán)自動(dòng)循環(huán)方式;R0為優(yōu)先權(quán)固定方式。D4, D3為OCW2標(biāo)志位。(3)OCW3的格式OCW3用于設(shè)置或清除特殊屏蔽方式和讀取寄存器的狀態(tài),格式如圖6.19所示。RR(read register command):讀ISR和IRR命令位,RIS(read interrupt register select)讀寄存器選擇位。當(dāng)RR1,RIS0時(shí),讀取IRR命令;當(dāng)RR1,RIS1時(shí),讀取ISR命令。在進(jìn)行讀ISR或IRR操作時(shí), 先寫入讀命令OCW3,然后緊接著執(zhí)行讀ISR或IRR的指令。圖6.19OC

12、W3的格式例如,設(shè)8259A的兩個(gè)端口地址為20H和21H,OCW3, ISR和IRR共用一個(gè)地址20H。 讀取ISR內(nèi)容的程序段為MOVAL, 00001011BOUT20H, AL ; 讀ISR命令寫入OCW3INAL, 20H    ; 讀ISR內(nèi)容至AL中讀取IRR內(nèi)容的程序段為MOVAL, 00001010BOUT20H, AL       ; 讀IRR命令寫入OCW3IN AL, 20H       ; 讀IRR內(nèi)容至AL中

13、    P(poll command):為中斷狀態(tài)查詢位。當(dāng)P1時(shí),可通過讀入狀態(tài)寄存器的內(nèi)容,查詢是否有中斷請(qǐng)求正在被處理,如有則給出當(dāng)前處理中斷的最高優(yōu)先級(jí)。中斷狀態(tài)寄存器如圖6.20所示。 圖6.20中斷狀態(tài)寄存器   在讀取中斷狀態(tài)字時(shí),先寫入中斷查詢命令,然后讀取中斷狀態(tài)字,程序如下:MOVAL, 00001111BOUT20H, AL ; 讀中斷狀態(tài)字命令寫入OCW3IN AL, 20H ; 讀中斷狀態(tài)字ESMM(enable special mask mode)與SMM(special mask mode)組合可用來設(shè)置

14、或取消特殊屏蔽方式。當(dāng)ESMM1,SMM1時(shí),設(shè)置特殊屏蔽;當(dāng)ESMM1,SMM0時(shí),取消特殊屏蔽。38259A的初始化編程8259A的初始化編程需要寫入初始化命令字ICW1ICW4,對(duì)它的連接方式、中斷觸發(fā)方 式和中斷結(jié)束方式進(jìn)行設(shè)置。但由于ICW1ICW4使用兩個(gè)端口地址,即ICW1用A00的端口,ICW2ICW4使用A01的端口,因此初始化 程序應(yīng)嚴(yán)格按照系統(tǒng)規(guī)定的順序?qū)懭耄聪葘懭隝CW1,接著寫ICW2, ICW3, ICW4。8259A的初始化流程如圖6.21所示。操作命令字OCW1OCW3的寫入比較靈活,沒有固定的格式,可以在主程序中寫入,也可以在中斷服務(wù)子程序中寫入,視需要而定

15、。下面通過例子來說明如何編寫8259A的初始化程序。圖6.218259A初始化流程圖【例6.1】 某微機(jī)系統(tǒng)使用主、從兩片8259A管理中斷,從片中斷請(qǐng)求INT與主片的IR2連接。設(shè)主片工作于特殊完全嵌套、非緩沖和非自動(dòng)結(jié)束方式,中斷類型號(hào)為 40H,端口地址為20H和21H。從片工作于完全嵌套、非緩沖和非自動(dòng)結(jié)束方式,中斷類型號(hào)為70H,端口地址為80H和81H。試編寫主片和從片的初 始化程序。根據(jù)題意,寫出ICW1, ICW2, ICW3和ICW4的格式,按圖6.21的順序?qū)懭搿>帉懗跏蓟绦蛉缦拢褐髌?259A的初始化程序如下:MOVAL, 00010001B; 級(jí)聯(lián), 邊沿觸發(fā), 需要寫ICW4OUT20H, AL; 寫ICW1MOVAL, 01000000B; 中斷類型號(hào)40HOUT21H, AL; 寫ICW2MOVAL, 00000100B; 主片的IR2引腳接從片OUT21H, AL; 寫ICW3MOVAL, 00010

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論