第9章-可編程定時計數(shù)器8253_第1頁
第9章-可編程定時計數(shù)器8253_第2頁
第9章-可編程定時計數(shù)器8253_第3頁
第9章-可編程定時計數(shù)器8253_第4頁
第9章-可編程定時計數(shù)器8253_第5頁
已閱讀5頁,還剩88頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、NUIST第第9 9章章 可編程定時可編程定時/ /計數(shù)器計數(shù)器2NUIST第第9 9章章 可編程定時可編程定時/ /計數(shù)器計數(shù)器8253的引腳功能和編程結(jié)構(gòu)1 18253的編程2 28253的工作方式3 38253綜合應(yīng)用舉例4 48254芯片5 53NUIST第第9 9章章 可編程定時可編程定時/ /計數(shù)器計數(shù)器8253的引腳功能和編程結(jié)構(gòu)1 18253的編程2 28253的工作方式3 38253綜合應(yīng)用舉例4 48254芯片5 549.1 8253 9.1 8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 8253的主要功能 3個獨立的16位計數(shù)器 每個計數(shù)器都可以按二進制或BCD碼計

2、數(shù) 每個通道的計數(shù)頻率可達2MHz 每個計數(shù)器都具有6種不同的工作方式 每個計數(shù)器的計數(shù)初值都可以通過編程設(shè)置 所有的輸入輸出都與TTL兼容 59.1 8253 9.1 8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 8253的引腳功能 與讀寫控制邏輯相關(guān)片選信號讀信號寫選信號內(nèi)部口地址選擇,通常與系統(tǒng)總線低位相連。00計數(shù)器0#01計數(shù)器1#10計數(shù)器2#11控制寄存器69.1 8253 9.1 8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 8253的引腳功能 與計數(shù)通道相關(guān)的引腳計數(shù)器的時鐘輸入79.1 8253 9.1 8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 825

3、3的引腳功能 計數(shù)器的門控信號。為高時,計數(shù)器工作。計數(shù)器的輸出89.1 8253 9.1 8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 8253的引腳功能 數(shù)據(jù)線電源線地線99.1 8253 9.1 8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 8253的編程結(jié)構(gòu) 計數(shù)器0 號計數(shù)器1 號計數(shù)器2 號D7D0RDWRA0A1CSCLK0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT2內(nèi)部總線109.1 8253 9.1 8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 8253的編程結(jié)構(gòu) 計數(shù)器0 號計數(shù)器1 號計數(shù)器2 號D7D0RDWRA0A1CSCL

4、K0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT2內(nèi)部總線8位的雙向三態(tài)緩沖器,通過引腳D7D0與系統(tǒng)數(shù)據(jù)總線相連接,用來傳輸 CPU向8253寫入的控制字,計數(shù)器的初值,以及CPU讀出的8253的計數(shù)器當前值。 由片選信號CS來控制是否被選中。在選中情況下,接收來自CPU的讀寫控制信號和地址信號。經(jīng)過組合產(chǎn)生控制整個芯片工作的內(nèi)部控制信號,選擇相應(yīng)的操作。 當A1A0=11時,通道讀/寫控制邏輯電路選中控制寄存器。它用來保存初始化時由CPU寫入的控制字,并根據(jù)控制字內(nèi)容發(fā)出相應(yīng)的控制信號,控制每個計數(shù)器的操作方式,使各部件完成指定動作。 119.1 8253 9.1

5、8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 8253的編程結(jié)構(gòu) 計數(shù)器0 號計數(shù)器1 號計數(shù)器2 號D7D0RDWRA0A1CSCLK0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT2內(nèi)部總線三個計數(shù)器完全相同且相互獨立.由一個16位的鎖定寄存器和一個16位的可預(yù)置的減法計數(shù)器組成。初始的計數(shù)值可保存在鎖定寄存器中,由它傳遞給計數(shù)器。每個計數(shù)器通道可對輸入脈沖CLK按二進制或BCD碼進行減1計數(shù),減到0為止,在OUT輸出端輸出一個信號。在計數(shù)的開始和計數(shù)過程中,計數(shù)器還要受到門控信號GATE的控制,兩者的關(guān)系取決于方式控制字。 12計數(shù)器0#控制寄存器高8位初值寄

