微機(jī)原理與接口技術(shù)(第3版)課件 第9章 可編程定時(shí)計(jì)數(shù)器8253-part2_第1頁(yè)
微機(jī)原理與接口技術(shù)(第3版)課件 第9章 可編程定時(shí)計(jì)數(shù)器8253-part2_第2頁(yè)
微機(jī)原理與接口技術(shù)(第3版)課件 第9章 可編程定時(shí)計(jì)數(shù)器8253-part2_第3頁(yè)
微機(jī)原理與接口技術(shù)(第3版)課件 第9章 可編程定時(shí)計(jì)數(shù)器8253-part2_第4頁(yè)
微機(jī)原理與接口技術(shù)(第3版)課件 第9章 可編程定時(shí)計(jì)數(shù)器8253-part2_第5頁(yè)
已閱讀5頁(yè),還剩93頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

微機(jī)原理與接口技術(shù)第9章可編程定時(shí)/計(jì)數(shù)器8253目錄9.18253的引腳功能和編程結(jié)構(gòu)9.28253的編程9.38253的工作方式9.48253的應(yīng)用舉例38253共有6種工作方式,主要區(qū)別在:●

輸出波形不同●啟動(dòng)計(jì)數(shù)器的觸發(fā)方式不同●

門(mén)控信號(hào)GATE對(duì)計(jì)數(shù)過(guò)程的影響不同●計(jì)數(shù)過(guò)程中修改計(jì)數(shù)初值對(duì)計(jì)數(shù)過(guò)程的影響不同學(xué)習(xí)工作方式時(shí)注意從以上幾方面對(duì)比記憶。概述9.38253的工作方式4共同遵守的3個(gè)基本原則:●控制字寫(xiě)入計(jì)數(shù)器時(shí),所有的控制邏輯電路立即復(fù)位,輸出端OUT進(jìn)入初始狀態(tài)

GATE信號(hào)是上升沿起作用,GATE信號(hào)的作用是在下一個(gè)CLK周期的下降沿生效●計(jì)數(shù)初值裝入計(jì)數(shù)器和減1計(jì)數(shù)都是在輸入脈沖的下降沿有效的概述9.38253的工作方式5主要內(nèi)容9.38253的工作方式工作方式0工作方式1工作方式2工作方式3工作方式4工作方式56方式0(計(jì)數(shù)結(jié)束產(chǎn)生中斷)計(jì)數(shù)結(jié)束,此上升沿可作為中斷請(qǐng)求信號(hào)CLKGATEWROUTCE43210FFFEFDCW=10HLSB=4開(kāi)始計(jì)減1數(shù)寫(xiě)入控制字后,OUT變低計(jì)數(shù)值寫(xiě)入初值寄存器SC1SC0RW1RW0M2M1M0BCD00010000工作方式09.38253的工作方式方式0(計(jì)數(shù)結(jié)束產(chǎn)生中斷)●方式0的計(jì)數(shù)值是一次有效的,即寫(xiě)入一次工作一次。實(shí)際應(yīng)用中,常將計(jì)數(shù)結(jié)束后的上升跳變作為中斷請(qǐng)求信號(hào)?!駥?xiě)入控制字之后,輸出端OUT變低,寫(xiě)入計(jì)數(shù)值后開(kāi)始計(jì)數(shù)。計(jì)數(shù)到0后輸出端OUT為高電平,并且一直保持高電平,除非寫(xiě)入新的計(jì)數(shù)值。

軟件啟動(dòng)工作方式09.38253的工作方式方式0(計(jì)數(shù)結(jié)束產(chǎn)生中斷)延時(shí)1個(gè)CLK周期按新值計(jì)數(shù)(立即有效)CLKGATEWROUTCE32121FFFECW=10HLSB=30LSB=2計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值改變計(jì)數(shù)初值工作方式09.38253的工作方式方式0(計(jì)數(shù)結(jié)束產(chǎn)生中斷)CLKGATEWROUTCE32221FFFECW=10HLSB=30門(mén)控信號(hào)GATE的作用GATE=0暫停計(jì)數(shù)GATE=1繼續(xù)計(jì)數(shù)工作方式09.38253的工作方式方式0(計(jì)數(shù)結(jié)束產(chǎn)生中斷)●在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值是立即有效的。即新的計(jì)數(shù)值寫(xiě)入后,在其下一個(gè)CLK周期開(kāi)始按新值計(jì)數(shù)?!裼?jì)數(shù)過(guò)程中可由GATE信號(hào)控制計(jì)數(shù)過(guò)程的暫停。當(dāng)GATE=0時(shí),計(jì)數(shù)器暫停計(jì)數(shù),直到GATE=1時(shí),計(jì)數(shù)器又繼續(xù)計(jì)數(shù)。在計(jì)數(shù)過(guò)程中,GATE的變化不影響OUT的狀態(tài)。

工作方式09.38253的工作方式例9.3-1要實(shí)現(xiàn)定時(shí)中斷,定時(shí)時(shí)間為4096個(gè)(1000H)CLK周期。采用計(jì)數(shù)器0,設(shè)定方式0,讀寫(xiě)高低8位,按二進(jìn)制計(jì)數(shù)。設(shè)8253端口地址范圍為40H~43H。8253GATE0CLK0OUT0+5VINT8259AIRiSC1SC0RW1RW0M2M1M0BCD0011000030H工作方式09.38253的工作方式CLK0WROUT030H00H10H40964095104096CLKMODE0:MOVAL,00110000B;計(jì)數(shù)器0,讀寫(xiě)高低8位 OUT 43H,AL ;方式0,二進(jìn)制計(jì)數(shù)

