第七章 計(jì)數(shù)器_第1頁
第七章 計(jì)數(shù)器_第2頁
第七章 計(jì)數(shù)器_第3頁
第七章 計(jì)數(shù)器_第4頁
第七章 計(jì)數(shù)器_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第七章計(jì)數(shù)器和定時(shí)電路18253的控制字2可編程定時(shí)/計(jì)數(shù)器的工作方式1可編程計(jì)數(shù)/定時(shí)器8253/8254定時(shí)/計(jì)數(shù)器的作用生產(chǎn)線上統(tǒng)計(jì)產(chǎn)品的數(shù)目----計(jì)數(shù)器系統(tǒng)的動(dòng)態(tài)存儲(chǔ)器刷新----定時(shí)器系統(tǒng)時(shí)鐘計(jì)時(shí)----定時(shí)器揚(yáng)聲器的頻率源----定時(shí)器如何定時(shí)軟件定時(shí),優(yōu)點(diǎn)是節(jié)省硬件;缺點(diǎn)是執(zhí)行程序期間CPU一直被占用,降低了CPU效率硬件定時(shí),要用額外的硬件—計(jì)數(shù)/定時(shí)器,但可提高CPU的利用率8253基本功能具有三個(gè)相互獨(dú)立的16位計(jì)數(shù)器通道每個(gè)通道都可設(shè)定以6種工作方式之一進(jìn)行計(jì)數(shù)/定時(shí)每個(gè)計(jì)數(shù)器都可設(shè)為按二進(jìn)制或BCD碼計(jì)數(shù)具有計(jì)數(shù)和定時(shí)功能,基于減1計(jì)數(shù)工作定時(shí)器減為0后,可自動(dòng)裝入定時(shí)常數(shù)初值,并產(chǎn)生輸出信號(hào)在減1操作中,任何時(shí)刻計(jì)數(shù)器的值都可由CPU經(jīng)計(jì)數(shù)輸出寄存器讀取8253引腳8253引腳8253與CPU的接口

8位數(shù)據(jù)線:D0~D7

尋址控制線:A0、A0、/CS

讀寫控制線:/RD、/WR8253與外設(shè)的接口

注:三個(gè)獨(dú)立的計(jì)數(shù)器/定時(shí)器時(shí)鐘輸入:CLK

輸入門控:GATE

波形輸出:OUT

8253寄存器選擇表8253內(nèi)部結(jié)構(gòu)數(shù)據(jù)總線緩沖器8D0~D7內(nèi)部總線CLK0計(jì)數(shù)器0GATE0OUT0計(jì)數(shù)器1CLK1GATE1OUT1計(jì)數(shù)器2CLK2GATE2OUT2讀/寫邏輯A0A1WRRDCS控制字寄存器內(nèi)部的各計(jì)數(shù)器的結(jié)構(gòu)&CLKGATE16位當(dāng)前計(jì)數(shù)值鎖存器16位減一計(jì)數(shù)器16位計(jì)數(shù)初值寄存器OUT(減1至0時(shí))MSBLSB裝入初值LSBMSB鎖存后讀出當(dāng)前值9.28253的控制字例將計(jì)數(shù)器2初始化為工作方式3,計(jì)數(shù)初值為533H,為二進(jìn)制計(jì)數(shù)方式,設(shè)寄存器地址為40H~43H控制字10110110B6HMOV AL,0B6H ;計(jì)數(shù)器2,先低后高字節(jié)OUT 43H,AL ;寫命令字MOV AX,533H ;計(jì)數(shù)初值OUT 42H,AL ;寫計(jì)數(shù)值低位MOV AL,AHOUT 42H,AL ;寫計(jì)數(shù)值高位例8253工作為計(jì)數(shù)器1,方式3,初值為4020D0111011177H編程

MOVAL,77HOUT43H,AL;寫計(jì)數(shù)器1的控制字

MOVAL,20HOUT41H,AL

;寫計(jì)數(shù)器1的低8位初值

MOVAL,40HOUT41H,AL