6、存器(CR)低8位高8位 低8位計數(shù)單元(CR)高8位 低8位輸出鎖存器(OL)D7D0 計數(shù)器1#計數(shù)器2#RD WR CS 地址譯碼地址總線 A1A0GATE0 CLK0 OUT0 GATE1 CLK1 OUT1 GATE2 CLK2OUT2 VCC GND+5V 8253計數(shù)器內(nèi)部結(jié)構(gòu)139.1 8253 9.1 8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 8253的內(nèi)部寄存器的選擇 假設(shè)A6為1,A7、A5、A4、A3、A2均為0時8253的片選有效,則各端口地址為40H43H(IBM PC/XT中8253的端口地址)。 CS A1 A0讀 (RD)寫 (WR)端口地址 0 0

7、 0 CNT0數(shù)據(jù)總線數(shù)據(jù)總線CNT040H 0 0 1 CNT1數(shù)據(jù)總線數(shù)據(jù)總線CNT141H 0 1 0 CNT2數(shù)據(jù)總線數(shù)據(jù)總線CNT242H 0 1 1 數(shù)據(jù)總線控制字寄存器43H 1 X X 無效(D7D0為高阻狀態(tài))14NUIST第第9 9章章 可編程定時可編程定時/ /計數(shù)器計數(shù)器82593的引腳功能和編程結(jié)構(gòu)1 18253的編程2 28253的工作方式3 38253綜合應(yīng)用舉例4 48254芯片5 5159.2 8253 9.2 8253 的編程的編程 8253的控制字 SC1 SC0 RW1 RW0M2 M1 M0BCD計數(shù)器選擇讀/寫方式選擇工作方式選擇數(shù)制選擇00計數(shù)器0

8、01計數(shù)器110計數(shù)器211無意義00鎖存計數(shù)器的當前值,以便讀出檢查01只讀/寫 低8位計數(shù)值10只讀/寫 高8位計數(shù)值11先讀/寫低8位,后讀/寫高8位計數(shù)值000方式0X11方式3001方式1100方式4X10方式2101方式5寫入數(shù)的范圍最大值00二進制數(shù)0000HFFFFH655361十進制數(shù)BCD 碼0000 999910000169.2 8253 9.2 8253 的編程的編程 8253的計數(shù)初值 當輸出信號為連續(xù)的周期波時:假設(shè)計數(shù)器輸入信號CLK的頻率為fCLK,要求OUT端輸出信號的頻率為fOUT,則計數(shù)初值N的計算公式為 N = fCLK fOUT 當計數(shù)器/定時器工作在

9、一次性有效的定時方式時:如希望的定時時間為T,則計數(shù)初值 N的計算公式為: N = fCLK T 179.2 8253 9.2 8253 的編程的編程 8253的初始化 包括兩方面的內(nèi)容:向控制器寫入控制字。向相應(yīng)計數(shù)器寫入計數(shù)初值。需先送控制字,后送計數(shù)初值。設(shè)置初始值時,要按控制字中RW1、RW0所約定的格式規(guī)定寫入計數(shù)初值。 注意18 例10-1 某系統(tǒng)用8235作為電話雙音頻信號發(fā)生電路。用通道0和通道1產(chǎn)生雙音頻所需的兩個方波信號,經(jīng)方波正弦波轉(zhuǎn)換電路轉(zhuǎn)換成兩個音頻信號并疊加得到雙音頻信號。用通道2作為發(fā)號時間控制定時器。 19+5V1MHzINT方波到正弦波轉(zhuǎn)換電路方波到正弦波轉(zhuǎn)換