MOVAL,00H OUT 40H,AL ;裝入計(jì)數(shù)初值低8位

MOVAL,10H OUT 40H,AL ;裝入計(jì)數(shù)初值高8位作為中斷請(qǐng)求信號(hào)如果用BCD碼計(jì)數(shù),程序該如何修改?工作方式09.38253的工作方式13主要內(nèi)容9.38253的工作方式工作方式0工作方式1工作方式2工作方式3工作方式4工作方式5工作方式114方式1(硬件再觸發(fā)單穩(wěn)態(tài)發(fā)生器)無(wú)需再次裝入計(jì)數(shù)初值,GATE觸發(fā)計(jì)數(shù)GATE觸發(fā)計(jì)數(shù)CLKGATEWROUTCE3210FF32CW=12HLSB=3寫(xiě)入控制字后OUT變高計(jì)數(shù)到0,OUT變高9.38253的工作方式工作方式115方式1(硬件再觸發(fā)單穩(wěn)態(tài)發(fā)生器)●寫(xiě)入控制字以后輸出端OUT變高電平并保持,寫(xiě)入計(jì)數(shù)值以后并不立即裝入開(kāi)始計(jì)數(shù),而是等待硬件(GATE)的觸發(fā)。觸發(fā)一次計(jì)數(shù)一次,計(jì)數(shù)到0后輸出端OUT變高電平,計(jì)數(shù)次數(shù)到等待下次觸發(fā)?!穹绞?的計(jì)數(shù)值不必重新寫(xiě)入,除非要改變計(jì)數(shù)初值,即寫(xiě)入一次可多次使用,取決于硬件GATE的觸發(fā)9.38253的工作方式工作方式116方式1(硬件再觸發(fā)單穩(wěn)態(tài)發(fā)生器)CLKGATEWROUTCE321FF12CW=12HLSB=3LSB=20FE0新計(jì)數(shù)值在下次啟動(dòng)后才生效計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值9.38253的工作方式工作方式117方式1(硬件再觸發(fā)單穩(wěn)態(tài)發(fā)生器)●在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值不是立即有效的。即新的計(jì)數(shù)值寫(xiě)入后現(xiàn)行計(jì)數(shù)不受影響,新計(jì)數(shù)值在下次啟動(dòng)后才開(kāi)始生效。9.38253的工作方式工作方式118方式1(硬件再觸發(fā)單穩(wěn)態(tài)發(fā)生器)GATE脈沖重新啟動(dòng),按初值計(jì)數(shù)。CLKGATEWROUTCE43420CW=12HLSB=431門(mén)控信號(hào)GATE的作用9.38253的工作方式工作方式119方式1(硬件再觸發(fā)單穩(wěn)態(tài)發(fā)生器)●計(jì)數(shù)過(guò)程中可由GATE脈沖重新啟動(dòng)按初值計(jì)數(shù),但GATE的變化不影響OUT的狀態(tài),只有計(jì)數(shù)到0時(shí)OUT才變高。

9.38253的工作方式工作方式120例9.3-2某系統(tǒng)使用了8253的三個(gè)定時(shí)器,要求計(jì)數(shù)器0在初始化后立即啟動(dòng)定時(shí),計(jì)數(shù)器1和計(jì)數(shù)器2在計(jì)數(shù)器0啟動(dòng)一段時(shí)間(這里設(shè)為1000個(gè)CLK)后同時(shí)啟動(dòng)。要求計(jì)數(shù)器1的計(jì)數(shù)次數(shù)為65536次,計(jì)數(shù)器2的計(jì)數(shù)次數(shù)為10000次。設(shè)端口地址為40H~43H。寫(xiě)出對(duì)應(yīng)的初始化程序。

定時(shí)器0工作在方式0

定時(shí)器0控制計(jì)數(shù)器1和2的啟動(dòng),所以計(jì)數(shù)器1和2由硬件啟動(dòng),工作在方式1OUT0定時(shí)時(shí)間到后,OUT0的上升沿可作為計(jì)數(shù)器1和2的GATE信號(hào)9.38253的工作方式工作方式121

例9.3-2某系統(tǒng)使用了8253的三個(gè)定時(shí)器,要求計(jì)數(shù)器0在初始化后立即啟動(dòng)定時(shí),計(jì)數(shù)器1和計(jì)數(shù)器2在計(jì)數(shù)器0啟動(dòng)一段時(shí)間(這里設(shè)為1000個(gè)CLK)后同時(shí)啟動(dòng)。要求計(jì)數(shù)器1的計(jì)數(shù)次數(shù)為65536次,計(jì)數(shù)器2的計(jì)數(shù)次數(shù)為10000次。設(shè)端口地址為40H~43H。寫(xiě)出對(duì)應(yīng)的初始化程序。GATE0OUT0CLK0CLK1CLK2GATE1GATE2OUT1OUT2+5V8253通道0計(jì)數(shù)初值為1000通道1計(jì)數(shù)初值為0(二進(jìn)制的最大計(jì)數(shù)次數(shù))通道2計(jì)數(shù)初值為0(BCD碼的最大計(jì)數(shù)次數(shù))9.38253的工作方式工作方式122SC1SC0RW1RW0M2M1M0BCD001000010101001010100011方式0,只寫(xiě)入高8位,BCD碼計(jì)數(shù);計(jì)數(shù)初值:1000通道0方式1,只寫(xiě)入低8位,二進(jìn)制計(jì)數(shù);計(jì)數(shù)初值:0(二進(jìn)制最大計(jì)數(shù)次數(shù)65536)通道1方式1,只寫(xiě)入高8位,BCD碼計(jì)數(shù);計(jì)數(shù)初值:0

