




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第七章定時(shí)器/計(jì)數(shù)器電路概述可編程定時(shí)器/計(jì)數(shù)器芯片82548254在PC系列機(jī)定時(shí)系統(tǒng)中的應(yīng)用7.1概述在各種計(jì)算機(jī)系統(tǒng)中,經(jīng)常要用到定時(shí)/延時(shí)和計(jì)數(shù)控制。實(shí)現(xiàn)定時(shí)/延時(shí)的基本方法:軟件定時(shí):執(zhí)行循環(huán)程序。CPU利用率低。不可編程硬件定時(shí):采用中小規(guī)模集成電路器件實(shí)現(xiàn)。單穩(wěn)/555定時(shí)器--外加阻容器件加/減計(jì)數(shù)器--通過改變初值可改變定時(shí)長短電路連接好后,定時(shí)值不便控制和改變??删幊逃布〞r(shí):用可編程計(jì)數(shù)器實(shí)現(xiàn)。通過編程改變其計(jì)數(shù)初值和計(jì)數(shù)脈沖頻率即可改變定時(shí)長短。27.1概述可編程定時(shí)器/計(jì)數(shù)器典型結(jié)構(gòu):數(shù)據(jù)讀寫復(fù)位準(zhǔn)備就緒片選端口地址控制字寄存器計(jì)數(shù)初值寄存器計(jì)數(shù)器(計(jì)數(shù)工作單元)輸出鎖存器狀態(tài)鎖存器狀態(tài)寄存器CLKGATEOUT控制邏輯3可編程定時(shí)器/計(jì)數(shù)器的主要用途:①以均勻分布的時(shí)間間隔中斷分時(shí)操作系統(tǒng),以便切換
程序;②向I/O設(shè)備輸出周期可控的定時(shí)信號(hào);③用作可編程波特率發(fā)生器;④檢測(cè)外部事件發(fā)生的頻率或周期;⑤統(tǒng)計(jì)外部某過程中某一事件發(fā)生的次數(shù);⑥作為向CPU的定時(shí)或定次數(shù)中斷源;……PC系列微機(jī)中普遍采用的可編程定時(shí)器/計(jì)數(shù)器是i8253/8254芯片。7.1概述47.2可編程定時(shí)器/計(jì)數(shù)器芯片i8254/8253
i8254是i8253的改進(jìn)型,兩者的功能基本相同,硬件組成、外部引腳和編程特性完全兼容。差別只在三點(diǎn):①允許的最高計(jì)數(shù)頻率不同;②8254中有狀態(tài)寄存器和狀態(tài)鎖存器,而8253沒有;③8254有讀回命令,而8253沒有。7.1概述57.2.18254的基本功能有3個(gè)獨(dú)立的16位計(jì)數(shù)器通道;每個(gè)計(jì)數(shù)器可按二進(jìn)制或十進(jìn)制(BCD)計(jì)數(shù);每個(gè)計(jì)數(shù)器可工作于6種不同工作方式;每個(gè)計(jì)數(shù)器允許的最高計(jì)數(shù)頻率為10MHz(8253為2MHz)有讀回命令(8253沒有),可以讀出當(dāng)前計(jì)數(shù)單元的內(nèi)
容和狀態(tài)寄存器內(nèi)容。
每個(gè)計(jì)數(shù)器通道的邏輯功能完全相同,既可作定時(shí)器用,又可作計(jì)數(shù)器用。無論用作定時(shí)器還是計(jì)數(shù)器,計(jì)數(shù)初值寄存器內(nèi)容都可由CPU預(yù)置或修改。67.2.28254內(nèi)部結(jié)構(gòu)與引腳信號(hào)結(jié)構(gòu)圖D7D6D5D4D3D2D1D0CLK0OUT0GATE0GND8254+5VWRRDCSA1A0CLK2OUT2GATE2CLK1OUT1GATE11246191213引腳圖GATE0GATE28D7~D0RDWRA1A0CS數(shù)據(jù)總線緩沖器讀寫控制邏輯控制字寄存器計(jì)數(shù)器通道0計(jì)數(shù)器通道1計(jì)數(shù)器通道2CLK0OUT0CLK1GATE1OUT1CLK2OUT2內(nèi)部總線○○○77.2.28254內(nèi)部結(jié)構(gòu)與引腳信號(hào)8254各主要組成部分:數(shù)據(jù)總線緩沖器控制字寄存器——8位只寫寄存器,用于存放CPU寫入芯片的方式選擇控制字或命令字,由它來控制各計(jì)數(shù)器通道的工作方式?!刂谱旨拇嫫鳛?個(gè)計(jì)數(shù)器通道所共用?!獙懭肟刂谱謺r(shí),將同時(shí)清除計(jì)數(shù)初值寄存器內(nèi)容。8計(jì)數(shù)器通道(3個(gè)):彼此獨(dú)立,但結(jié)構(gòu)和內(nèi)容
完全相同。任一通道作計(jì)數(shù)器或定時(shí)器用時(shí),其內(nèi)部操作完全相同,區(qū)別僅在于:7.2.28254內(nèi)部結(jié)構(gòu)與引腳信號(hào)作計(jì)數(shù)器用時(shí),對(duì)CLKi端輸入的計(jì)數(shù)脈沖(間
隔不一定相同)作減1計(jì)數(shù),要求計(jì)數(shù)的次數(shù)
可直接作為計(jì)數(shù)初值預(yù)置計(jì)數(shù)器通道;當(dāng)減
到0時(shí),OUTi端將輸出一信號(hào)。作定時(shí)器用時(shí),對(duì)周期一定的時(shí)鐘脈沖作減1
計(jì)數(shù),計(jì)數(shù)初值(定時(shí)系數(shù))用下式計(jì)算
得到:定時(shí)系數(shù)要求定時(shí)的時(shí)間時(shí)鐘脈沖周期=9(1)計(jì)數(shù)工作單元(CE)不能直接讀/寫。只能
通過寫計(jì)數(shù)初值寄存器(CR)實(shí)現(xiàn)對(duì)CE初
值的修改,通過讀輸出鎖存器(OL)實(shí)現(xiàn)
對(duì)CE內(nèi)容的讀?。ㄏ葘懽x回命令,再讀OL)。(2)狀態(tài)寄存器(SR)也不能直接讀,只能通
過讀狀態(tài)鎖存器(SL)實(shí)現(xiàn)(先寫讀回命
令,再讀SL)。(3)CE、CR和OL都是16位,對(duì)CR寫入和對(duì)OL讀出
必須分兩次進(jìn)行。若初始化時(shí)只寫CR一個(gè)字
節(jié),則另一字節(jié)保持為0。7.2.28254內(nèi)部結(jié)構(gòu)與引腳信號(hào)注意:10讀/寫控制邏輯:接收系統(tǒng)總線來的地址和讀寫信號(hào),并變換為內(nèi)部控制信號(hào)。8254各端口讀/寫控制作用CSRDWRA1A0讀/寫操作說明00000000011110000011100110010101010010011111××××××寫計(jì)數(shù)通道0的CR寫計(jì)數(shù)通道1的CR寫計(jì)數(shù)通道2的CR寫控制寄存器讀通道0的OL或狀態(tài)鎖存器讀通道1的OL或狀態(tài)鎖存器讀通道2的OL或狀態(tài)鎖存器無操作禁止使用無操作7.2.28254內(nèi)部結(jié)構(gòu)與引腳信號(hào)117.2.38254的工作方式各計(jì)數(shù)器通道均有6種工作方式可供選擇:工作于任一方式,都必須先初始化:寫控制字至控制寄存器(端口3):選擇所
需方式,CR清零,OUT置于規(guī)定狀態(tài)。寫計(jì)數(shù)初值至CR。方式0——計(jì)數(shù)結(jié)束中斷方式方式1——硬件可重觸發(fā)單穩(wěn)方式方式2——速率波發(fā)生器方式方式3——方波方式方式4——軟件觸發(fā)選通方式方式5——硬件觸發(fā)選通方式127.2.38254的工作方式1.方式0:計(jì)數(shù)結(jié)束中斷方式基本功能:寫入控制字后,OUT信號(hào)變?yōu)榈碗娖剑⒕S持低電平至CE的內(nèi)容到達(dá)零時(shí),此后OUT信號(hào)變?yōu)楦唠娖剑⒕S持高電平至再次寫入新的計(jì)數(shù)值或重新寫入控制字。GATE用于開放(“1”)或禁止(“0”)計(jì)數(shù)。
OUT輸出的計(jì)數(shù)結(jié)束信號(hào)可作為中斷請(qǐng)求信號(hào)。13工作特點(diǎn):計(jì)數(shù)由軟件啟動(dòng),每次寫入計(jì)數(shù)初值,只啟動(dòng)一次計(jì)數(shù)。CPU寫計(jì)數(shù)初值到CR后,CR內(nèi)容并不立即裝入CE,而是在其后的下一個(gè)CLK脈沖下降沿才CR內(nèi)容裝入CE,對(duì)該CLK脈沖不計(jì)數(shù)。所以,若計(jì)數(shù)初值為n,則必須在出現(xiàn)n+1個(gè)CLK脈沖后,OUT才變高。計(jì)數(shù)過程中,如果GATE=0則暫停計(jì)數(shù),直到GATE=1后再接著計(jì)數(shù)。計(jì)數(shù)過程中寫入新的計(jì)數(shù)初值,從寫入后下一個(gè)時(shí)鐘脈沖開始,以新的初值計(jì)數(shù)。14方式0定時(shí)波形:7.2.38254的工作方式0152.方式1:硬件可重觸發(fā)單穩(wěn)方式基本功能:
計(jì)數(shù)器相當(dāng)于一個(gè)可編程的單穩(wěn)態(tài)觸發(fā)電路,觸發(fā)輸入為GATE信號(hào)(上升沿),單脈沖輸出為OUT信號(hào)。7.2.38254的工作方式16工作特點(diǎn):從GATE上升沿起下一個(gè)CLK脈沖使OUT由高變低,直到CE計(jì)為0,OUT才恢復(fù)為高,形成一個(gè)寬度為n倍CLK周期的輸出負(fù)脈沖。此方式允許多次觸發(fā)(即具有可重觸發(fā)性),一旦控制字設(shè)置為方式1,并向CR置了初值,在沒有新的初值置入前,此初值在CR中保持不變。在OUT未恢復(fù)高電平前,若GATE端又出現(xiàn)新的觸發(fā)信號(hào)上升沿,則CE又從初值開始重新計(jì)數(shù),其結(jié)果將延長OUT輸出的負(fù)脈沖寬度。17方式1定時(shí)波形:7.2.38254的工作方式183.方式2:速率波發(fā)生器方式(n分頻方式)基本功能:OUT端輸出一周期性負(fù)脈沖序列,其負(fù)脈沖寬度為一個(gè)CLK脈沖周期,負(fù)脈沖頻率為CLK信號(hào)頻率的1/n(n為CR初值)。7.2.38254的工作方式19工作特點(diǎn):寫入控制字使計(jì)數(shù)器進(jìn)入工作方式2后,OUT輸出高電平,這時(shí)若裝入計(jì)數(shù)初值n,則從其后的下個(gè)CLK下降沿起立即開始計(jì)數(shù),OUT保持高電平不變;待計(jì)數(shù)值減到1時(shí),OUT輸出寬度為一個(gè)CLK周期的負(fù)脈沖,至計(jì)數(shù)值為0時(shí),自動(dòng)重新裝入計(jì)數(shù)初值n,實(shí)現(xiàn)循環(huán)計(jì)數(shù)。可由軟件通過寫計(jì)數(shù)初值啟動(dòng)(GATE恒為高電平),也可由GATE上升沿啟動(dòng)(已裝入計(jì)數(shù)初值)。GATE變低電平時(shí)停止計(jì)數(shù);而當(dāng)GATE由低重新變高時(shí),重新由初值開始計(jì)數(shù)。20方式2定時(shí)波形:7.2.38254的工作方式214.方式3:方波方式基本功能:OUT輸出的是方波(計(jì)數(shù)初值為偶數(shù)時(shí))或近似方波(計(jì)數(shù)初值為奇數(shù)時(shí))信號(hào)。其典型用法是作波特率發(fā)生器。7.2.38254的工作方式22工作特點(diǎn):當(dāng)寫入控制字使之進(jìn)入該方式后,OUT輸出低電平;在裝入計(jì)數(shù)初值后的下個(gè)CLK下降沿,OUT由低變高,開始減法計(jì)數(shù)。若計(jì)數(shù)初值n為偶數(shù),作減2計(jì)數(shù),計(jì)至0時(shí)OUT變低;然后再自動(dòng)從初值開始作減2計(jì)數(shù),計(jì)至0時(shí)OUT又變高。如此周而復(fù)始,OUT輸出的是占空比為1/2、周期為n個(gè)CLK周期的方波。23若n為奇數(shù),在OUT變高時(shí),初值減1成為偶數(shù),再對(duì)CLK作減2計(jì)數(shù),減至0時(shí)延遲一個(gè)CLK脈沖后OUT變低;此時(shí)初值再次減1后作減2計(jì)數(shù),至0時(shí)OUT變高。如此周而復(fù)始,OUT端得到的是占空比為,周期為n個(gè)CLK周期的近似方波。7.2.38254的工作方式工作特點(diǎn)(續(xù)):24計(jì)數(shù)過程中出現(xiàn)GATE變低時(shí),CE暫停對(duì)CLK計(jì)數(shù),直到GATE再次由低變高時(shí),重新啟動(dòng)計(jì)數(shù)過程,從初值n開始計(jì)數(shù)。要改變輸出方波的速率,可在任何時(shí)候向CR重新寫入新的計(jì)數(shù)初值n,并從下一個(gè)CLK脈沖開始起作用。工作特點(diǎn)(續(xù)):25方式3定時(shí)波形:7.2.38254的工作方式265.方式4:軟件觸發(fā)選通方式基本功能:由軟件通過寫計(jì)數(shù)初值觸發(fā)(啟動(dòng)),在OUT端產(chǎn)生一個(gè)寬度為1個(gè)CLK周期的負(fù)選通脈沖。7.2.38254的工作方式27工作特點(diǎn):當(dāng)寫入控制字使之進(jìn)入方式4后,OUT變高;此后從裝入計(jì)數(shù)初值的下個(gè)CLK下降沿開始作減1計(jì)數(shù),計(jì)至0時(shí),OUT端輸出一個(gè)寬度為1個(gè)CLK周期的負(fù)脈沖。計(jì)數(shù)過程中若GATE變低,則停止計(jì)數(shù),直到GATE恢復(fù)到高時(shí),重新從初值開始減1計(jì)數(shù)。計(jì)數(shù)過程中若改變(重寫)計(jì)數(shù)初值,將從改變之后的下個(gè)CLK脈沖起,按新初值重新開始計(jì)數(shù)。軟件裝入的計(jì)數(shù)初值只一次有效。28方式4定時(shí)波形:7.2.38254的工作方式296.方式5:硬件觸發(fā)選通方式基本功能:通過由GATE端引入的硬件觸發(fā)信號(hào),在OUT端產(chǎn)生一個(gè)寬度為1個(gè)CLK周期的負(fù)選通脈沖。7.2.38254的工作方式30工作特點(diǎn):當(dāng)寫入控制字使之進(jìn)入方式5后,OUT輸出高電平;裝入計(jì)數(shù)初值后,待GATE端出現(xiàn)觸發(fā)信號(hào)(上升沿),才開始減1計(jì)數(shù),計(jì)至0時(shí),OUT端輸出一個(gè)寬度為1個(gè)CLK周期的負(fù)脈沖。當(dāng)計(jì)數(shù)值計(jì)到0后,自動(dòng)重新裝入初值n,但并不開始計(jì)數(shù),而是待GATE端出現(xiàn)新的上升沿后才重新作減1計(jì)數(shù)。31CPU可在任何時(shí)候用輸出指令裝入新的計(jì)數(shù)初值n,但并不影響正在進(jìn)行的操作過程,要到下一個(gè)計(jì)數(shù)操作周期才按新的初值操作。不過寫入新初值后,若計(jì)數(shù)值到達(dá)0之前GATE端加了觸發(fā)信號(hào)(上升沿),則下一個(gè)CLK脈沖將使新初值裝入CE,并從它開始新的計(jì)數(shù)。工作特點(diǎn)(續(xù)):32方式5定時(shí)波形:7.2.38254的工作方式33綜上所述,對(duì)于不同的工作方式,門控信號(hào)GATE端所起的作用各不相同,8254/8253應(yīng)用中必須正確使用它,才能保證計(jì)數(shù)通道的正常工作。GATE在各種工作方式中的功能工作方式GATE=0及下降沿GATE上升沿GATE=1方式0(計(jì)數(shù)結(jié)束中斷)方式1(可重觸發(fā)單穩(wěn))方式2(速率波發(fā)生器)方式3(方波發(fā)生器)方式4(軟件觸發(fā)選通)方式5(硬件觸發(fā)選通)停止計(jì)數(shù)無意義停止計(jì)數(shù)停止計(jì)數(shù)停止計(jì)數(shù)無意義無意義從初值開始重新計(jì)數(shù)從初值開始重新計(jì)數(shù)從初值開始重新計(jì)數(shù)從初值開始重新計(jì)數(shù)硬件觸發(fā)信號(hào)允許計(jì)數(shù)無意義允許計(jì)數(shù)允許計(jì)數(shù)允許計(jì)數(shù)無意義7.2.38254的工作方式347.2.48254的編程下列情況需要對(duì)8254編程:工作之前寫入控制字,以確定每個(gè)計(jì)數(shù)器通
道的工作方式(寫端口3)工作之前寫入每個(gè)計(jì)數(shù)器通道計(jì)數(shù)初值(寫
端口0,1,2)工作過程中改變某通道的計(jì)數(shù)初值寫入命令字(包括計(jì)數(shù)器鎖存命令字和讀
回命令字,即寫端口3),為讀某計(jì)數(shù)通道
的當(dāng)前CE內(nèi)容和狀態(tài)寄存器內(nèi)容做準(zhǔn)備讀狀態(tài)字(讀端口0,1,2)讀當(dāng)前CE內(nèi)容(讀端口0,1,2)357.2.48254的編程1.控制字
8254/8253工作前,必須由CPU向它的控制寄存器(端口3)寫入方式選擇控制字。8254控制字格式D7D6D5D4D3D2D1D0SC1SC0RW1RW0M2M1M0BCD選計(jì)數(shù)通道00011011選通道0無意義選通道1選通道200011011選讀/寫格式鎖存CE數(shù)據(jù)只讀寫低字節(jié)只讀寫高字節(jié)先讀寫低字節(jié)再讀寫高字節(jié)選計(jì)數(shù)碼制01二進(jìn)制數(shù)BCD碼數(shù)000×10001×11100101方式0方式1方式2方式3方式4方式5
選工作方式362.命令字和狀態(tài)字8254有兩種命令字:計(jì)數(shù)器鎖存命令字和讀回命令字。8253只有鎖存命令字。鎖存命令字:用來將當(dāng)前的CE內(nèi)容鎖存到輸
出鎖存器OL,以供CPU讀出。其格式為:D7D6D5D4D3D2D1D0SC1SC000××××7.2.48254的編程37讀回命令字:用于將計(jì)數(shù)器通道的CE當(dāng)前內(nèi)容鎖
存入OL或/和將狀態(tài)寄存器內(nèi)容鎖存入狀態(tài)鎖存器。和鎖存命令不同,讀回命令能同時(shí)鎖存幾個(gè)計(jì)數(shù)器通道的當(dāng)前CE內(nèi)容和狀態(tài)寄存器內(nèi)容。7.2.48254的編程0:鎖存當(dāng)前計(jì)數(shù)器內(nèi)容1:選中通道20:鎖存狀態(tài)寄存器內(nèi)容1:選中通道01:選中通道1讀回命令字格式:D7D6D5D4D3D2D1D011COUNTSTATUSCNT2CNT1CNT0038狀態(tài)字每個(gè)計(jì)數(shù)器通道對(duì)應(yīng)有一個(gè)狀態(tài)寄存器和一個(gè)狀態(tài)鎖存器。各通道的狀態(tài)字格式完全相同。7.2.48254的編程OUT引腳現(xiàn)行狀態(tài)狀態(tài)字格式:D7D6D5D4D3D2D1D0OUT
NULLCOUNTRW1RW0M2M1M0BCD1:無效計(jì)數(shù)0:可讀計(jì)數(shù)讀/寫格式選工作方式1:BCD碼計(jì)數(shù)0:二進(jìn)制計(jì)數(shù)39讀當(dāng)前計(jì)數(shù)值/狀態(tài)字的方法和原則:(1)要讀當(dāng)前計(jì)數(shù)值或/和當(dāng)前狀態(tài),必須先寫讀
回命令,再讀OL或/和SL。(2)對(duì)同一通道的計(jì)數(shù)器或狀態(tài)寄存器發(fā)多次讀
回命令,但每次未立即讀取CE或SR,則只有
第一次讀回命令引起的鎖存操作是有效的,
以后讀出的值或狀態(tài)僅是第一次讀回命令鎖
存的結(jié)果。(3)若讀回命令同時(shí)或先后鎖存了同一通道的計(jì)數(shù)
值和狀態(tài),則對(duì)該通道第一次讀出的結(jié)果一定
是狀態(tài)字(8位),隨后的一次或兩次讀出的
才是計(jì)數(shù)值(一次還是兩次,取決于初始化時(shí)
控制字確定的計(jì)數(shù)值字節(jié)數(shù))。7.2.48254的編程40讀回命令舉例:命令命令作用執(zhí)行結(jié)果次序D7D6D5D4D3D2D1D0123456110000101110010011101100110110001100010011100010讀回通道0的計(jì)數(shù)值和狀態(tài)讀回通道1的狀態(tài)讀回通道2、1的
狀態(tài)讀回通道2的計(jì)數(shù)值讀回通道1的計(jì)數(shù)
值和狀態(tài)讀回通道0的狀態(tài)鎖存通道0的計(jì)數(shù)值和狀態(tài)鎖存通道1的狀態(tài)鎖存通道2的狀態(tài),但對(duì)通道1無效鎖存通道2的計(jì)數(shù)值鎖存通道1的計(jì)數(shù)值,但對(duì)狀態(tài)無效命令無效,通道0的狀態(tài)早已鎖存7.2.48254的編程412.編程方法及舉例(1)編程方法包括初始化編程和工作編程。初始化編程必須在8254/8253工作之前進(jìn)行。對(duì)每個(gè)用到的通道都要初始化:先向控制寄存器(端口3)寫入方式控制字,再以通道地址(端口0,1或2)向CR寫入計(jì)數(shù)初值。如在工作過程中需要讀取某通道的當(dāng)前狀態(tài)或當(dāng)前CE值,應(yīng)先向控制寄存器地址(端口3)寫讀回命令,再從該通道地址(端口0,1或2)讀出相應(yīng)鎖存器內(nèi)容。7.2.48254的編程42(2)編程舉例以8086系統(tǒng)中用8254構(gòu)成的定時(shí)、計(jì)數(shù)與脈沖發(fā)生器系統(tǒng)為例。系統(tǒng)功能:利用通道0完成對(duì)外部事件計(jì)數(shù)功能,計(jì)滿
100次向CPU發(fā)中斷請(qǐng)求。利用通道1產(chǎn)生頻率為1kHZ的方波。利用通道2作1s標(biāo)準(zhǔn)時(shí)鐘。7.2.48254的編程43系統(tǒng)的硬件連接:CLK12.5MHZ○○○○8086cpuD7~D0D7~D0RDRDWRWRM/IOA15A3A0=0A2A1INTRCS地址譯碼A1A08254通道1通道2通道0GATE1OUT11kHZCLK2GATE2OUT2CLK0GATE0OUT0示波器或其它波形接收器外部事件產(chǎn)生源IR0IR1IR2IR78259A??7.2.48254的編程1s44CPU接口側(cè)應(yīng)注意兩個(gè)特點(diǎn):(1)8254的數(shù)據(jù)線(D7~D0)固定與系統(tǒng)總線的低8
位數(shù)據(jù)線(D7~D0)相連。(2)8254端口地址線A1、A0與系統(tǒng)地址線A2、A1相
連,系統(tǒng)地址線A0固定為“0”,參加高位地址
譯碼,以形成對(duì)8254的片選信號(hào)CS。(目的
是保證4個(gè)端口地址均為偶數(shù)地址。為什么?)這兩點(diǎn)對(duì)初始化編程和工作編程有直接影響。7.2.48254的編程45初始化程序:先應(yīng)根據(jù)硬件連接和系統(tǒng)要求,確定各計(jì)數(shù)通道的工作方式和計(jì)數(shù)初值。STT:MOVDX,port3;定義通道0工作于方式0
MOVAL,10HOUTDX,ALMOVDX,port0;給通道0送計(jì)數(shù)初值
MOVAL,64HOUTDX,ALMOVDX,port3;定義通道1為方式3
MOVAL,76HOUTDX,ALMOVDX,port1;給通道1送計(jì)數(shù)初值
MOVAX,09C4HOUTDX,AL;先送低字節(jié)(C4H)MOVAL,AH
7.2.48254的編程46初始化程序:(續(xù))OUTDX,AL;再送高字節(jié)(09H)MOVDX,port3;定義通道2為方式3
MOVAL,B7HOUTDX,ALMOVDX,port2;給通道2送計(jì)數(shù)初值
MOVAX,03E8HOUTDX,AL;先送低字節(jié)(E8H)MOVAL,AHOUTDX,AL;再送高字節(jié)(03H)MOVDX,8259A偶地址端口;對(duì)8259A初始化,先寫入ICW1、ICW2;ICW4和OCW1。定義8254通道0和通道2的;中斷類型代碼分別為50H和52H。MOVAL,13H;寫ICW1OUTDX,ALMOVDX,8259A奇地址端口
MOVAL,50H;寫ICW2
7.2.48254的編程47初始化程序:(續(xù))7.2.48254的編程OUTDX,ALMOVAL,03H;寫ICW4OUTDX,ALMOVAL,0FAH;寫OCW1OUTDX,ALSTI487.38254在PC系列機(jī)定時(shí)系統(tǒng)中的應(yīng)用PC系列機(jī)定時(shí)系統(tǒng)包括兩部分:CPU內(nèi)部控制時(shí)序產(chǎn)生電路:主要用于內(nèi)部
指令執(zhí)行過程。I/O接口芯片的定時(shí)產(chǎn)生電路:由8254負(fù)責(zé)。
以PC/AT機(jī)為例則:日歷時(shí)鐘由通道0完成DRAM刷新由通道1完成音頻信號(hào)產(chǎn)生(驅(qū)動(dòng)揚(yáng)聲器)由通道2完成497.38254在PC系列機(jī)定時(shí)系統(tǒng)中的應(yīng)用8254各通道在AT定時(shí)系統(tǒng)中的作用及信號(hào)規(guī)定:計(jì)數(shù)器通道0計(jì)數(shù)器通道1計(jì)數(shù)器通道2功能GATECLKOUT時(shí)鐘信號(hào)發(fā)生器刷新請(qǐng)求發(fā)生器音頻信號(hào)發(fā)生器+5V程控+5V1.1931816MHz1.1931816MHz1.1931816MHz8259AIRQ08237DREQ0揚(yáng)聲器50PC/AT機(jī)定時(shí)系統(tǒng)結(jié)構(gòu)框圖7.38254在PC系列機(jī)定時(shí)系統(tǒng)中的應(yīng)用PCLKDQCLRQRESET+5VDACK0(來自8257)????????來自8255PB0(端口0061H)IORIOWT/CCSA1A0D7~D0來自8255PB1(端口0061H)GATE0CLK0GATE1CLK1CLK2GATE2RDWRCSA1A0D7~D0OUT0OUT1OUT28254DSQCLR+5VIRQ0(到8259A)DRAM刷新請(qǐng)求&SPK(去揚(yáng)聲器)功放與低通濾波....518254三個(gè)通道在PC/AT機(jī)中的使用原理通道0:工作于方式3,計(jì)數(shù)初值(即65536)。
用作實(shí)時(shí)時(shí)鐘信號(hào)發(fā)生器,每輸出一
個(gè)方波,產(chǎn)生一次0級(jí)中斷,調(diào)用
INT8H一次。INT8H中斷服務(wù)程序的功能:完成日時(shí)鐘計(jì)時(shí);實(shí)現(xiàn)軟驅(qū)馬達(dá)開啟時(shí)間管理,使其開啟一段
時(shí)間完成數(shù)據(jù)存取操作后,自動(dòng)延時(shí)關(guān)停;進(jìn)行INT1CH軟中斷調(diào)用,為用戶提供
可用的定時(shí)操作服務(wù)程序入口。7.38254在PC系列機(jī)定時(shí)系統(tǒng)中的應(yīng)用52通道1:工作于方式2,計(jì)數(shù)初值為18(即
0012H)。每隔15.08μs產(chǎn)生一負(fù)脈
沖,用作DRAM刷新時(shí)的定時(shí)控制。通道2:工作于方式3,計(jì)數(shù)初值為0533H輸出頻
率約為900HZ的方波,為揚(yáng)聲器發(fā)聲提
供音頻信號(hào)。利用通道2的配置,可實(shí)現(xiàn)軟件控制發(fā)聲,也可實(shí)現(xiàn)硬件控制發(fā)聲。軟件控制發(fā)聲:CPU控制8255A的PB1(即端口61H的D1
位)的電平變化使揚(yáng)聲器發(fā)聲。這時(shí)需要將8254的
OUT2置于高電平,以允許來自PB1的音頻信號(hào)通過與門。硬件控制發(fā)聲:利用8254通道2工作于方式3輸出音頻
信號(hào)來使揚(yáng)聲器發(fā)聲。這是
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 語文-陜西省安康市2025屆高三下學(xué)期第二次質(zhì)量聯(lián)考(安康二模)試題和答案
- 臨漳門樓施工方案
- 樓頂裝修電梯施工方案
- 2025年北京平谷區(qū)高三一模數(shù)學(xué)試題答案詳解
- boot項(xiàng)目合同范本
- 公益林合同范例
- 建立行業(yè)合作提升競(jìng)爭(zhēng)力計(jì)劃
- 急診護(hù)理質(zhì)量提升行動(dòng)計(jì)劃
- 基礎(chǔ)心理學(xué)知識(shí)培訓(xùn)課件
- 學(xué)校班主任的性別教育引導(dǎo)策略計(jì)劃
- 認(rèn)識(shí)DS3自動(dòng)安平水準(zhǔn)儀
- 《語文課程標(biāo)準(zhǔn)》義務(wù)教育2022年修訂版【原版】
- 某大酒店弱電智能化系統(tǒng)清單報(bào)價(jià)
- 醫(yī)院傳染病登記簿
- GB/T 30490-2014天然氣自動(dòng)取樣方法
- GB/T 17313-2009袋成型-充填-封口機(jī)通用技術(shù)條件
- 學(xué)習(xí)中國人民解放軍新一代共同條令PPT模板
- 二輪 河流專題(精心)
- 11471勞動(dòng)爭(zhēng)議處理(第3章)
- 食堂工作人員安全培訓(xùn)內(nèi)容資料
- 患者跌倒的預(yù)防及管理課件
評(píng)論
0/150
提交評(píng)論