;寫計(jì)數(shù)器1的高8位初值例2:計(jì)數(shù)器0,工作在模式2,計(jì)數(shù)初值和輸出鎖存器僅使用低8位,初值為100,計(jì)數(shù)值為二進(jìn)制格式。

MOVAL,00010100B;控制字

OUT73H,AL

MOVAL,100;計(jì)數(shù)初值

OUT70H,AL例3.計(jì)數(shù)器1,工作在模式1,CR和OL使用16位,初值為1234,先寫入低8位,再寫高8位,計(jì)數(shù)值為BCD。

MOVAL,01110011B;控制字

OUT73H,AL

MOVAX,1234H

BCD1234

OUT71H,AL;計(jì)數(shù)初值低8位

MOVAL,AH

OUT71H,AL;計(jì)數(shù)初值高8位因8253是減計(jì)數(shù)器,故計(jì)數(shù)初值越大,則計(jì)數(shù)減至0所用時(shí)間(即定時(shí)時(shí)間)就越長,但由于8253是先減1,再判是否到0,故最長的定時(shí)時(shí)間是設(shè)置計(jì)數(shù)初值為0,代表65536。十進(jìn)制計(jì)數(shù)時(shí)范圍是0001~10000,其中當(dāng)計(jì)數(shù)初值寄存器為0000H代表十進(jìn)制數(shù)10000。計(jì)數(shù)取值范圍在二進(jìn)制計(jì)數(shù)時(shí)是0001H~10000H,其中10000H代表65536,在計(jì)數(shù)初值寄存器中的值是0000H??梢詮?253中讀出當(dāng)前計(jì)數(shù)值,但其讀出過程是:先將當(dāng)前計(jì)數(shù)初值寫入到輸出鎖存器,然后再從輸出鎖存器中讀出,在這同時(shí),8253還在不停地進(jìn)行減計(jì)數(shù),雖然輸出鎖存器中的值不變,但減計(jì)數(shù)單元卻在不斷地減計(jì)數(shù),因此,從輸出鎖存器中讀出的值并不一定是真正的當(dāng)前計(jì)數(shù)值。3工作方式與功能方式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各工作方式的共同點(diǎn)控制字寫入計(jì)數(shù)器時(shí),所有控制邏輯立即復(fù)位,輸出端OUT進(jìn)入初始態(tài)寫入初值后,要經(jīng)過一個(gè)時(shí)鐘周期后計(jì)數(shù)執(zhí)行部件CE才開始工作時(shí)鐘脈沖CLK的上升沿,門控信號(hào)GATE被采樣圖7.218253的6種工作方式時(shí)序圖18方式0—計(jì)數(shù)結(jié)束產(chǎn)生中斷預(yù)置初值之后,OUT仍保持低電平。只有當(dāng)計(jì)數(shù)器中計(jì)數(shù)值減為0時(shí),OUT才會(huì)輸出高電平并維持計(jì)數(shù)初值寄存器CR在延遲一個(gè)CLK脈沖后傳到CE中,因此N+1個(gè)CLK脈沖后計(jì)數(shù)值才變?yōu)?GATE=0,計(jì)數(shù)停止;1,繼續(xù)計(jì)數(shù)計(jì)數(shù)過程中可重寫或改變計(jì)數(shù)值方式0特點(diǎn):(1)計(jì)數(shù)器只計(jì)數(shù)一遍(2)輸出信號(hào)OUT會(huì)在N+1個(gè)CLK脈沖后變高