(BCD最大計(jì)數(shù)次數(shù)10000)通道29.38253的工作方式工作方式123CNT1: MOV AL,01010010B OUT 43H,AL MOV AL,00H OUT 41H,AL CNT2: MOV AL,10100011B OUT 43H,AL

MOV AL,00H OUT 42H,AL CNT0: MOV AL,00100001B OUT 43H,AL

MOV AL,10H OUT 40H,AL 計(jì)數(shù)器0的初始化為什么放在最后?順序是否能夠調(diào)整?(P236

注意)9.38253的工作方式工作方式124計(jì)數(shù)器0的初始化為什么放在最后?順序是否能夠調(diào)整?GATE0OUT0CLK0CLK1CLK2GATE1GATE2OUT1OUT2+5V8253OUT0GATE1GATE2如果先初始化計(jì)數(shù)器0,在初始化其他計(jì)數(shù)器時(shí),計(jì)數(shù)器0已經(jīng)開(kāi)始計(jì)數(shù)(方式0軟件啟動(dòng)).假如計(jì)數(shù)器0的計(jì)數(shù)次數(shù)太少,就可能出現(xiàn)其他計(jì)數(shù)器初始化還沒(méi)完成,計(jì)數(shù)器0的定時(shí)時(shí)間已到,而造成啟動(dòng)錯(cuò)誤。9.38253的工作方式25CNT1: MOV AL,01010010B OUT 43H,AL MOV AL,00H OUT 41H,AL CNT2: MOV AL,10100011B OUT 43H,AL

MOV AL,00H OUT 42H,AL CNT0: MOV AL,00100001B OUT 43H,AL

MOV AL,10H OUT 40H,AL 只寫(xiě)入計(jì)數(shù)初值的低8位只寫(xiě)入計(jì)數(shù)初值的高8位只寫(xiě)入計(jì)數(shù)初值的高8位注:未寫(xiě)入的字節(jié)自動(dòng)清0.工作方式19.38253的工作方式26主要內(nèi)容9.38253的工作方式工作方式0工作方式1工作方式2工作方式3工作方式4工作方式527方式2(速率發(fā)生器)經(jīng)過(guò)1個(gè)CLK恢復(fù)高電平,重新計(jì)數(shù)計(jì)數(shù)到1,輸出端變低CLKGATEWROUTCE43242CW=14HLSB=4131432寫(xiě)入控制字,OUT變高并保持工作方式29.38253的工作方式28方式2(速率發(fā)生器)●如果GATE為高,當(dāng)控制字寫(xiě)入之后輸出端OUT變高電平并保持,計(jì)數(shù)值寫(xiě)入之后開(kāi)始計(jì)數(shù)。計(jì)數(shù)到1時(shí),輸出端OUT變低,經(jīng)過(guò)一個(gè)CLK后輸出又恢復(fù)為高電平,同時(shí)自動(dòng)重新裝入計(jì)數(shù)值開(kāi)始計(jì)數(shù)。●計(jì)數(shù)值是多次有效的,只需要寫(xiě)入一次計(jì)數(shù)值,就可連續(xù)輸出周期性信號(hào)輸出寬度為1個(gè)CLK的負(fù)脈沖軟件啟動(dòng)工作方式29.38253的工作方式29方式2(速率發(fā)生器)當(dāng)現(xiàn)行計(jì)數(shù)結(jié)束,才開(kāi)始按新值計(jì)數(shù)。CE321CLKWRCW=14HLSB=4LSB=3GATE計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值4321OUT工作方式29.38253的工作方式30方式2(速率發(fā)生器)●當(dāng)GATE為高電平時(shí),在計(jì)數(shù)過(guò)程中寫(xiě)入新的計(jì)數(shù)初值不是立即有效的,僅當(dāng)現(xiàn)行計(jì)數(shù)結(jié)束,OUT輸出負(fù)脈沖后,才將新的計(jì)數(shù)值打入減1計(jì)數(shù)器,開(kāi)始按新值計(jì)數(shù)。工作方式29.38253的工作方式31方式2(速率發(fā)生器)GATE變高的下一個(gè)CLK,恢復(fù)初值重新計(jì)數(shù)GATE=0,暫停計(jì)數(shù)CE43243WRCW=14HLSB=4CLK134OUT321GATE門(mén)控信號(hào)GATE的作用工作方式29.38253的工作方式32方式2(速率發(fā)生器)●可由GATE信號(hào)控制計(jì)數(shù)過(guò)程的暫停。當(dāng)GATE=0時(shí),計(jì)數(shù)器暫停計(jì)數(shù),待GATE變高后的下一個(gè)CLK周期使計(jì)數(shù)器恢復(fù)初值N,重新開(kāi)始計(jì)數(shù)。但在計(jì)數(shù)過(guò)程中GATE的變化不影響OUT的狀態(tài)。工作方式29.38253的工作方式33方式2(速率發(fā)生器)●如果使用中斷,OUT信號(hào)即為中斷請(qǐng)求信號(hào),可將OUT信號(hào)直接接到CPU的中斷請(qǐng)求輸入端,或接到中斷優(yōu)先權(quán)排隊(duì)電路的中斷請(qǐng)求輸入端。