10、電路發(fā)號時間到中斷請求雙音頻信號輸出8253CLK0CLK1CLK2GATE0GATE1GATE2OUT1OUT0OUT220電話雙音頻信號是兩個音頻信號的疊加,以數(shù)字8為例,兩個音頻信號的頻率分別為852Hz和1336Hz。當按下一個電話號碼時電話機將發(fā)出這一雙音頻信號,其發(fā)號時間為50ms80ms,本例選50ms。根據(jù)原理電路我們使通道0產(chǎn)生852Hz的方波,通道1產(chǎn)生1336Hz的方波,通道2產(chǎn)生50ms的定時,時間到產(chǎn)生中斷請求信號。 21計算各通道計數(shù)初值通道0:fCLK0 = 1MHz, fOUT0 = 852HzN =fCLK0 / fOUT0 =1MHz / 852Hz = 1

11、174通道1:fCLK1 = 1MHz, fOUT1 = 1336HzN =fCLK1 / fOUT1 =1MHz / 1336Hz = 748通道2:fCLK2 = 1MHz, T = 50msN =fCLK2 T =1MHz 50ms = 50000= C350H22確定各通道控制字通道0:讀寫高低字節(jié)方式3BCD碼計數(shù)通道1:通道2:讀寫高低字節(jié)方式3BCD碼計數(shù)讀寫高低字節(jié)方式0二進制計數(shù)SC1SC0RW1RW0M2M1M0BCD0011011137H0111011177H10110000B0H23確定端口地址設(shè)地址總線的A7A2為111111時8253的片選有效,A1A0接8253的

12、A1A0,則端口地址為:FCHFFH。 初始化程序COUNTER0: MOV AL, 37HOUT0FFH,ALMOV AL, 74HOUT0FCH,ALMOV AL, 11HOUT0FCH,AL24初始化程序COUNTER1:MOVAL, 77HOUT0FFH,ALMOV AL, 48HOUT0FDH,ALMOV AL, 07HOUT0FDH,AL COUNTER2:MOVAL, 0B0HOUT0FFH,ALMOV AL, 50HOUT0FEH,ALMOV AL, 0C3HOUT0FEH,AL 259.2 8253 9.2 8253 的編程的編程 8253的計數(shù)器讀操作 直接讀操作 直接執(zhí)行

13、輸入指令讀取相應(yīng)通道的瞬時值。 1#通道的瞬時計數(shù)值讀入CX INAL,41HMOVCL,ALINAL,41HMOVCH,AL結(jié)果可能是錯誤的0100高字節(jié)低字節(jié)AL00 0000CHCL00FF00-1269.2 8253 9.2 8253 的編程的編程 8253的計數(shù)器讀操作 直接讀操作影響計數(shù)器的正常工作從而影響定時計數(shù)的精度 先通過GATE信號暫停計數(shù)器計數(shù),再做讀操作,讀完后再讓計數(shù)器繼續(xù)工作 279.2 8253 9.2 8253 的編程的編程 8253的計數(shù)器讀操作 鎖存讀操作 在讀之前先向要讀的計數(shù)通道發(fā)一個鎖存字。然后再做讀操作。 SC1SC0RW1RW0M2M1M0BCD計

14、數(shù)器選擇:00: 0#, 01:1#10: 2#, 11: 無意義00:鎖存當前值無意義讀取1#通道計數(shù)值 MOVAL, 40HOUT43H, ALINAL, 41HMOVCL, ALIN AL, 41HMOVCH,AL28NUIST第第9 9章章 可編程定時可編程定時/ /計數(shù)器計數(shù)器82593的引腳功能和編程結(jié)構(gòu)1 18253的編程2 28253的工作方式3 38253綜合應(yīng)用舉例4 48254芯片5 5299.3 8253 9.3 8253 的工作方式的工作方式8253 共有6種工作方式,主要區(qū)別在: 輸出波形不同 啟動計數(shù)器的觸發(fā)方式不同 門控信號GATE對計數(shù)過程的影響不同 計數(shù)過程

15、中修改計數(shù)初值對計數(shù)過程的影響不同309.3 8253 9.3 8253 的工作方式的工作方式共同遵守的3個基本原則: 控制字寫入計數(shù)器時,所有的控制邏輯電路立即復(fù)位,輸出端OUT進入初始狀態(tài) GATE信號是上升沿起作用,GATE信號的作用是在下一個CLK周期的下降沿生效 計數(shù)初值裝入計數(shù)器和減1計數(shù)都是在輸入脈沖的下降沿有效的 31計數(shù)結(jié)束,此上升沿可作為中斷請求信號9.3 8253 9.3 8253 的工作方式的工作方式 方式 0 (計數(shù)結(jié)束產(chǎn)生中斷)CLKGATEWROUTCE43210FFFEFDCW=10HLSB=4計數(shù)值裝入,開始計減1數(shù)寫入控制器后,OUT變低計數(shù)值寫入初值寄存器

