




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第9章計(jì)數(shù)器和定時(shí)器電路 intel8253/8254-PIT9.1概述9.28253-PIT的控制字9.38253-PIT的工作方式9.48253-PIT的編程9.5Intel8254-PIT9.1概述 8253-PIT的主要功能有: 〔1〕有3個(gè)獨(dú)立的16位計(jì)數(shù)器。 〔2〕每個(gè)計(jì)數(shù)器都可以按照二進(jìn)制或BCD碼進(jìn)行計(jì)數(shù)。 〔3〕每個(gè)計(jì)數(shù)器的計(jì)數(shù)速率可高達(dá)2MHz〔8254-2計(jì)數(shù)頻率可到達(dá)10MHz〕。 〔4〕每個(gè)計(jì)數(shù)器有6種工作方式,可由程序設(shè)置和改變。 〔5〕所有的輸入輸出引腳電平都與TTL電平兼容。 8253的內(nèi)部結(jié)構(gòu)如下圖。8253的內(nèi)部結(jié)構(gòu) 〔1〕數(shù)據(jù)總線緩沖器。這是8253與CPU數(shù)據(jù)總線連接的8位雙向三態(tài)緩沖器。CPU用輸入輸出指令對(duì)8253進(jìn)行讀寫(xiě)的所有信息,都是通過(guò)這8條總線傳送的。 〔2〕讀/寫(xiě)邏輯。這是8253內(nèi)部操作的控制局部。 〔3〕控制字存放器。在8253初始化編程時(shí),由CPU寫(xiě)入控制字以決定計(jì)數(shù)器的工作方式。此存放器只能寫(xiě)入而不能讀出。 〔4〕計(jì)數(shù)器#0、計(jì)數(shù)器#1、計(jì)數(shù)器#2。這是三個(gè)計(jì)數(shù)器/定時(shí)器,每一個(gè)都是由一個(gè)16位的可預(yù)置值的減法計(jì)數(shù)器構(gòu)成。這三個(gè)計(jì)數(shù)器的操作是完全獨(dú)立的。8253-PIT的引線9.28253-PIT的控制字 在8253的初始化編程中,由CPU向8253的控制字存放器寫(xiě)入一個(gè)控制字,它規(guī)定了8253的工作方式。其格式如下圖。 〔1〕計(jì)數(shù)器選擇〔D7D6〕??刂谱值淖罡邇晌粵Q定這個(gè)控制字是哪一個(gè)計(jì)數(shù)器的控制字。8253的控制字 〔2〕數(shù)據(jù)讀/寫(xiě)格式〔D5D4〕。CPU向計(jì)數(shù)器寫(xiě)入初值和讀取它們的當(dāng)前狀態(tài)時(shí),有幾種不同的格式。 〔3〕工作方式〔D3D2D1〕。8253的每個(gè)計(jì)數(shù)器可以有6種不同的工作方式,由這三位決定。每一種方式的特點(diǎn),隨后介紹。 〔4〕數(shù)制選擇〔D0〕。8253的每個(gè)計(jì)數(shù)器有兩種計(jì)數(shù)制:二進(jìn)制計(jì)數(shù)和BCD碼計(jì)數(shù),由這位決定。9.38253-PIT的工作方式方式0—計(jì)完最后一個(gè)數(shù)時(shí)中斷 在這種方式下,當(dāng)控制字CW〔ControlWord〕寫(xiě)入控制字存放器,那么使OUT輸出端變低,此時(shí)計(jì)數(shù)器沒(méi)有賦予初值,也沒(méi)開(kāi)始計(jì)數(shù)。 要開(kāi)始計(jì)數(shù),GATE信號(hào)必須為高電平,并在寫(xiě)入計(jì)數(shù)初值后,通道開(kāi)始計(jì)數(shù),在計(jì)數(shù)過(guò)程中OUT線一直維持為低,直到計(jì)數(shù)到“0〞時(shí)。OUT輸出變高。9.3.16種工作方式方式0波形方式0時(shí)GATE信號(hào)的作用方式0在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值方式1—可編程序的單拍脈沖 在這種方式下,當(dāng)CPU寫(xiě)控制字之后〔的上升沿〕,輸出將保持為高〔假設(shè)原為低,那么由低變高〕。當(dāng)CPU寫(xiě)完計(jì)數(shù)值后,計(jì)數(shù)器并不開(kāi)始計(jì)數(shù),直到外部門控脈沖GATE啟動(dòng)之后的下一個(gè)輸入CLK脈沖的下降沿開(kāi)始計(jì)數(shù),輸出OUT變低。因整個(gè)計(jì)數(shù)過(guò)程中,OUT都維持為低,直到計(jì)數(shù)到0,輸出變?yōu)楦?,因此,輸出為一個(gè)單拍脈沖。假設(shè)外部再次觸發(fā)啟動(dòng),那么可以再產(chǎn)生一個(gè)單拍脈沖。方式1波形方式1時(shí)GATE信號(hào)的作用方式1在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值方式2—速率發(fā)生器 在這種方式下,當(dāng)CPU輸出控制字后,輸出將為高。在寫(xiě)入計(jì)數(shù)值后,計(jì)數(shù)器將立即自動(dòng)對(duì)輸入時(shí)鐘CLK計(jì)數(shù)。在計(jì)數(shù)過(guò)程中輸出始終保持為高,直至計(jì)數(shù)器減到1時(shí),輸出將變低,經(jīng)過(guò)一個(gè)CLK周期,輸出恢復(fù)為高,且計(jì)數(shù)器開(kāi)始重新計(jì)數(shù)。每輸入n個(gè)CLK脈沖,會(huì)輸出一個(gè)脈沖〔寬度為一個(gè)CLK〕方式2波形方式2時(shí)GATE信號(hào)的作用方式2在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值方式3—方波速率發(fā)生器 方式3和方式2的輸出都是周期性的,它們的主要區(qū)別是,方式3在計(jì)數(shù)過(guò)程中輸出有一半時(shí)間為高,另一半時(shí)間為低。方式3在計(jì)數(shù)值為偶數(shù)時(shí)的波形方式3在計(jì)數(shù)值為奇數(shù)時(shí)的波形方式3時(shí)GATE信號(hào)的作用方式4—軟件觸發(fā)選通 在這種方式下,當(dāng)寫(xiě)入控制字后,輸出為高〔原為高那么保持為高,原為低那么變?yōu)楦摺?。?dāng)寫(xiě)入計(jì)數(shù)值后立即開(kāi)始計(jì)數(shù)〔相當(dāng)于軟件啟動(dòng)〕,當(dāng)計(jì)數(shù)到0后,輸出變低,經(jīng)過(guò)一個(gè)輸入時(shí)鐘周期,輸出又變高,計(jì)數(shù)器停止計(jì)數(shù)。這種方式計(jì)數(shù)也是一次性的,只有在輸入新的計(jì)數(shù)值后,才能開(kāi)始新的計(jì)數(shù)。方式4波形方式4時(shí)GATE信號(hào)的作用方式4在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值方式5—硬件觸發(fā)選通 在這種方式下,設(shè)置了控制字后,輸出為高。在設(shè)置了計(jì)數(shù)值后,計(jì)數(shù)器并不立即開(kāi)始計(jì)數(shù),而是由門控脈沖的上升沿觸發(fā)啟動(dòng)。當(dāng)計(jì)數(shù)到0時(shí),輸出變低,經(jīng)過(guò)一個(gè)CLK脈沖,輸出恢復(fù)為高,停止計(jì)數(shù)。要等到下次門控脈沖的觸發(fā)才能再計(jì)數(shù)。方式5波形方式5時(shí)GATE信號(hào)的作用方式5在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值9.3.28253工作方式小節(jié)計(jì)數(shù)值的設(shè)置6種方式都是在寫(xiě)入計(jì)數(shù)值后開(kāi)始計(jì)數(shù),方式0、2、3、4是在寫(xiě)入計(jì)數(shù)值后,計(jì)數(shù)過(guò)程就開(kāi)始了,方式1、5那么是需要外部觸發(fā)啟動(dòng),才開(kāi)始計(jì)數(shù)。6種方式中,方式2、3是連續(xù)計(jì)數(shù),其他方式是一次性計(jì)數(shù);方式0、4由寫(xiě)入計(jì)數(shù)值〔軟件〕啟動(dòng),方式1、5要由外部信號(hào)〔硬件〕啟動(dòng)1.輸出OUT信號(hào)的初始狀態(tài)方式輸出OUT信號(hào)的初始狀態(tài)0寫(xiě)入控制字后輸出為低電平1~5寫(xiě)入控制字后輸出為高電平計(jì)數(shù)值N與輸出波形方式功能N與輸出波形的關(guān)系0記完最后一個(gè)數(shù)中斷寫(xiě)入計(jì)數(shù)值N后,經(jīng)過(guò)N+1個(gè)CLK脈沖輸出變高1硬件再觸發(fā)單拍脈沖單拍脈沖的寬度為N個(gè)CLK負(fù)脈沖2速率發(fā)生器每N個(gè)CLK脈沖,輸出一個(gè)寬度為CLK周期的負(fù)脈沖3方波速率發(fā)生器寫(xiě)入N后,輸出各約N/2個(gè)CLK的高、低電平4軟件觸發(fā)選通寫(xiě)入N后,過(guò)N+1個(gè)CLK,輸出寬度為1個(gè)CLK的負(fù)脈沖5硬件觸發(fā)選通門控觸發(fā)后,過(guò)N+1個(gè)CLK,輸出寬度為1個(gè)CLK的負(fù)脈沖3.門控信號(hào)的作用方式功能GATE低或變?yōu)榈蜕仙馗?計(jì)最后一個(gè)數(shù)中斷禁止計(jì)數(shù)-允許計(jì)數(shù)1硬件再觸發(fā)單拍脈沖-1啟動(dòng)計(jì)數(shù)2下一CLK脈沖輸出變低-2速率發(fā)生器1禁止計(jì)數(shù)2立即使輸出為高1重新裝計(jì)數(shù)值2啟動(dòng)計(jì)數(shù)允許計(jì)數(shù)3方波速率發(fā)生器1禁止計(jì)數(shù)2立即使輸出為高啟動(dòng)計(jì)數(shù)允許計(jì)數(shù)4軟件觸發(fā)選通禁止計(jì)數(shù)-5硬件觸發(fā)選通-啟動(dòng)計(jì)數(shù)-4.在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值方式功能改變計(jì)數(shù)值0記完最后一個(gè)數(shù)中斷立即有效1硬件再觸發(fā)單拍脈沖外部觸發(fā)后有效2速率發(fā)生器計(jì)數(shù)到1后有效3方波速率發(fā)生器外部觸發(fā)有效,計(jì)數(shù)到0后有效4軟件觸發(fā)選通立即有效5硬件觸發(fā)選通外部觸發(fā)后有效5.計(jì)數(shù)到0后計(jì)數(shù)器的狀態(tài):
方式0、1、4、5,計(jì)數(shù)器計(jì)到0后,都從最大計(jì)數(shù)值繼續(xù)倒計(jì)數(shù);方式2、3是連續(xù)計(jì)數(shù)。9.48253-PIT的編程 要使用8253必須首先進(jìn)行初始化編程,初始化編程的內(nèi)容為:必須先寫(xiě)入每一個(gè)計(jì)數(shù)器的控制字,然后寫(xiě)入計(jì)數(shù)器的計(jì)數(shù)值。計(jì)數(shù)器的控制字和計(jì)數(shù)值,是通過(guò)兩個(gè)不同的端口地址寫(xiě)入的。控制字都是寫(xiě)入至控制字存放器〔地址總線低兩位A1A0=11〕,由控制字中的D7D6來(lái)確定是哪一個(gè)計(jì)數(shù)器的控制字;而計(jì)數(shù)值是由各個(gè)計(jì)數(shù)器的端口地址寫(xiě)入的。 初始化編程的步驟為: 〔1〕寫(xiě)入計(jì)數(shù)器控制字,規(guī)定計(jì)數(shù)器的工作方式。 〔2〕寫(xiě)入計(jì)數(shù)值。 計(jì)數(shù)器初值計(jì)算:N=fCLK/fOUT例:設(shè)三個(gè)計(jì)數(shù)器的端口地址為70H、71H、72H,控制存放器端口地址73H。計(jì)數(shù)器0,工作模式2,僅使用低8位,初值為100,計(jì)數(shù)值使用二進(jìn)制MOVAL,14HOUT73H,ALMOVAL,100OUT70H,AL例:設(shè)三個(gè)計(jì)數(shù)器的端口地址為70H、71H、72H,控制存放器端口地址73H。計(jì)數(shù)器1,工作模式1,使用16位,初值為1234,計(jì)數(shù)值使用BCD數(shù)MOVAL,01110011BOUT73H,ALMOVAX,1234HOUT71H,ALMOVAL,AHOUT71H,AL每個(gè)計(jì)數(shù)器的初值存放器(CR)、輸出鎖存器(OL)都是16位的,但它們對(duì)應(yīng)相同的一個(gè)8位端口地址,所以16位的CR、OL作為兩個(gè)8位存放器讀寫(xiě),由控制存放器控制讀寫(xiě)高8位/低8位讀出命令1〕發(fā)出鎖存命令,使當(dāng)前計(jì)數(shù)值鎖存在輸出鎖存器中2〕讀輸出鎖存器,獲得當(dāng)前計(jì)數(shù)值例:設(shè)三個(gè)計(jì)數(shù)器的端口地址為70H、71H、72H,控制存放器端口地址73H。讀出計(jì)數(shù)器0的當(dāng)前計(jì)數(shù)值,放在BX中MOVAL,00000000BOUT73H,ALINAL,70HMOVBL,ALINAL,70HMOVBH,AL8253的應(yīng)用例:以2MHz輸入8253,實(shí)現(xiàn)每5秒定時(shí)中斷〔設(shè)8253端口地址40H~43H〕分析:8253最大初值65536,CLK=2MHz可實(shí)現(xiàn)最大時(shí)間間隔65536/(2106,所以需要兩個(gè)計(jì)數(shù)器串聯(lián),一個(gè)計(jì)數(shù)器的輸出作為另一個(gè)計(jì)數(shù)器的輸入計(jì)數(shù)器1:模式2,OUT1每5ms輸出一個(gè)脈沖初值(2106)/(1/0.005)=10000計(jì)數(shù)器0:模式2,OUT0每5s輸出一個(gè)脈沖初值(1/0.005)/(1/5)=1000OUT0GATE0CLK0OUT1GATE1CLK1+5V+5V2MHz每5秒產(chǎn)生一個(gè)脈沖程序:MOVAL,01110100BOUT43H,ALMOVAX,10000OUT41H,ALMOVAL,AHOUT41H,ALMOVAL,00110100BOUT43H,ALMOVAX,1000OUT40H,ALMOVAL,AHOUT40H,AL8253應(yīng)用例題
要求計(jì)數(shù)器0工作于方式2,輸出脈沖周期為10ms;計(jì)數(shù)器1產(chǎn)生10KHZ的方波信號(hào),計(jì)數(shù)器2工作于方式0,輸出脈沖周期為5ms〔設(shè)端口地址為120H~123H〕CLK0GATE0OUT1D0~D7WRRDA1A0CSDBIOWIORA1A0譯碼器8253CLK2GATE1GATE2+5VCLK12MHzOUT0OUT2?10KHz10ms5ms計(jì)算計(jì)數(shù)初值:N=fCLK/fOUT或N=Tout/TclkCNT0:10ms/0.5us=20000CNT1:2MHz/10KHz=200CNT2:5ms/0.5us=10000確定控制字:CNT0:方式2,16位計(jì)數(shù)值CNT1:方式3,低8位計(jì)數(shù)值CNT2:方式0,16位計(jì)數(shù)值8253初始化編程CNT0:MOVDX,0123HMOVAL,00110100BOUTDX,ALMOVDX,0120HMOVAX,20000OUTDX,ALMOVAL,AHOUTDX,ALCNT1:……CNT2:……例題用8253構(gòu)成定時(shí)、計(jì)數(shù)系統(tǒng),要求系統(tǒng)完成如下功能:通道0用于外部事件計(jì)數(shù),計(jì)滿100次通過(guò)中斷控制器8259向CPU發(fā)出中斷請(qǐng)求;通道1產(chǎn)生頻率為1kHz的方波;通道2用于產(chǎn)生標(biāo)準(zhǔn)定時(shí)時(shí)鐘,1秒鐘通過(guò)8259中斷控制器向CPU發(fā)出一次中斷請(qǐng)求信號(hào)。設(shè)8253口地址為0e0~0e3h分析:計(jì)數(shù)器0應(yīng)設(shè)置為方式0,即計(jì)數(shù)結(jié)束中斷方式。其計(jì)數(shù)初值設(shè)為100,輸出的上升沿送至8259的IR0。計(jì)數(shù)器1設(shè)為方式3,計(jì)數(shù)初值為2MHZ/1KHZ=2000.計(jì)數(shù)器2也應(yīng)設(shè)為方式0,即計(jì)數(shù)結(jié)束產(chǎn)生中斷,以實(shí)現(xiàn)計(jì)時(shí)功能,每秒鐘用OUT2向CPU發(fā)出一次中斷請(qǐng)求。由于輸出脈沖的周期為1s,所以可將通道1與通道2級(jí)連。通道2的輸入時(shí)鐘頻率為1khz,所以計(jì)數(shù)初值為1s/0.001=1000,通道2的輸出送8259的IR1CLK0GATE0OUT1D0~D7WRRDA1A0CSDBIOWIORA1A0譯碼器8253CLK2GATE1GATE2+5VCLK12MHzOUT0OUT2intel8259IR0IR1外部事件1kHz8253初始化編程CNT0:MOVAL,00010000BOUT0e3h,ALMOVAl,100OUT0e0h,ALCNT1:Moval,01110110bOut0e3h,alMovax,2000Out0e1h,al
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)正規(guī)合同范本
- 別墅購(gòu)銷合同范本
- 信用擔(dān)保貸款合同范本
- 制作人合同范本
- 單位房屋租用合同范本
- 中介用代管合同范本
- 農(nóng)藥國(guó)際銷售合同范本
- 關(guān)于工地買賣合同范例
- 制作安裝勞務(wù)合同范本
- 北京車輛 合同范例
- 失智老年人照護(hù)X證書(shū)制度試點(diǎn)工作養(yǎng)老護(hù)理職業(yè)和失智老人照護(hù)員工種的發(fā)展講解
- 2025年湖南食品藥品職業(yè)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 企業(yè)數(shù)字化轉(zhuǎn)型戰(zhàn)略-深度研究
- 新種子法律法規(guī)培訓(xùn)講解
- 2025年?yáng)|營(yíng)科技職業(yè)學(xué)院高職單招數(shù)學(xué)歷年(2016-2024)頻考點(diǎn)試題含答案解析
- 2025-2030年中國(guó)民用通信天線行業(yè)發(fā)展趨勢(shì)規(guī)劃研究報(bào)告
- 《幼小銜接家長(zhǎng)會(huì)》課件
- 浙江省金華市婺城區(qū)2024-2025學(xué)年九年級(jí)上學(xué)期期末數(shù)學(xué)試卷(含答案)
- Unit 4 A glimpse of the future 說(shuō)課稿-2023-2024學(xué)年高二下學(xué)期英語(yǔ)外研版(2019)選擇性必修第三冊(cè)001
- 萬(wàn)達(dá)廣場(chǎng)籌備期項(xiàng)目管理規(guī)范
- 鄉(xiāng)村建設(shè)規(guī)劃許可培訓(xùn)
評(píng)論
0/150
提交評(píng)論