周期性的中斷請(qǐng)求信號(hào)(上升沿)OUT工作方式29.38253的工作方式34工作方式28253的工作方式例9.3-3使8253每隔一定時(shí)間產(chǎn)生一次中斷請(qǐng)求,中斷請(qǐng)求間隔為500個(gè)CLK脈沖,采用計(jì)數(shù)器2,方式2,讀寫(xiě)高低8位,按BCD計(jì)數(shù)。設(shè)8253端口地址范圍為40H~43H,寫(xiě)出對(duì)應(yīng)的初始化程序

8253GATE2CLK2OUT2+5VINT500CLK500CLKCLK2INTSC1SC0RW1RW0M2M1M0BCD10110101B5H周期性的中斷請(qǐng)求信號(hào)(上升沿)35工作方式28253的工作方式MODE2:MOVAL,10110101B;計(jì)數(shù)器2,讀寫(xiě)高低8位, OUT43H,AL ;方式2,按BCD計(jì)數(shù)

MOVAL,00H OUT42H,AL ;裝入計(jì)數(shù)初值低8位值00H MOVAL,05H OUT42H,AL ;裝入計(jì)數(shù)初值高8位值05H36主要內(nèi)容9.38253的工作方式工作方式0工作方式1工作方式2工作方式3工作方式4工作方式537工作方式3方式3(方波發(fā)生器)計(jì)數(shù)器減到0,OUT改變,重新裝入計(jì)數(shù)初值每輸入一個(gè)脈沖計(jì)數(shù)器減2CE42444WRCW=16HLSB=4CLK22GATE2424OUT寫(xiě)入控制字,OUT變高并保持計(jì)數(shù)初值為偶數(shù)N*TCLKN/2*TCLKN/2*TCLK9.38253的工作方式38工作方式3方式3(方波發(fā)生器)●如果GATE為高,當(dāng)控制字寫(xiě)入之后輸出端OUT變高電平并保持,計(jì)數(shù)值寫(xiě)入之后開(kāi)始計(jì)數(shù)。根據(jù)計(jì)數(shù)初值N的奇偶性分為兩種情況?!癞?dāng)N為偶數(shù)時(shí):在計(jì)數(shù)初值裝入以后的每一個(gè)輸入脈沖計(jì)數(shù)器減2。當(dāng)計(jì)數(shù)器減到0時(shí),一方面改變輸出端OUT的狀態(tài),同時(shí)又自動(dòng)重新裝入計(jì)數(shù)值,然后重復(fù)這一過(guò)程。9.38253的工作方式39工作方式3方式3(方波發(fā)生器)39重新裝入計(jì)數(shù)初值的第1個(gè)CLK,計(jì)數(shù)器減3。其后每個(gè)減2CE54224WRCW=16HLSB=555GATE2525計(jì)數(shù)初值為奇數(shù)CLKOUT4第1個(gè)CLK脈沖減1其后每個(gè)CLK脈沖減2計(jì)數(shù)器減到0,OUT從高變低,重新裝入計(jì)數(shù)初值計(jì)數(shù)器減到0,OUT從低變高,重新裝入計(jì)數(shù)初值9.38253的工作方式40工作方式3方式3(方波發(fā)生器)CE54224WRCW=16HLSB=555GATE2525CLKOUT4N*TCLK(N+1)/2*TCLK(N

1)/2*TCLK9.38253的工作方式計(jì)數(shù)初值為奇數(shù)41工作方式3方式3(方波發(fā)生器)●當(dāng)N為奇數(shù)時(shí):在計(jì)數(shù)初值裝入以后的第一個(gè)CLK脈沖計(jì)數(shù)器減1,其后的每一個(gè)CLK脈沖計(jì)數(shù)器減2。當(dāng)計(jì)數(shù)器減到0時(shí),一方面輸出端OUT變低,同時(shí)又自動(dòng)重新裝入計(jì)數(shù)值。在重新裝入計(jì)數(shù)值后的第一個(gè)CLK脈沖,使計(jì)數(shù)器減3,其后的每一個(gè)CLK脈沖計(jì)數(shù)器又都減2。當(dāng)計(jì)數(shù)器減到0時(shí),一方面輸出端OUT恢復(fù)為高電平,同時(shí)又自動(dòng)重新裝入計(jì)數(shù)值重復(fù)上述過(guò)程。9.38253的工作方式42工作方式3方式3(方波發(fā)生器)●計(jì)數(shù)值多次有效,只需要寫(xiě)入一次計(jì)數(shù)值,就可連續(xù)輸出周期性信號(hào)。9.38253的工作方式43工作方式3現(xiàn)行計(jì)數(shù)結(jié)束后,OUT輸出端改變后,按新值計(jì)數(shù)CE54224CW=16H55GATE2222CLK2計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值(GATE為高)WRLSB=5LSB=2OUT新寫(xiě)入的計(jì)數(shù)初值不是立即有效新值在計(jì)數(shù)到0時(shí)有效方式3(方波發(fā)生器)9.38253的工作方式工作方式3方式3(方波發(fā)生器)●當(dāng)GATE為高電平時(shí),在計(jì)數(shù)過(guò)程中寫(xiě)入新的計(jì)數(shù)初值不是立即有效的,僅當(dāng)現(xiàn)行計(jì)數(shù)結(jié)束,OUT輸出改變狀態(tài)后,才將新的計(jì)數(shù)值打入計(jì)數(shù)器,開(kāi)始按新值計(jì)數(shù)9.38253的工作方式工作方式3方式3(方波發(fā)生器)45GATE變高后的第1個(gè)CLK下降沿按新值計(jì)數(shù)CE54225552222CLK2計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值(GATE變化)CW=16HWRLSB=5LSB=2OUTGATEGATE變低暫停計(jì)數(shù)新值在GATE