(3)GATE變低電平可以停止計(jì)數(shù)過程(4)改變計(jì)數(shù)立即有效n=4432222210CWCLKOUTGATEn=343213210CWn=4CLKOUTGATE=1方式0初始化設(shè)計(jì)數(shù)器0工作于方式0,8位二進(jìn)制計(jì)數(shù),初值為9。端口地址為0E0H~0E3H初始化程序MOV AL,10H;設(shè)計(jì)數(shù)器0,工作方式0OUT 0E3H,AL;寫入控制寄存器MOV AL,9 ;設(shè)計(jì)數(shù)初值OUT 0E0H,AL;寫初值入計(jì)數(shù)器0的CR方式1—可重觸發(fā)的單穩(wěn)觸發(fā)器門控信號(hào)GATE正脈沖啟動(dòng)定時(shí)/計(jì)數(shù)允許當(dāng)前計(jì)數(shù)未完時(shí)的多次重觸發(fā),GATE再觸發(fā)后,OUT輸出會(huì)保持N個(gè)CLK脈寬的低電平下個(gè)GATE正脈沖觸發(fā)信號(hào)到來時(shí),會(huì)將新初值裝入CE中,使計(jì)數(shù)單元從新初值開始計(jì)數(shù)方式1特點(diǎn):(1)計(jì)數(shù)到0后,如果有外部觸發(fā),就可以按原來的計(jì)數(shù)初值工作(2)計(jì)數(shù)過程中GATE信號(hào)可以用作重新觸發(fā),計(jì)數(shù)器重新計(jì)數(shù)(3)改變計(jì)數(shù)初值并不是立即有效,只有等到下一個(gè)GATE上升沿,才將新初值裝入計(jì)數(shù)單元并按新初值啟動(dòng)計(jì)數(shù)。43210CWn=4n=5CLKOUTGATE方式1初始化設(shè)計(jì)數(shù)器1工作于方式1,BCD碼計(jì)數(shù),計(jì)數(shù)值為十進(jìn)制4000。設(shè)端口地址為0E0H~0E3H16位計(jì)數(shù)初值,但由于計(jì)數(shù)值低8位為0,所以可以設(shè)定讀/寫操作控制段只寫高8位,CR低8位自動(dòng)清0。控制字為01100011B,初始值40HMOV AL,63H ;設(shè)控制字OUT 0E3H,ALMOV AL,40H ;設(shè)初值40H(高8位)OUT 0E1H,AL方式2—分頻器計(jì)數(shù)器減到1時(shí),OUT僅輸出一個(gè)CLK脈寬的低電平,然后自動(dòng)裝入重新計(jì)數(shù)GATE由低變高會(huì)重新裝入初值新初值在下次計(jì)數(shù)才起作用方式2特點(diǎn):(1)不用重新設(shè)置計(jì)數(shù)值,通道可以連續(xù)工作

(2)以GATE信號(hào)停止計(jì)數(shù)。在GATE變成高電平后的下一個(gè)CLK脈沖,計(jì)數(shù)器恢復(fù)原來的初值,重新計(jì)數(shù)

(3)改變計(jì)數(shù)值不是立即有效,只有當(dāng)計(jì)數(shù)值減至0時(shí),下一輪計(jì)數(shù)過程按新初值進(jìn)行。方式2初始化設(shè)計(jì)數(shù)器工作于方式2,二進(jìn)制計(jì)數(shù),計(jì)數(shù)初值0304H。端口地址0E0H~0E3HMOV AL,0B4H ;控制字OUT 0E3H,ALMOV AL,04H ;計(jì)數(shù)器低字節(jié)OUT 0E2H,ALMOV AL,03H ;計(jì)數(shù)器高字節(jié)OUT 0E2H,AL方式3—方波發(fā)生器與方式2類似,但其輸出方波或準(zhǔn)方波計(jì)數(shù)值完成一半時(shí),使OUT變低,直到計(jì)數(shù)任務(wù)全部完成為止,OUT恢復(fù)為高初值為偶數(shù)時(shí),每次減1,直至n/2時(shí)OUT輸出變?yōu)榈碗娖剑缓笥謴某踔甸_始,每次減1,直至n/2時(shí)OUT輸出變?yōu)楦唠娖匠踔禐槠鏀?shù)時(shí),每次減1,減(n+1)/2次時(shí),OUT輸出變?yōu)榈碗娖?,然后?N-1)/2開始,每次減一,直至為0,所以有(N+1)/2個(gè)脈寬的高電平,(N-1)/2個(gè)脈寬的低電平。GATE由低變高時(shí),重新開始計(jì)數(shù)方式3特點(diǎn):(1)GATE信號(hào)由低變高可以使計(jì)數(shù)過程重新開始