16、329.3 8253 9.3 8253 的工作方式的工作方式 方式 0 寫入控制字之后,輸出端OUT變低,寫入計數(shù)值后開始計數(shù)。計數(shù)到0后輸出端OUT為高電平,并且一直保持高電平,除非寫入新的計數(shù)值。 方式0的計數(shù)值是一次有效的,即寫入一次工作一次。實際應(yīng)用中,常將計數(shù)結(jié)束后的上升跳變作為中斷請求信號。 339.3 8253 9.3 8253 的工作方式的工作方式 方式 0 在計數(shù)過程中改變計數(shù)值是立即有效的。即新的計數(shù)值寫入后,在其下一個CLK周期開始按新值計數(shù)。 計數(shù)過程中可由GATE信號控制計數(shù)過程的暫停。當GATE=0時,計數(shù)器暫停計數(shù),直到GATE=1時,計數(shù)器又繼續(xù)計數(shù)。在計數(shù)過程

17、中,GATE的變化不影響OUT的狀態(tài)。 34延時1個CLK周期按新值計數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 0 CLKGATEWROUTCE32121FFFECW=10HLSB=30LSB=2計數(shù)過程中改變計數(shù)值改變計數(shù)初值359.3 8253 9.3 8253 的工作方式的工作方式 方式 0 CLKGATEWROUTCE32221FFFECW=10HLSB=30門控信號GATE的作用GATE=0暫停計數(shù)GATE=1繼續(xù)計數(shù)36 例10-2 要實現(xiàn)定時中斷,定時時間為4096個(1000H)CLK周期。采用計數(shù)器0,設(shè)定方式0,讀寫高低2字節(jié),按二進制計數(shù)。 825

18、3GATE0CLK0OUT0+5V INT8259 A IRi37CLK0WROUT030H00H10H4096 4095104096 CLKMODE0:MOV AL,00110000B ;計數(shù)器0,2字節(jié)讀寫, OUT43H,AL ;方式0,二進制計數(shù) MOV AL,00H OUT40H,AL ;裝入計數(shù)初值低8位 MOV AL,10H OUT40H,AL ;裝入計數(shù)初值高8位 38無需再次裝入計數(shù)初值,GATE觸發(fā)計數(shù)GATE觸發(fā)計數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 1 (硬件再觸發(fā)單脈沖發(fā)生器) CLKGATEWROUTCE3210FF32CW=12HLSB

19、=3寫入控制字后OUT變高399.3 8253 9.3 8253 的工作方式的工作方式 方式 1 寫入控制字以后輸出端OUT變高電平并保持,寫入計數(shù)值以后并不立即裝入開始計數(shù),而是等待硬件(GATE)的觸發(fā)。觸發(fā)一次計數(shù)一次,計數(shù)到0 后輸出端OUT變高電平,計數(shù)次數(shù)到等待下次觸發(fā)。 方式1的計數(shù)值不必重新寫入,除非要改變計數(shù)初值,即寫入一次可多次使用,取決于硬件GATE的觸發(fā) 40寫入控制字后,OUT保持高電平9.3 8253 9.3 8253 的工作方式的工作方式 方式 1 CLKGATEWROUTCE321FF12CW=12HLSB=3LSB=20FE0新計數(shù)值在下次啟動后才生效計數(shù)過程