后有效GATE=0暫停計(jì)數(shù),GATE

啟動(dòng)新一輪計(jì)數(shù)9.38253的工作方式工作方式3方式3(方波發(fā)生器)●如果寫(xiě)入新的計(jì)數(shù)初值后GATE產(chǎn)生由低到高的變化,在GATE變高后的第一個(gè)CLK周期下降沿開(kāi)始按新值計(jì)數(shù)

。●計(jì)數(shù)過(guò)程中,可由GATE信號(hào)控制計(jì)數(shù)過(guò)程的暫?;蛑匦聠?dòng)計(jì)數(shù)。若在OUT為高電平期間,GATE變低,則暫停計(jì)數(shù)過(guò)程,待GATE變高后計(jì)數(shù)器又重裝初值開(kāi)始計(jì)數(shù)。9.38253的工作方式工作方式3方式3(方波發(fā)生器)CE42444224424CLK2OUT為低期間GATE的作用CW=16HWRLSB=4GATEOUT暫停計(jì)數(shù)OUT立即變高GATE=0暫停計(jì)數(shù)(OUT變高),GATE

啟動(dòng)新一輪計(jì)數(shù)9.38253的工作方式工作方式3例9.3-4對(duì)輸入時(shí)鐘CLK(32.768KHz)進(jìn)行分頻,獲得1Hz其占空比50%的方波信號(hào)。采用計(jì)數(shù)器0,讀寫(xiě)高低8位,按二進(jìn)制計(jì)數(shù)。設(shè)8253端口地址范圍為40H~43H,寫(xiě)出對(duì)應(yīng)的初始化程序。計(jì)數(shù)初值N=fCLK

fOUT=(32.768×1000)÷1=32768=8000H8253GATE032.768KHzOUT0+5V1HzCLK0計(jì)數(shù)值大于BCD計(jì)數(shù)的最大值10000,所以只能按二進(jìn)制計(jì)數(shù)。SC1SC0RW1RW0M2M1M0BCD0011011036H9.38253的工作方式工作方式3MODE3: MOV AL,00110110B OUTCTRL,AL

MOVAL,0 OUTCNT0,AL;裝入低8位00H MOVAL,80H OUTCNT0,AL;裝入高8位80H9.38253的工作方式50主要內(nèi)容9.38253的工作方式工作方式0工作方式1工作方式2工作方式3工作方式4工作方式5方式4(軟起動(dòng)單拍脈沖發(fā)生器)工作方式49.38253的工作方式51CE5431FFWRCW=18HLSB=520GATEFEFDFCFBCLKOUTFA寫(xiě)入控制字,OUT變高并保持寫(xiě)入計(jì)數(shù)值后開(kāi)始計(jì)數(shù),軟件啟動(dòng)計(jì)數(shù)到0時(shí)停止計(jì)數(shù),OUT變低電平,維持一個(gè)CLK周期。計(jì)數(shù)值一次有效方式4(軟起動(dòng)單拍脈沖發(fā)生器)工作方式49.38253的工作方式●寫(xiě)入控制字之后,輸出端OUT變高電平,寫(xiě)入計(jì)數(shù)值后開(kāi)始計(jì)數(shù)(即軟件啟動(dòng))。計(jì)數(shù)到0時(shí)停止計(jì)數(shù),輸出端OUT變?yōu)榈碗娖?,維持一個(gè)CLK周期后又變?yōu)楦唠娖剑虼诉@種方式的計(jì)數(shù)是一次性的,只有再次寫(xiě)入計(jì)數(shù)初值,才啟動(dòng)另一次計(jì)數(shù)過(guò)程。

輸出寬度為1個(gè)CLK的負(fù)脈沖方式4(軟起動(dòng)單拍脈沖發(fā)生器)工作方式49.38253的工作方式寫(xiě)入新計(jì)數(shù)初值后,延時(shí)1個(gè)CLK周期按新值計(jì)數(shù)CE4325364GATE210FFCLKOUTFE計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值WRCW=18HLSB=4LSB=6方式4(軟起動(dòng)單拍脈沖發(fā)生器)工作方式49.38253的工作方式●計(jì)數(shù)值的改變是立即有效的。新的計(jì)數(shù)值寫(xiě)入后,在其下一個(gè)CLK周期開(kāi)始按新值計(jì)數(shù),若計(jì)數(shù)值為雙字節(jié),則在寫(xiě)入第一字節(jié)時(shí)停止計(jì)數(shù),在寫(xiě)入第二字節(jié)后開(kāi)始按新值計(jì)數(shù)方式4(軟起動(dòng)單拍脈沖發(fā)生器)工作方式49.38253的工作方式GATE=1,計(jì)數(shù)器繼續(xù)計(jì)數(shù)CE55531WRCW=18HLSB=542GATE0FFFEFDCLKOUTFCGATE=0,計(jì)數(shù)器暫停計(jì)數(shù)門(mén)控信號(hào)GATE的作用方式4(軟起動(dòng)單拍脈沖發(fā)生器)工作方式49.38253的工作方式●計(jì)數(shù)過(guò)程中可由GATE信號(hào)控制計(jì)數(shù)過(guò)程的暫停。當(dāng)GATE=0時(shí),計(jì)數(shù)器暫停計(jì)數(shù),直到GATE=1時(shí)計(jì)數(shù)器又繼續(xù)計(jì)數(shù)。