(2)改變計(jì)數(shù)初值并不影響現(xiàn)行的計(jì)數(shù)過程

方式3初始化計(jì)數(shù)器0工作于方式3,二進(jìn)制計(jì)數(shù),初值為4。端口地址為0E0H~0E3HMOV AL,16H ;控制字OUT 0E3H,ALMOV AL,4 ;初值OUT 0E0H,AL方式4—軟觸發(fā)的選通發(fā)生器計(jì)數(shù)減到0時(shí)輸出一個(gè)脈寬的低電平GATE由低到高時(shí),計(jì)數(shù)器恢復(fù)工作,而不重置初值計(jì)數(shù)過程中,新初值立即起作用方式4特點(diǎn):(1)如果設(shè)置計(jì)數(shù)初值為N,則輸出信號(hào)OUT會(huì)在N+1個(gè)CLK脈沖后輸出一個(gè)負(fù)脈沖。

(2)改變計(jì)數(shù)值為立即有效方式4初始化設(shè)計(jì)數(shù)器1工作于方式4,二進(jìn)制計(jì)數(shù),計(jì)數(shù)初值為3。端口地址為0E0H~0E3HMOV AL,58H ;控制字OUT 0E3H,ALMOV AL,3 ;初值OUT 0E1H,AL方式5—硬觸發(fā)的選通發(fā)生器如方式1,方式5也是硬件觸發(fā)計(jì)數(shù)器到0,輸出一個(gè)脈寬的負(fù)脈沖允許當(dāng)前計(jì)數(shù)未完時(shí)的多次重觸發(fā)GATE觸發(fā),按新初值計(jì)數(shù)6、方式5WRCLKCW=1ALSB=3GATEOUT3210FF3方式5特點(diǎn):(1)若設(shè)置計(jì)數(shù)值為N,則經(jīng)過N+1個(gè)CLK脈沖后OUT引腳輸出一個(gè)負(fù)脈沖(2)GATE信號(hào)重新觸發(fā),可以令計(jì)數(shù)器重新計(jì)數(shù)

(3)改變計(jì)數(shù)初值并不是立即有效方式5初始化設(shè)計(jì)數(shù)器2工作于方式5,二進(jìn)制計(jì)數(shù),計(jì)數(shù)初值為3,端口地址為0E0H~0E3HMOVAL,9AH ;控制字OUT 0E3H,ALMOVAL,3 ;初始值OUT0E2H,AL工作方式總結(jié)初始化編程的原則:先寫入控制字,后設(shè)置計(jì)數(shù)初值;設(shè)置初值的過程必須符合控制字中規(guī)定的格式。計(jì)數(shù)----輸入信號(hào)為外部計(jì)數(shù)脈沖。定時(shí)----輸入信號(hào)為已知準(zhǔn)確的、固定周期時(shí)鐘。定時(shí)時(shí)間t=n×TCK;n為計(jì)數(shù)初值,TCK為時(shí)鐘周期

編程命令讀出命令----讀輸出鎖存器內(nèi)容寫入命令設(shè)置控制字(工作方式)發(fā)鎖存命令設(shè)置計(jì)數(shù)初值控制字方式0與方式4的比較(軟件控制)

相同點(diǎn) 都是軟觸發(fā),無自動(dòng)重裝入能力 寫入控制字及初值后,若GATE=H,CE開始減計(jì)數(shù)當(dāng)CE=0時(shí),OUT改變電平狀態(tài)不同點(diǎn)方式0在計(jì)數(shù)期間OUT=L,計(jì)數(shù)結(jié)束OUT=H方式4在計(jì)數(shù)期間OUT=H,計(jì)數(shù)結(jié)束OUT=負(fù)脈沖OUTOUT方式1與方式5的比較(硬件觸發(fā))

