D8.2計數(shù)器定時器芯片8253_第1頁
D8.2計數(shù)器定時器芯片8253_第2頁
D8.2計數(shù)器定時器芯片8253_第3頁
D8.2計數(shù)器定時器芯片8253_第4頁
D8.2計數(shù)器定時器芯片8253_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

8.2計數(shù)器/定時器接口芯片8253定時器和計數(shù)器的應(yīng)用含義:定時器或計數(shù)器輸入信號in輸出信號out定時或計數(shù)值8.2計數(shù)器/定時器接口芯片8253微機系統(tǒng)中經(jīng)常會要求有一些實時時鐘以實現(xiàn)定時或延時控制,也要求有計數(shù)器對外部事件計數(shù)實現(xiàn)上述要求可采用3種方法:

1.硬件定時用數(shù)字邏輯電路來構(gòu)成,通用性、靈活性較差

2.軟件定時利用程序段實現(xiàn),通過正確挑選指令和安排循環(huán)次數(shù)很容易改變定時時間,但軟件定時占用了CPU,降低了CPU的利用率。

3.采用可編程定時器/計數(shù)器定時時間與計數(shù)值可由軟件來確定和改變,設(shè)定后與CPU并行工作,不占用CPU的時間。8.2.18253的內(nèi)部結(jié)構(gòu)2.控制寄存器——存放CPU送來的控制字,控制8253的工作方式。1.三個獨立的計數(shù)/定時通道——計數(shù)器0,計數(shù)器1,計數(shù)器2。每個計數(shù)器的結(jié)構(gòu)為:(1)16位計數(shù)初值寄存器(CR)——存放計數(shù)的初值(預置);(2)16位的計數(shù)執(zhí)行部件(CE)——16位減1計數(shù)器;(3)16位輸出鎖存器(OL)——跟隨CE變化,但可以鎖存,便于CPU讀取。CR、CE、OL的相互關(guān)系為:1.數(shù)據(jù)線D7~D0——8位,雙向、三態(tài),用于8253與CPU之間的數(shù)據(jù)傳送。包括:向8253寫控制字,送計數(shù)初值及讀計數(shù)器的現(xiàn)行值。2.讀寫控制信號RD,WR3.片選及地址線CS,A1,A0——用于芯片及內(nèi)部寄存器、計數(shù)器的尋址。在IBM-PC機中,A9A8A7A6A5=00010選中(CS=0),A4A3A2未用,A1A0接8253的A1A0。8.2.28253的引腳功能A9A8A7A6A5A4A3A2A1A0

功能 基本地址00010×××00 選中計數(shù)器0 040H00010×××01 選中計數(shù)器1 041H00010×××10 選中計數(shù)器2 042H00010×××11 選中控制寄存器 043H(其他)××××× 芯片禁止(說明:8253有32個地址,除基本地址外,其余為影像地址)譯碼電路A9A8A7A6A5A1A0CSA1A0去8253CS去8253A9A8A7A6A5A1A0A1A0等價關(guān)系5.計數(shù)器門控輸入信號GATE0~GATE2——啟動或控制計數(shù)/定時信號;6.計數(shù)器輸出信號OUT0~OUT2——計數(shù)結(jié)束、定時到輸出信號或分頻輸出信號。4.計數(shù)器時鐘輸入CLK0~CLK2——計數(shù)/定時的基值信號8253:0~2MHz8254-2:0~10MHz8.2.28253的編程1.控制字格式(必須記住)計數(shù)初值為8位,則控制字中的RL1、RL0應(yīng)取01,初值只寫入CR的低8位,高8位會自動置0;若是16位初值,而低8位是0,則RL1RL0應(yīng)取10,初值高8位寫入CR的高8位,CR的低8位會自動置0;若是一般16位初值,則RL1,RL0應(yīng)取11,應(yīng)分兩次寫入初值,先寫低8位、再寫入高8位(此順序不能反)2.計數(shù)初始值計數(shù)初始值寫入對應(yīng)計數(shù)器的計數(shù)初值寄存器CR

;3.初始化流程先寫入工作方式控制字,接著寫入計數(shù)初始值單個計數(shù)器初始化寫方式控制字寫計數(shù)低字節(jié)寫計數(shù)高字節(jié)寫方式控制字(計數(shù)器0)寫方式控制字(計數(shù)器1)寫方式控制字(計數(shù)器2)寫計數(shù)低字節(jié)(計數(shù)器0)寫計數(shù)高字節(jié)(計數(shù)器0)寫計數(shù)低字節(jié)(計數(shù)器2)寫計數(shù)高字節(jié)(計數(shù)器2)寫計數(shù)低字節(jié)(計數(shù)器0)寫計數(shù)高字節(jié)(計數(shù)器0)多個計數(shù)器初始化計數(shù)器的順序是任意的,不必一定按照計數(shù)器0、l、2的順序初始化;可先寫所有計數(shù)器的工作方式控制字,再裝入各計數(shù)器的計數(shù)值(但先控制字再計數(shù)值的順序不能錯);計數(shù)值先寫低再寫高的順序不能錯;其他順序無關(guān)緊要MOVAL,00110111B;對計數(shù)器0送工作方式字OUT43H,ALMOVAX,1234H;送計數(shù)初值OUT40H,ALMOVAL,AHOUT40HALMOVAL,10010100B;對計數(shù)器2送工作方式字OUT43H,ALMOVAL,61H;送計數(shù)初值OUT42H,AL例:選擇計數(shù)器0工作于方式3,計數(shù)初值為1234,十進制計數(shù)方式;計數(shù)器2工作于方式2,計數(shù)初值為61H,采用二進制計數(shù)方式,設(shè)8253的端口地址為40~43H。其初始化編程如下:

(2)初值寫入后,要經(jīng)過1個時鐘CLK的上升沿和1個下降沿后,計數(shù)執(zhí)行部件才開始計數(shù);(3)在CLK的上升沿時,計數(shù)器對門控信號GATE進行采樣,來決定工作狀態(tài)(計數(shù)、觸發(fā)、停止、重新置初值);(4)在CLK的下降沿時,計數(shù)器執(zhí)行部件從初值開始作減1計數(shù);其中0是最大初值,1是最小初值;若以二進制數(shù)制計數(shù),則0相當于216=65536若以BCD(十進制)數(shù)制計數(shù),則0相當于104=100008253初始化規(guī)則(1)對計數(shù)器設(shè)置初值前必須先寫入控制字,此時,全部控制邏輯電路復位,輸出OUT為初始狀態(tài)(高電平或低電平);讀到的是執(zhí)行輸入指令瞬間計數(shù)器的現(xiàn)行值。16位計數(shù)值要分兩次讀至CPU,故必須將數(shù)據(jù)鎖存。有兩種辦法:利用外加控制信號GATE使計數(shù)器暫停計數(shù),然后按照工作方式控制字中RL1RL0的規(guī)定讀取規(guī)定字節(jié)。CPU向8253發(fā)出鎖存命令字(SC1SC000XXXX)鎖存計數(shù)器的當前計數(shù)值(當前計數(shù)值鎖存在輸出鎖存器OL,而減1計數(shù)器可以繼續(xù)計數(shù)),再讀取輸出鎖存器的計數(shù)值。當CPU讀取了規(guī)定的字節(jié)數(shù)后,OL自動解除鎖存狀態(tài),其值又跟隨計數(shù)器而變化。讀計數(shù)值——將某計數(shù)器的計數(shù)值讀到CPU中8.2.48253的工作方式8253有6種工作方式:不同方式下,啟動方式、GATE信號的作用、OUT輸出波形都有所不同,但以下幾條基本規(guī)則是相同的:工作方式控制字寫入計數(shù)器時,輸出端OUT進入初始狀態(tài)(高電平或低電平);計數(shù)初值寫入CR后,在下一個CLK脈沖才裝入減1計數(shù)器CE,因此該CLK脈沖并不影響計數(shù);CE的減1計數(shù)操作發(fā)生在CLK的下降沿;計數(shù)器對門控信號GATE的采樣是在CLK上升沿說明:①初值裝入后,要經(jīng)過1個CLK的周期(1個上升沿和1個下降沿)后,計數(shù)器才開始計數(shù),所以,輸出OUT要經(jīng)過N+1個時鐘周期后才有輸出;

CWN=4WRCLKGATEOUT

NN43210FF裝控制字裝初值計數(shù)開始計數(shù)結(jié)束1.方式0——計數(shù)結(jié)束產(chǎn)生中斷②輸出OUT的有效電平為高電平,并可同時觸發(fā)中斷請求;③門控GATE的作用:高電平時計數(shù),低電平或下降沿時停止計數(shù);④CW為寫入控制字,N=4表示寫入初值。N+12.方式1——可重觸發(fā)的單穩(wěn)態(tài)觸發(fā)器

CWN=3WRCLKGATEOUT

NN3210FF3210FF裝控制字裝初值計數(shù)開始計數(shù)結(jié)束說明:①方式字和初值裝入后,在門控GATE的上升沿觸發(fā)下,經(jīng)過1個CLK的上升沿和1個下降沿后,計數(shù)器開始從初值減1計數(shù),同時使OUT=0;當計數(shù)結(jié)束(歸0)時,OUT=1,使輸出產(chǎn)生1個寬度為TW=N×TCLK的負脈沖——單穩(wěn)態(tài)觸發(fā)器。②在GATE的上升沿觸發(fā)下,輸出可再次產(chǎn)生1個寬度為TW負脈沖——可重觸發(fā)。說明:①方式字裝入后,OUT=1為初始狀態(tài)。②初值裝入后,經(jīng)過1個CLK的周期,計數(shù)器開始從初值減1計數(shù),計到1(不是0)時,使輸出OUT=0并保持1個CLK周期,然后OUT=1,開始下一個新的計數(shù)周期,使輸出為CLK的時鐘1/N分頻信號,占空比q=(N-1)/N。③門控GATE的作用:高電平時計數(shù),低電平停止計數(shù);用GATE的上升沿可以觸發(fā)分頻重新開始——稱為硬同步;而在GATE=1時,用裝初值的方法啟動分頻開始——稱為軟同步