方式4和方式0,在啟動(dòng)計(jì)數(shù)、計(jì)數(shù)值改變以及GATE信號(hào)作用上相同。工作方式49.38253的工作方式例9.3-5對(duì)于鎖存器,實(shí)現(xiàn)定時(shí)鎖存控制,即在一定時(shí)間后產(chǎn)生一鎖存信號(hào)LE,延遲時(shí)間為10個(gè)CLK周期。采用計(jì)數(shù)器1,方式4,低位字節(jié),按BCD計(jì)數(shù)。設(shè)8253端口地址范圍為40H~43H,寫(xiě)出對(duì)應(yīng)的初始化程序。8253GATE1CLK1OUT1+5V鎖存器LE工作方式49.38253的工作方式74LS373有兩個(gè)控制輸入端:鎖存允許LE三態(tài)允許控制端OE、OELEDQ0111010000X鎖存1XX高阻D0D1D2D3D4D5D6D7OELEQ0Q1Q2Q3Q4Q5Q6Q774LS373347813141718256912151619111工作方式49.38253的工作方式例9.3-5對(duì)于鎖存器,實(shí)現(xiàn)定時(shí)鎖存控制,即在一定時(shí)間后產(chǎn)生一鎖存信號(hào)LE,延遲時(shí)間為10個(gè)CLK周期。采用計(jì)數(shù)器1,方式4,低位字節(jié),按BCD計(jì)數(shù)。設(shè)8253端口地址范圍為40H~43H,寫(xiě)出對(duì)應(yīng)的初始化程序。8253GATE1CLK1OUT1+5V鎖存器LESC1SC0RW1RW0M2M1M0BCD0101100159H工作方式49.38253的工作方式CLK1WROUT159H10H1010CLK910MODE4: MOV AL,01011001B OUT 43H,AL

MOVAL,10H OUT41H,AL鎖存信號(hào)61主要內(nèi)容9.38253的工作方式工作方式0工作方式1工作方式2工作方式3工作方式4工作方式5工作方式59.38253的工作方式方式5(軟起動(dòng)單拍脈沖發(fā)生器)計(jì)數(shù)到0,OUT變低,1個(gè)CLK后變高GATE觸發(fā)計(jì)數(shù)CE43210FF4WRCW=1AHLSB=4CLKGATE寫(xiě)入控制字后OUT變高OUT工作方式59.38253的工作方式方式5(軟起動(dòng)單拍脈沖發(fā)生器)●寫(xiě)入控制字以后,輸出端OUT變高電平并保持,寫(xiě)入計(jì)數(shù)值以后,計(jì)數(shù)器并不立即開(kāi)始計(jì)數(shù),而是等待硬件(GATE)的觸發(fā)啟動(dòng)。觸發(fā)一次啟動(dòng)一次,計(jì)數(shù)到0時(shí)輸出端OUT變?yōu)榈碗娖?,一個(gè)CLK后又變高,即輸出一個(gè)CLK周期的負(fù)脈沖。