相同點(diǎn)寫入控制字及初值后,若GATE輸入上升沿脈沖觸發(fā),CE開始減計(jì)數(shù),當(dāng)CE=0時(shí),OUT改變電平狀態(tài)不同點(diǎn)方式1在計(jì)數(shù)期間OUT=L,計(jì)數(shù)結(jié)束OUT=H方式5在計(jì)數(shù)期間OUT=H,計(jì)數(shù)結(jié)束OUT=負(fù)脈沖計(jì)數(shù)期間GATEOUT計(jì)數(shù)期間GATEOUT方式2與方式3的比較(波形輸出)

相同點(diǎn)均輸出連續(xù)周期波形,預(yù)置初值可自動(dòng)重裝入

不同點(diǎn)方式2輸出連續(xù)負(fù)脈沖周期波形方式3輸出連續(xù)方波周期波形方式3方式2第7章常用接口器件圖7.26初始化編程順序

438253讀出命令MOVAL,00000000B;鎖存

OUT73H,AL

INAL,70H;當(dāng)前計(jì)數(shù)值低8位

MOVBL,AL

INAL,70H;當(dāng)前計(jì)數(shù)值高8位

MOVBH,AL;讀取后,OL的值又隨計(jì)數(shù)執(zhí)行部件變化8253應(yīng)用舉例采用8253作定時(shí)/計(jì)數(shù)器,其接口地址為0120H~0123H。輸入8253的時(shí)鐘頻率為2MHz。計(jì)數(shù)器0:每10ms輸出1個(gè)CLK脈沖寬的負(fù)脈沖計(jì)數(shù)器1:產(chǎn)生10KHz的連續(xù)方波信號(hào)計(jì)數(shù)器2:啟動(dòng)計(jì)數(shù)5ms后OUT輸出高電平。畫線路連接圖,并編寫初始化程序。8253應(yīng)用舉例(續(xù))確定計(jì)數(shù)初值:

CNT0:10ms/0.5us=20000CNT1:2MHz/10KHz=200CNT2:5ms/0.5us=10000確定控制字:

CNT0:方式2,16位計(jì)數(shù)值00110100CNT1:方式3,低8位計(jì)數(shù)值01010110CNT2:方式0,16位計(jì)數(shù)值101100008253應(yīng)用舉例(續(xù))CLK0GATE0OUT1D0~D7WRRDA1A0CSDBIOWIORA1A0譯碼器8253CLK2GATE1GATE2+5VCLK12MHzOUT0OUT2?線路連接圖:8253應(yīng)用舉例初始化程序CNT0:MOVDX,0123HMOVAL,34HOUTDX,ALMOVDX,0120HMOVAX,20000OUTDX,ALMOVAL,AHOUTDX,ALCNT1:

……CNT2:

……*如何讀出當(dāng)前計(jì)數(shù)值第1種方法——在計(jì)數(shù)過程中讀計(jì)數(shù)值先鎖存當(dāng)前計(jì)數(shù)值,再用兩條輸入指令將16位計(jì)數(shù)值讀出。第2種方法——停止計(jì)數(shù)器再讀用GATE信號(hào)使計(jì)數(shù)器停止,再規(guī)定RL1和RL0的讀寫格式,然后讀出。8253應(yīng)用舉例在IBMPC/XT機(jī)中,8253-5是CPU外圍支持電路之一,為系統(tǒng)電子鐘提供時(shí)間基準(zhǔn),為動(dòng)態(tài)RAM刷新提供定時(shí)信號(hào)以及作為揚(yáng)聲器的聲源等功能。

1.硬件結(jié)構(gòu)

2.計(jì)數(shù)器的預(yù)置程序硬件結(jié)構(gòu)從8253-5在IBMPC/XT機(jī)中的連線圖中可知,8253-5芯片的3個(gè)計(jì)數(shù)器使用相同的時(shí)鐘脈沖。CLK0~CLK2的頻率是由8284時(shí)鐘發(fā)生器輸出的外部時(shí)鐘PCLK(2.38MHz)的1/2,即1.19MHz,這由U22分頻實(shí)現(xiàn)。8253-5的3個(gè)計(jì)數(shù)器端口地址為:40H、41H、42H; 控制寄存器端口 地址為43H。計(jì)數(shù)器的預(yù)置程序8253-5的3個(gè)計(jì)數(shù)器的預(yù)置程序如下:PR0: MOVAL,36H ;選擇計(jì)數(shù)器0,寫雙字節(jié)計(jì)數(shù)值,方式3,二進(jìn)制計(jì)數(shù)