CWN=3WRCLKGATEOUT

NN32132132133.方式2——分頻器4.方式3——方波發(fā)生器說明:特點與方式2類似,主要區(qū)別:輸出方波,其占空比q為①當N為偶數(shù)時,q=0.5;②當N為奇數(shù)時,q=(N+1)/2N。

CWN=4WRCLKGATEOUT

NN432143214325.方式4——軟件觸發(fā)的選通信號發(fā)生器說明:①初值裝入后,經(jīng)過1個CLK的周期,計數(shù)器開始從初值減1計數(shù),計數(shù)結(jié)束(歸0)時,使輸出OUT產(chǎn)生一個寬度為1個CLK周期的負脈沖——選通信號。②(用指令)重新裝入初值后,經(jīng)過N+1個CLK周期,又可使OUT產(chǎn)生一個選通信號——(用軟件)可重觸發(fā)。③門控GATE的作用:高電平時計數(shù),低電平時停止計數(shù);

CWN=3WRCLKGATEOUT

NN3210FFFE3210FFN=3

CWN=3WRCLKGATEOUT

NN3210FFFE3210FF6.方式5——硬件觸發(fā)的選通信號發(fā)生器說明:①初值裝入后,在GATE的上升沿的觸發(fā)下,經(jīng)過1個CLK的周期,計數(shù)器開始從初值減1計數(shù),計數(shù)結(jié)束(歸0)時,使輸出OUT產(chǎn)生一個寬度為1個CLK周期的負脈沖——選通信號。②用GATE的上升沿可重新觸發(fā),使OUT產(chǎn)生一個選通信號——(用硬件)可重觸發(fā)。8.2.58253應(yīng)用舉例5s2000Hz50H②計數(shù)器1工作于方式3方波方式,產(chǎn)生2000Hz喇叭音調(diào),方式控制字為:01110111B(77H),即方式3,先低后高,BCD數(shù)制;初值(分頻比)=(1.4×106)/2000=700(H)。分析:①計數(shù)器0工作于方式2分頻方式,每隔50個CLK0產(chǎn)生一個中斷INT;方式控制字為:00010101B(15H),即方式2,只裝低8位,BCD數(shù)制,初值為50(H)。十進制的表示主程序段: MOV AL,15H;置計數(shù)器0方式

OUT 43H,AL;

MOV AL,50H;裝初值

OUT 40H,AL;

MOV AL,00H;關(guān)8255的PC0 OUT 63H,AL;

MOV AL,77H;置計數(shù)器1方式

OUT 43H,AL;

MOV AL,00H;裝初值

OUT 41H,AL;

MOV AL,07H;

OUT 41H,AL;

STI;

LOP:HLT;

JMP LOP;(再次聲明:在裝入8253計數(shù)器的初值時,不管是二進制數(shù)制還是BCD數(shù)制,初值后均要加“H”。)中斷服務(wù)程序:INTP: MOV AL,01H;開8255的PC0 OUT 63H,AL;

CALL DLY5S;調(diào)5S延遲子程序

MOV AL,00H;關(guān)8255的PC0 OUT 63H,AL;

IRET;練習:用8253設(shè)計洗衣機定時程序,設(shè)輸入頻率為2MHz,要求能產(chǎn)生3分、6分和12分的定時,定時到產(chǎn)生中斷,試畫出8253的連接示意圖并編寫相應(yīng)的程序段。送8259產(chǎn)生INTCLK0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT22MHz5ms1s分析:計數(shù)器0工作于方式3,初值N=0(10000)(H)計數(shù)器1工作于方式3,N=200(H)計數(shù)器2工作于方式0,初值由3分、6分、12分除1S(減1)得出MOVAL,00110111B;OUT43H,AL;MOVAL,00H;OUT40H,AL;OUT40H,AL;MOVAL,01110111B;OUT43H,AL;MOVAL,00H;OUT41H,AL;MOVAL,02H;OUT41H,AL;計數(shù)器0工作于方式3,初值N=0(10000)(H)計數(shù)器1工作于方式3,N=200(H)3分定時:N=180/1=180MOVAL,10110001B;OUT43H,AL;MOVAL,80H;OUT42H,AL;MOVAL,01H;OUT42H,AL;6分定時:N=360/1=360MOVAL,10110001B;OUT43H,AL;MOVAL,60H;OUT42H,AL;MOVAL,03H;OUT42H,AL;計數(shù)器2工作于方式0,初值由3分除1S(減1)得出計數(shù)器2工作于方式0,初值由6分除

溫馨提示

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

評論

0/150

提交評論