●方式5的計(jì)數(shù)值不必重新寫(xiě)入。工作方式59.38253的工作方式方式5(軟起動(dòng)單拍脈沖發(fā)生器)CE321FF01CLKWRCW=12HLSB=3LSB=202GATEFF計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值OUT工作方式59.38253的工作方式方式5(軟起動(dòng)單拍脈沖發(fā)生器)●在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值不是立即有效的。即新的計(jì)數(shù)值寫(xiě)入后只要不發(fā)門(mén)控信號(hào),現(xiàn)行計(jì)數(shù)不受影響,新計(jì)數(shù)值在下次啟動(dòng)后才開(kāi)始生效。工作方式59.38253的工作方式方式5(軟起動(dòng)單拍脈沖發(fā)生器)66GATE脈沖重新啟動(dòng),按初值計(jì)數(shù)。CE43231WRCW=12HLSB=4CLK42門(mén)控信號(hào)GATE的作用GATE0FFOUT工作方式59.38253的工作方式例9.3-6在一個(gè)通信系統(tǒng)中,收發(fā)雙方采用握手方式進(jìn)行通信應(yīng)答,發(fā)送方采用REQ發(fā)出發(fā)送請(qǐng)求后轉(zhuǎn)入接收應(yīng)答信號(hào)SEND的檢測(cè),如果輸出發(fā)送數(shù)據(jù)請(qǐng)求REQ之后一定時(shí)間(這里為100CLK脈沖)內(nèi)不能接收到應(yīng)答信號(hào)時(shí),就在接收方發(fā)生通信異常信號(hào)FAIL。用8253實(shí)現(xiàn)100個(gè)CLK的定時(shí)計(jì)數(shù),采用計(jì)數(shù)器1,方式5,讀/寫(xiě)低8位,按二進(jìn)制計(jì)數(shù)。設(shè)8253端口地址范圍為40H~43H,寫(xiě)出對(duì)應(yīng)的初始化程序SC1SC0RW1RW0M2M1M0BCD010110105BH工作方式59.38253的工作方式高電平GATE1100CLK100999897….1064H5AHCLK0WRREQSENDFAILOUT工作過(guò)程:(1)復(fù)位后REQ為高電平(GATE1=0),SEND也為高。8253OUT1GATE1CLK1SENDREQSENDREQFAIL發(fā)送側(cè)接收側(cè)工作方式59.38253的工作方式高電平GATE1100CLK100999897….1064H5AHCLK0WRREQSENDFAILOUT8253OUT1GATE1CLK1SENDREQSENDREQFAIL發(fā)送側(cè)接收側(cè)(2)8253初始化后OUT1為高電平,從而使加在接收側(cè)的FAIL信號(hào)為無(wú)效的高電平。因?yàn)椋?011SEND=1OUT=0工作過(guò)程:工作方式59.38253的工作方式高電平GATE1100CLK100999897….1064H5AHCLK0WRREQSENDFAILOUT8253OUT1GATE1CLK1SENDREQSENDREQFAIL發(fā)送側(cè)接收側(cè)工作過(guò)程:(3)當(dāng)發(fā)送方發(fā)出請(qǐng)求信號(hào)后(REQ=0,GATE=1)就啟動(dòng)了計(jì)數(shù)器1開(kāi)始計(jì)數(shù)。工作方式59.38253的工作方式8253OUT1GATE1CLK1SENDREQSENDREQFAIL發(fā)送側(cè)接收側(cè)0110工作過(guò)程:(4)當(dāng)100個(gè)CLK計(jì)數(shù)次數(shù)到時(shí),OUT1輸出一個(gè)負(fù)脈沖高電平GATE1100CLK100999897….1064H5AHCLK0WRREQSENDFAILOUT這時(shí)如果接收方?jīng)]有發(fā)出SEND=0的應(yīng)答信號(hào)。則有:SEND=1OUT=1則發(fā)通信異常信號(hào)FAIL=0工作方式59.38253的工作方式8253OUT1GATE1CLK1SENDREQSENDREQFAIL發(fā)送側(cè)接收側(cè)0101工作過(guò)程:(4)當(dāng)100個(gè)CLK計(jì)數(shù)次數(shù)到時(shí),OUT1輸出一個(gè)負(fù)脈沖GATE1100CLK100999897….1064H5AHCLK0WRREQSENDFAILOUT這時(shí)如果接收方發(fā)出SEND=0的應(yīng)答信號(hào)。則有:SEND=0OUT=1則不發(fā)通信異常信號(hào)FAIL=1高電平73工作方式59.38253的工作方式MODE5: MOV AL,01011010B

OUT43H,AL

MOV AL,100 OUT41H,AL目錄9.18253的引腳功能和編程結(jié)構(gòu)9.28253的編程9.38253的工作方式9.48253的應(yīng)用舉例75主要內(nèi)容8253多計(jì)數(shù)器串聯(lián)的應(yīng)用8253方波發(fā)聲的應(yīng)用9.48253的應(yīng)用舉例案例:簡(jiǎn)易交通燈控制系統(tǒng)V4.0

8253在自動(dòng)氣象站中的應(yīng)用768253多計(jì)數(shù)器串聯(lián)的應(yīng)用9.48253的應(yīng)用舉例例9.4-1在某個(gè)以8086為CPU的系統(tǒng)中,通道的基地址為310H,

8253控制一個(gè)LED發(fā)光二極管的點(diǎn)亮和熄滅,要求點(diǎn)亮10秒后再讓它熄滅10秒,并重復(fù)上述過(guò)程。設(shè)輸入的時(shí)鐘信號(hào)頻率為2MHz。(加上驅(qū)動(dòng)后,便可以用在交通燈、燈塔控制等場(chǎng)合)分析:利用通道1的OUT1與LED相連,只要對(duì)8253編程,使OUT1輸出周期為20秒,占空比為1:1的方波,就能使LED交替點(diǎn)亮熄滅10秒。問(wèn)OUT1的計(jì)數(shù)初值應(yīng)該是多少?778253多計(jì)數(shù)器串聯(lián)的應(yīng)用9.48253的應(yīng)用舉例N1=fCLK