OUT43H,AL ;寫控制字

MOVAL,0 ;預(yù)置計(jì)數(shù)值65536 OUT40H,AL ;先送低字節(jié)計(jì)數(shù)值

OUT40H,AL ;后送高字節(jié)計(jì)數(shù)值PR1: MOVAL,54H ;選擇計(jì)數(shù)器1,讀/寫低字節(jié)計(jì)數(shù)值,方式2,二進(jìn)制計(jì)數(shù)

OUT43H,AL MOVAL,12H ;預(yù)置計(jì)數(shù)器初值18 OUT41H,ALPR2: MOVAL,0B6H ;選擇計(jì)數(shù)器2,讀/寫雙字節(jié)計(jì)數(shù)值,方式3,二進(jìn)制計(jì)數(shù)

OUT43H,AL MOVAX,533H ;送分頻數(shù)1331 OUT42H,AL ;先送低字節(jié)

MOVAL,AH OUT42H,AL ;后送高字節(jié)3個(gè)計(jì)數(shù)器如下:1.計(jì)數(shù)器02.計(jì)數(shù)器13.計(jì)數(shù)器2計(jì)數(shù)器0

計(jì)數(shù)器0為系統(tǒng)電子鐘提供時(shí)間基準(zhǔn),即向系統(tǒng)日歷時(shí)鐘提供定時(shí)中斷,其輸出端OUT0作為系統(tǒng)的中斷源接中斷控制器8259A的中斷請(qǐng)求端IRQ0。它選用方式3工作,以產(chǎn)生周期性的方波信號(hào)。為此,對(duì)計(jì)數(shù)器0編程時(shí)應(yīng)設(shè)置的控制字為36H。計(jì)數(shù)器初值預(yù)置為0(即最大值65536),GATE0接+5V,允許計(jì)數(shù)。因此,OUT0輸出方波的時(shí)鐘頻率為1.19MHz/65536=18.21Hz。它直接接到中斷控制器8259A的中斷請(qǐng)求端IR0(即圖中IRQ0),即0級(jí)中斷,每秒出現(xiàn)18.2次。因此,每間隔55ms產(chǎn)生一次0級(jí)中斷請(qǐng)求。并且,每一個(gè)輸出脈沖均以其正跳變產(chǎn)生一次中斷。CPU根據(jù)這一中斷可在中斷服務(wù)程序中進(jìn)行計(jì)時(shí)。

計(jì)數(shù)器1

計(jì)數(shù)器1用作定時(shí)器,為動(dòng)態(tài)RAM刷新提供定時(shí)信號(hào),即向DMA控制器定時(shí)發(fā)動(dòng)態(tài)存儲(chǔ)器刷新請(qǐng)求。它選用方式2工作,相當(dāng)于一個(gè)分頻器。編程時(shí),設(shè)置的控制字為54H,計(jì)數(shù)器初始值為18。GATE1接+5V,允許計(jì)數(shù)。因此,OUT1輸出的分頻脈沖頻率為1.19MHz/18=66.1KHz,相當(dāng)于周期為15.1μs。這樣,計(jì)數(shù)器1每隔15.1μs經(jīng)由U21產(chǎn)生一個(gè)動(dòng)態(tài)RAM刷新的請(qǐng)求信號(hào)DRQ0。由DRQ0請(qǐng)求一次DMA,由DMA控制器8237A執(zhí)行DMA操作,以完成對(duì)動(dòng)態(tài)RAM的刷新。