20、中改變計數(shù)值41GATE脈沖重新啟動,按初值計數(shù)。9.3 8253 9.3 8253 的工作方式的工作方式 方式 1 CLKGATEWROUTCE43420CW=12HLSB=431門控信號GATE的作用429.3 8253 9.3 8253 的工作方式的工作方式 方式 1 在計數(shù)過程中改變計數(shù)值不是立即有效的。即新的計數(shù)值寫入后現(xiàn)行計數(shù)不受影響,新計數(shù)值在下次啟動后才開始生效。 計數(shù)過程中可由GATE脈沖重新啟動按初值計數(shù),但GATE的變化不影響OUT的狀態(tài),只有計數(shù)到0時OUT才變高。 43 例10-3 某系統(tǒng)使用了8253的三個定時器,要求定時器0在初始化后立即啟動定時,計數(shù)器1和定時器

21、2在定時器0啟動一段時間(這里設(shè)為1000個CLK)后同時啟動。要求計數(shù)器1的計數(shù)次數(shù)為65536次,計數(shù)器2的計數(shù)次數(shù)為10000次。設(shè)端口地址為40H 43H。 GATE0OUT0CLK0CLK1CLK2GATE1GATE2OUT1OUT2+5V825344SC1SC0RW1RW0M2M1M0BCD001000010101001010100011方式0,只寫入高字節(jié),BCD碼計數(shù);計數(shù)初值:1000通道0方式1,只寫入低字節(jié),二進制計數(shù);計數(shù)初值:65536(最大值)通道1方式1,只寫入高字節(jié),BCD碼計數(shù);計數(shù)初值:10000 (最大值)通道245CNT1:MOV AL,01010010

22、BOUT43H,ALMOV AL,00HOUT41H,AL CNT2: MOV AL,10100011BOUT43H,ALMOV AL,00HOUT42H,AL CNT0: MOV AL,00100001BOUT43H,ALMOV AL,10HOUT40H,AL 46經(jīng)過1個CLK恢復(fù)高電平,重新計數(shù)計數(shù)到1,輸出端變低9.3 8253 9.3 8253 的工作方式的工作方式 方式 2 (速率發(fā)生器)CLKGATEWROUTCE43242CW=14HLSB=4131432寫入控制字,OUT變高并保持479.3 8253 9.3 8253 的工作方式的工作方式 方式 2 如果GATE為高,當控制

23、字寫入之后輸出端OUT變高電平并保持,計數(shù)值寫入之后開始計數(shù)。計數(shù)到1時,輸出端OUT變低,經(jīng)過一個CLK后輸出又恢復(fù)為高電平,同時自動重新裝入計數(shù)值開始計數(shù)。 計數(shù)值是多次有效的,只需要寫入一次計數(shù)值,就可連續(xù)輸出周期性信號 48當現(xiàn)行計數(shù)結(jié)束,才開始按新值計數(shù)。9.3 8253 9.3 8253 的工作方式的工作方式 方式 2 CE321CLKWRCW=14HLSB=4LSB=3GATE計數(shù)過程中改變計數(shù)值4321OUT499.3 8253 9.3 8253 的工作方式的工作方式 方式 2 當GATE為高電平時,在計數(shù)過程中寫入新的計數(shù)初值不是立即有效的,僅當現(xiàn)行計數(shù)結(jié)束,OUT輸出負脈沖

24、后,才將新的計數(shù)值打入減1計數(shù)器,開始按新值計數(shù)。 可由GATE信號控制計數(shù)過程的暫停。當GATE=0時,計數(shù)器暫停計數(shù),待GATE變高后的下一個CLK周期使計數(shù)器恢復(fù)初值N,重新開始計數(shù)。但在計數(shù)過程中GATE的變化不影響OUT的狀態(tài)。 50GATE變高的下一個CLK,恢復(fù)初值重新計數(shù)GATE=0,暫停計數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 2CE43243WRCW=14HLSB=4CLK134OUT321GATE門控信號GATE的作用519.3 8253 9.3 8253 的工作方式的工作方式 方式 2 如果使用中斷,OUT信號即為中斷請求信號,可將OUT信號直