×T=2×106×20=4×107>65536按最大計(jì)數(shù)次數(shù)65536,最大的定時(shí)時(shí)間為T(mén)1=0.5×10-6×65536=32.768ms<20s解決方法:多通道級(jí)聯(lián)用2個(gè)計(jì)數(shù)通道串聯(lián)(#1和#2),即找兩個(gè)數(shù)N1×N2=4×107

取:N1=8000,N2=5000。

788253多計(jì)數(shù)器串聯(lián)的應(yīng)用9.48253的應(yīng)用舉例0.05Hz400HzCSA1A0WRGATE1GATE2CLK2OUT28253+5V2MHzCLK1OUT1RDD7~D0D7~D0A2A1fOUT2=2×106

/5000=400Hz0111011110110111方式3,BCD碼計(jì)數(shù);計(jì)數(shù)初值8000通道1方式3,BCD碼計(jì)數(shù);計(jì)數(shù)初值5000通道277HB7HfOUT1=400

/8000=0.05Hz310H798253多計(jì)數(shù)器串聯(lián)的應(yīng)用9.48253的應(yīng)用舉例COUNT2: MOV DX,316H

MOV AL,0B7H

;寫(xiě)入控制字

OUT DX,AL MOV DX,314H

MOV AL,00H OUT DX,AL ;裝入計(jì)數(shù)初值低8位

MOV AL,50H OUT DX,AL ;裝入計(jì)數(shù)初值高8位COUNT1: MOV DX,316H

MOV AL,77H

;寫(xiě)入控制字

OUT DX,AL MOV DX,312H

MOV AL,00H OUT DX,AL ;裝入計(jì)數(shù)初值低8位

MOV AL,80H OUT DX,AL ;裝入計(jì)數(shù)初值高8位80主要內(nèi)容8253多計(jì)數(shù)器串聯(lián)的應(yīng)用8253方波發(fā)聲的應(yīng)用9.48253的應(yīng)用舉例案例:簡(jiǎn)易交通燈控制系統(tǒng)V4.0

8253在自動(dòng)氣象站中的應(yīng)用818253方波發(fā)聲的應(yīng)用9.48253的應(yīng)用舉例例9.4-28253

計(jì)數(shù)器1的時(shí)鐘輸入信號(hào)CLK1的頻率為1MHz,要求輸出頻率為250Hz的方波來(lái)驅(qū)動(dòng)揚(yáng)聲器發(fā)聲,而計(jì)數(shù)器1的門(mén)控信號(hào)由計(jì)數(shù)器0控制,要求計(jì)數(shù)器0啟動(dòng)1s后,揚(yáng)聲器開(kāi)始發(fā)聲。8253的端口地址見(jiàn)表9.1-1。計(jì)數(shù)器1:N1=1MHz/250Hz=4000SC1SC0RW1RW0M2M1M0BCD0111011177H工作方式3,BCD碼計(jì)數(shù),讀/寫(xiě)高低8位828253方波發(fā)聲的應(yīng)用9.48253的應(yīng)用舉例例9.4-28253

計(jì)數(shù)器1的時(shí)鐘輸入信號(hào)CLK1的頻率為1MHz,要求輸出頻率為250Hz的方波來(lái)驅(qū)動(dòng)揚(yáng)聲器發(fā)聲,而計(jì)數(shù)器1的門(mén)控信號(hào)由計(jì)數(shù)器0控制,要求計(jì)數(shù)器0啟動(dòng)1s后,揚(yáng)聲器開(kāi)始發(fā)聲。8253的端口地址見(jiàn)表9.1-1。計(jì)數(shù)器0:N0=T

fCKL0=11k=1000

SC1SC0RW1RW0M2M1M0BCD0011000131H工作方式0,BCD碼計(jì)數(shù),讀/寫(xiě)高低8位為計(jì)數(shù)器1提供門(mén)控信號(hào)838253方波發(fā)聲的應(yīng)用9.48253的應(yīng)用舉例P8253_BASE EQU 04A0HP8253_0 EQU P8253_BASE+0P8253_1 EQU P8253_BASE+2P8253_2 EQU P8253_BASE+4P8253_CON EQU P8253_BASE+6CODE SEGMENTASSUME CS:CODESTART: MOV AL,01110111B ;8253寫(xiě)控制字,計(jì)數(shù)器1工作在方式3,BCD碼計(jì)數(shù)

MOV DX,P8253_CON OUT DX,AL MOV AL,00H ;寫(xiě)入計(jì)數(shù)初值4000

MOV DX,P8253_1 OUT DX,AL MOV AL,40H OUT DX,AL【程序9.4-1】848253方波發(fā)聲的應(yīng)用9.48253的應(yīng)用舉例 MOV AL,00110001B ;8253寫(xiě)控制字,計(jì)數(shù)器0工作在方式0,BCD碼計(jì)數(shù)

MOV DX,P8253_CON OUT DX,AL MOV AL,00H ;寫(xiě)入計(jì)數(shù)初值1000

MOV DX,P8253_0 OUT DX,AL MOV AL,10H OUT DX,AL JMP $CODE ENDS【程序9.4-1】858253方波發(fā)聲的應(yīng)用9.48253的應(yīng)用舉例1msTOUT1=4

1msfout1=250HzOUT1輸出的波形如下:86主要內(nèi)容8253多計(jì)數(shù)器串聯(lián)的應(yīng)用8253方波發(fā)聲的應(yīng)用9.48253的應(yīng)用舉例案例:簡(jiǎn)易交通燈控制系統(tǒng)V4.0

8253在自動(dòng)氣象站中的應(yīng)用87案例:簡(jiǎn)易交通燈控制系統(tǒng)V4.09.48253的應(yīng)用舉例(1)在8255A的A、B口接共陰極數(shù)碼管,顯示倒計(jì)時(shí);A、B口工作在方式0輸出,因此8255A的工作方式、控制字、初始化等與系統(tǒng)V2.0、V3.0一致88案例:簡(jiǎn)易交通燈控制系統(tǒng)V4.09.48253的應(yīng)用舉例(2)使用8253產(chǎn)生1s的定時(shí)中斷,用于控制數(shù)碼管的更新。兩個(gè)中斷源:IR0上對(duì)應(yīng)的緊急情況按鍵IR3上由8253的OUT2輸出的周期性中斷請(qǐng)求信號(hào)IR0優(yōu)先級(jí)更高8235用了2個(gè)計(jì)數(shù)器串聯(lián),實(shí)現(xiàn)1s定時(shí)T1和T2可以采用工作方式2或者方式389案例:簡(jiǎn)易交通燈控制系統(tǒng)V4.09.48253的應(yīng)用舉例主程序?qū)?253、8255A、8259A進(jìn)行初始化,同時(shí)需要對(duì)中斷向量表進(jìn)行

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論