計(jì)數(shù)器2計(jì)數(shù)器2是系統(tǒng)的揚(yáng)聲器的聲源,其輸出信號(hào)送往揚(yáng)聲器,并根據(jù)OUT2端輸出信號(hào)的頻率來控制揚(yáng)聲器的音調(diào)。而揚(yáng)聲器發(fā)聲的長短取決于OUT2信號(hào)延續(xù)時(shí)間的多少,也即門控信號(hào)GATE2延續(xù)時(shí)間的長短。GATE2是接在并行接口芯片8255A的PB0的,所以PB0控制了計(jì)數(shù)器的計(jì)數(shù)時(shí)間長短。在初始化編程時(shí),計(jì)數(shù)器2用方式3工作,應(yīng)設(shè)置的控制字為B6H,計(jì)數(shù)器的初值置533H(即1331),OUT2輸出方波頻率為1.19MHz/1331=894Hz。該計(jì)數(shù)器的工作由主機(jī)板上8255A的PB0端控制。當(dāng)PB0輸出的TIME2GATESPK信號(hào)使8253-5的GATE2為高電平時(shí),計(jì)數(shù)器2方能工作。第7章常用接口器件

例7.6

電源掉電檢測(cè)我們目前使用的220V電源為50Hz交流電(國外通常使用110V、60Hz交流電),它通常作為微機(jī)系統(tǒng)的系統(tǒng)電源。當(dāng)系統(tǒng)電源因各種原因出現(xiàn)故障時(shí),為了保護(hù)系統(tǒng)的工作狀態(tài),需要在備用電源的支持下對(duì)重要信息進(jìn)行保護(hù)等處理,以便系統(tǒng)恢復(fù)正常供電后能夠繼續(xù)原來的工作,這就需要進(jìn)行電源掉電檢測(cè)。57第7章常用接口器件利用8253實(shí)現(xiàn)電源掉電檢測(cè)的設(shè)計(jì)思想是,利用電源信號(hào)經(jīng)檢波、整流生成8253的GATE,這樣GATE信號(hào)每20ms/16.67ms(對(duì)應(yīng)50Hz/60Hz)產(chǎn)生一次脈沖。只要使計(jì)數(shù)值N取得足夠大,在方式1下,使得計(jì)數(shù)器在20ms(16.67ms)內(nèi)始終不能減到0,這樣,不斷出現(xiàn)的GATE脈沖上升沿就會(huì)使8253計(jì)數(shù)器不斷被重啟計(jì)數(shù),使OUT輸出一直維持為0,從而不能對(duì)8086CPU產(chǎn)生NMI。當(dāng)電源出現(xiàn)故障時(shí),GATE信號(hào)不再產(chǎn)生,計(jì)數(shù)器最終會(huì)計(jì)數(shù)到0,從而使OUT輸出為1,產(chǎn)生對(duì)8086CPU的掉電中斷NMI。58第7章常用接口器件若CLK為2.4576MHz,GATE在20ms內(nèi)產(chǎn)生一個(gè)觸發(fā)信號(hào),即GATE信號(hào)周期為49152個(gè)時(shí)鐘周期,則應(yīng)取計(jì)數(shù)值N>C000H=49152。使圖7.27電路有效工作的8253初始化程序如下(設(shè)8253的I/O地址為200H~207H中的偶地址):MOVDX,0206HMOVAL,00110010B

;選計(jì)數(shù)器0,16位計(jì)數(shù)長度,方式1,二進(jìn)制計(jì)數(shù)OUTDX,ALMOVDX,0200HMOVAL,02H;取計(jì)數(shù)值N=C002HOUTDX,ALMOVAL,C0HOUTDX,AL59第7章常用接口器件圖7.27電源掉電檢測(cè)電路

60*擴(kuò)展定時(shí)/計(jì)數(shù)范圍

當(dāng)定時(shí)長度不夠時(shí),可把2個(gè)或3個(gè)計(jì)數(shù)通道串聯(lián)起來使用,甚至可把多個(gè)8253串聯(lián)起來使用。例如:CLK頻率為1MHz,要求在OUT1端產(chǎn)生頻率1Hz的脈沖。這時(shí)可將計(jì)數(shù)器0、1串

溫馨提示

  • 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)論