25、接接到CPU的中斷請求輸入端,或接到中斷優(yōu)先權(quán)排隊電路的中斷請求輸入端。 52 例10-4 使8253每隔一定時間產(chǎn)生一次中斷請求,中斷請求間隔為500個CLK脈沖,采用計數(shù)器2,方式2,讀寫高低2個字節(jié),按BCD計數(shù)。 8253GATE2CLK2OUT2+5V INT500 CLK500 CLKCLK2INT53MODE2: MOV AL,10110101B ;計數(shù)器2,讀寫高低字節(jié), OUT 43H,AL ;方式2,按BCD計數(shù) MOV AL,00H OUT 42H,AL ;裝入計數(shù)初值低8位值00H MOV AL,05H OUT 42H,AL ;裝入計數(shù)初值高8位值05H 54計數(shù)器減到

26、0,OUT從高變低,重新裝入計數(shù)初值每輸入一個脈沖計數(shù)器減29.3 8253 9.3 8253 的工作方式的工作方式 方式 3 (方波發(fā)生器)CE42444WRCW=16HLSB=4CLK22GATE2424OUT寫入控制字,OUT變高并保持計數(shù)初值為偶數(shù)55重新裝入計數(shù)初值的第1個CLK,計數(shù)器減3。其后每個減29.3 8253 9.3 8253 的工作方式的工作方式 方式 3CE54224WRCW=16HLSB=555GATE2525計數(shù)初值為奇數(shù)CLKOUT4第1個CLK脈沖減一其后每個CLK脈沖減2計數(shù)器減到0,OUT從高變低,重新裝入計數(shù)初值計數(shù)器減到0,OUT從低變高,重新裝入計數(shù)

27、初值569.3 8253 9.3 8253 的工作方式的工作方式 方式 3 如果GATE為高,當控制字寫入之后輸出端OUT變高電平并保持,計數(shù)值寫入之后開始計數(shù)。根據(jù)計數(shù)初值N的奇偶性分為兩種情況。 當N為偶數(shù)時:在計數(shù)初值裝入以后的每一個輸入脈沖計數(shù)器減2。當計數(shù)器減到0時,一方面改變輸出端OUT的狀態(tài),同時又自動重新裝入計數(shù)值,然后重復(fù)這一過程。 579.3 8253 9.3 8253 的工作方式的工作方式 方式 3 當N為奇數(shù)時:在計數(shù)初值裝入以后的第一個CLK脈沖計數(shù)器減1,其后的每一個CLK脈沖計數(shù)器減2。當計數(shù)器減到0時,一方面輸出端OUT變低,同時又自動重新裝入計數(shù)值。在重新裝入

28、計數(shù)值后的第一個CLK脈沖,使計數(shù)器減3,其后的每一個CLK脈沖計數(shù)器又都減2。當計數(shù)器減到0時,一方面輸出端OUT恢復(fù)為高電平,同時又自動重新裝入計數(shù)值重復(fù)上述過程。 58現(xiàn)行計數(shù)結(jié)束后,按新值計數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 3CE54224CW=16H55GATE2222CLK2計數(shù)過程中改變計數(shù)值(GATE為高)WRLSB=5LSB=2OUT新寫入的計數(shù)初值不是立即有效599.3 8253 9.3 8253 的工作方式的工作方式 方式 3 計數(shù)值多次有效,只需要寫入一次計數(shù)值,就可連續(xù)輸出周期性信號。 當GATE為高電平時,在計數(shù)過程中寫入新的計數(shù)初值

29、不是立即有效的,僅當現(xiàn)行計數(shù)結(jié)束,OUT輸出改變狀態(tài)后,才將新的計數(shù)值打入計數(shù)器,開始按新值計數(shù) 60GATE變高后的第1個CLK下降沿按新值計數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 3CE54225552222CLK2計數(shù)過程中改變計數(shù)值(GATE變化)CW=16HWRLSB=5LSB=2OUTGATEGATE變低暫停計數(shù)619.3 8253 9.3 8253 的工作方式的工作方式 方式 3 如果寫入新的計數(shù)初值后GATE產(chǎn)生由低到高的變化,在GATE變高后的第一個CLK周期下降沿開始按新值計數(shù) 。 計數(shù)過程中,可由GATE信號控制計數(shù)過程的暫?;蛑匦聠佑嫈?shù)。若在

30、OUT為高電平期間,GATE變低,則暫停計數(shù)過程,待GATE變高后計數(shù)器又重裝初值開始計數(shù) 62GATE變高后的第1個CLK下降沿重新計數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 3CE42444224424CLK2OUT為低期間GATE的作用CW=16HWRLSB=4GATEOUTGATE變低暫停計數(shù)OUT立即變高63 例10-5 對輸入時鐘CLK(32.768KHz)進行分頻,獲得1HZ其占空比50%的方波信號。采用計數(shù)器0,讀寫高低字節(jié),按二進制計數(shù)。 8253GATE032.768KHzOUT0+5V 1Hz計數(shù)初值N =(32.7681000)1= 32768

31、= 8000H 64MODE3:MOV AL,00110110B OUT CTRL,AL ;MOV AL,0 OUT CNT0,AL ;裝入低位00HMOV AL,80H OUT CNT0,AL ;裝入高位80H 659.3 8253 9.3 8253 的工作方式的工作方式 方式 4 (軟起動單拍脈沖發(fā)生器)CE5431FFWRCW=18HLSB=520GATEFE FD FC FBCLKOUTFA寫入控制字,OUT變高并保持寫入計數(shù)值后開始計數(shù),軟件啟動計數(shù)到0時停止計數(shù),OUT變低電平,維持一個CLK周期。計數(shù)值一次有效669.3 8253 9.3 8253 的工作方式的工作方式 方式 4

32、 寫入控制字之后,輸出端OUT變高電平,寫入計數(shù)值后開始計數(shù)(即軟件啟動)。計數(shù)到0時停止計數(shù),輸出端OUT變?yōu)榈碗娖剑S持一個CLK周期后又變?yōu)楦唠娖?,因此這種方式的計數(shù)是一次性的,只有再次寫入計數(shù)初值,才啟動另一次計數(shù)過程。 67寫入新計數(shù)初值后,延時1個CLK周期按新值計數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 4CE4325364GATE210FFCLKOUTFE計數(shù)過程中改變計數(shù)值WRCW=18HLSB=4LSB=668GATE=1,計數(shù)器繼續(xù)計數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 4CE55531WRCW=18HLSB=542GA

33、TE0FFFE FDCLKOUTFCGATE=0,計數(shù)器暫停計數(shù)OUT為低期間GATE的作用699.3 8253 9.3 8253 的工作方式的工作方式 方式 4 新的計數(shù)值寫入后,在其下一個CLK周期開始按新值計數(shù),若計數(shù)值為雙字節(jié),則在寫入第一字節(jié)時停止計數(shù),在寫入第二字節(jié)后開始按新值計數(shù) 計數(shù)過程中可由GATE信號控制計數(shù)過程的暫停。當GATE=0時,計數(shù)器暫停計數(shù),直到GATE=1時計數(shù)器又繼續(xù)計數(shù)。 70 例10-6 對于鎖存器,實現(xiàn)定時鎖存控制,即在一定時間后產(chǎn)生一鎖存信號LE,延遲時間為10個CLK周期。采用計數(shù)器1,方式4,低位字節(jié),按BCD計數(shù)。 8253GATE1CLK1O

34、UT1+5V INT鎖存器 LE71CLK1WROUT159H10H1010 CLK910MODE4: MOV AL,01011001BOUTCTRL,ALMOV AL,10HOUT CNT1,AL72計數(shù)到0,OUT變低,1個CLK后變高GATE觸發(fā)計數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 5 (硬啟動單拍脈沖發(fā)生器)CE43210FF4WRCW=1AHLSB=4CLKGATE寫入控制字后OUT變高OUT739.3 8253 9.3 8253 的工作方式的工作方式 方式 5 寫入控制字以后,輸出端OUT變高電平并保持,寫入計數(shù)值以后,計數(shù)器并不立即開始計數(shù),而是等待

35、硬件(GATE)的觸發(fā)啟動。觸發(fā)一次啟動一次,計數(shù)到0時輸出端OUT變?yōu)榈碗娖?,一個CLK后又變高,即輸出一個CLK周期的負脈沖。 方式5的計數(shù)值不必重新寫入 。 749.3 8253 9.3 8253 的工作方式的工作方式 方式 5 CE321FF01CLKWRCW=12HLSB=3LSB=202GATEFF計數(shù)過程中改變計數(shù)值OUT75GATE脈沖重新啟動,按初值計數(shù)。9.3 8253 9.3 8253 的工作方式的工作方式 方式 5 CE43231WRCW=12HLSB=4CLK42門控信號GATE的作用GATE0FFOUT76 例10-7 在一個通信系統(tǒng)中,收發(fā)雙方采用REQ握手方式進

36、行通信應(yīng)答,發(fā)送方采用發(fā)出發(fā)送請求后轉(zhuǎn)入接收應(yīng)答信號SEND的檢測,如果輸出發(fā)送數(shù)據(jù)請求REQ之后一定時間(這里為100CLK脈沖)內(nèi)不能接受到應(yīng)答信號時,就在接收方發(fā)生通信異常信號FAIL。用8253實現(xiàn)100個CLK的定時計數(shù),采用計數(shù)器1,方式5,低位1字節(jié),按二進制計數(shù)。 778253OUT1GATE1CLK1SENDREQSENDREQFAIL發(fā)送側(cè)接收側(cè)78MODE5:MOV AL,01011010BOUT CTRL,AL MOV AL,100OUT CNT1,A L高電平GATE1100CLK100 99 98 97 .1 064H5AHCLK0WRREQSENDFAIL799.

37、3 8253 9.3 8253 的工作方式的工作方式 方式 5 在計數(shù)過程中改變計數(shù)值不是立即有效的。即新的計數(shù)值寫入后只要不發(fā)門控信號,現(xiàn)行計數(shù)不受影響,新計數(shù)值在下次啟動后才開始生效。 計數(shù)過程中可由GATE脈沖重新啟動按初值計數(shù),但GATE的變化不影響OUT的狀態(tài),只有計數(shù)到0時OUT輸出一個CLK周期的負脈沖。 80NUIST第第9 9章章 可編程定時可編程定時/ /計數(shù)器計數(shù)器82593的引腳功能和編程結(jié)構(gòu)1 18253的編程2 28253的工作方式3 38253綜合應(yīng)用舉例4 48254芯片5 5819.4 8253 9.4 8253 的綜合應(yīng)用舉例的綜合應(yīng)用舉例 自動氣象站問題分

38、析 在自動氣象站的瞬時風速和降雨量的測量中,風速傳感器和翻斗式雨量傳感器的速出都是脈沖信號。瞬時風速V=a+bf,其中a為常數(shù)(起動風速),b為系數(shù),f為單位時間內(nèi)的脈沖數(shù)(每秒脈沖數(shù))翻斗式雨量傳感器某時段的降雨量計算公式為P=kN,其中N該時段內(nèi)傳感器輸出脈沖的個數(shù),k為系數(shù)。 本例時間段取1分鐘。請應(yīng)用8253實現(xiàn)瞬時風速和降雨量的測量。 829.4 8253 9.4 8253 的綜合應(yīng)用舉例的綜合應(yīng)用舉例 自動氣象站資源分配 要實現(xiàn)瞬時風速和降雨量的測量均需要實現(xiàn)對脈沖的計數(shù)和定時 8253的通道0實現(xiàn)定時1秒鐘 計數(shù)器1用于對風速傳感器輸出的脈沖信號計數(shù) 計數(shù)器2用于對翻斗式雨量傳感器輸出的脈沖信號計數(shù) 83CSOUT0CLK0CLK1CLK2GATE1GATE2OUT1OUT2接圖0-2的Y18253GATE050kHz接風速傳感器接雨量傳感器1s到請求中斷接8259A的IR084產(chǎn)生T=1s的基準時間,工作在方式2,設(shè)通道0時鐘的頻率f CLK0=50KHz 計數(shù)器0N0=T/TCLK0=1s/0.02ms=50000(C350H) 記錄風速傳感器的輸出脈沖,工作在方式0,設(shè)計數(shù)初始值為N1,當定時1s到如果讀出的當前值為M1,則風速傳感器輸出脈沖的頻率f1=N1-M1。一般

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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

提交評論