第9章-可編程定時(shí)計(jì)數(shù)器8253_第1頁(yè)
第9章-可編程定時(shí)計(jì)數(shù)器8253_第2頁(yè)
第9章-可編程定時(shí)計(jì)數(shù)器8253_第3頁(yè)
第9章-可編程定時(shí)計(jì)數(shù)器8253_第4頁(yè)
第9章-可編程定時(shí)計(jì)數(shù)器8253_第5頁(yè)
已閱讀5頁(yè),還剩88頁(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)介

1、NUIST第第9 9章章 可編程定時(shí)可編程定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器2NUIST第第9 9章章 可編程定時(shí)可編程定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器8253的引腳功能和編程結(jié)構(gòu)1 18253的編程2 28253的工作方式3 38253綜合應(yīng)用舉例4 48254芯片5 53NUIST第第9 9章章 可編程定時(shí)可編程定時(shí)/ /計(jì)數(shù)器計(jì)數(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個(gè)獨(dú)立的16位計(jì)數(shù)器 每個(gè)計(jì)數(shù)器都可以按二進(jìn)制或BCD碼計(jì)

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

3、3的引腳功能 計(jì)數(shù)器的門控信號(hào)。為高時(shí),計(jì)數(shù)器工作。計(jì)數(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) 計(jì)數(shù)器0 號(hào)計(jì)數(shù)器1 號(hào)計(jì)數(shù)器2 號(hào)D7D0RDWRA0A1CSCLK0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT2內(nèi)部總線109.1 8253 9.1 8253 的引腳功能和編程結(jié)構(gòu)的引腳功能和編程結(jié)構(gòu) 8253的編程結(jié)構(gòu) 計(jì)數(shù)器0 號(hào)計(jì)數(shù)器1 號(hào)計(jì)數(shù)器2 號(hào)D7D0RDWRA0A1CSCL

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

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

6、存器(CR)低8位高8位 低8位計(jì)數(shù)單元(CR)高8位 低8位輸出鎖存器(OL)D7D0 計(jì)數(shù)器1#計(jì)數(shù)器2#RD WR CS 地址譯碼地址總線 A1A0GATE0 CLK0 OUT0 GATE1 CLK1 OUT1 GATE2 CLK2OUT2 VCC GND+5V 8253計(jì)數(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時(shí)8253的片選有效,則各端口地址為40H43H(IBM PC/XT中8253的端口地址)。 CS A1 A0讀 (RD)寫(xiě) (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 無(wú)效(D7D0為高阻狀態(tài))14NUIST第第9 9章章 可編程定時(shí)可編程定時(shí)/ /計(jì)數(shù)器計(jì)數(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計(jì)數(shù)器選擇讀/寫(xiě)方式選擇工作方式選擇數(shù)制選擇00計(jì)數(shù)器0

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

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

10、電路發(fā)號(hào)時(shí)間到中斷請(qǐng)求雙音頻信號(hào)輸出8253CLK0CLK1CLK2GATE0GATE1GATE2OUT1OUT0OUT220電話雙音頻信號(hào)是兩個(gè)音頻信號(hào)的疊加,以數(shù)字8為例,兩個(gè)音頻信號(hào)的頻率分別為852Hz和1336Hz。當(dāng)按下一個(gè)電話號(hào)碼時(shí)電話機(jī)將發(fā)出這一雙音頻信號(hào),其發(fā)號(hào)時(shí)間為50ms80ms,本例選50ms。根據(jù)原理電路我們使通道0產(chǎn)生852Hz的方波,通道1產(chǎn)生1336Hz的方波,通道2產(chǎn)生50ms的定時(shí),時(shí)間到產(chǎn)生中斷請(qǐng)求信號(hào)。 21計(jì)算各通道計(jì)數(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:讀寫(xiě)高低字節(jié)方式3BCD碼計(jì)數(shù)通道1:通道2:讀寫(xiě)高低字節(jié)方式3BCD碼計(jì)數(shù)讀寫(xiě)高低字節(jié)方式0二進(jìn)制計(jì)數(shù)SC1SC0RW1RW0M2M1M0BCD0011011137H0111011177H10110000B0H23確定端口地址設(shè)地址總線的A7A2為111111時(shí)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的計(jì)數(shù)器讀操作 直接讀操作 直接執(zhí)行

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

14、數(shù)器選擇:00: 0#, 01:1#10: 2#, 11: 無(wú)意義00:鎖存當(dāng)前值無(wú)意義讀取1#通道計(jì)數(shù)值 MOVAL, 40HOUT43H, ALINAL, 41HMOVCL, ALIN AL, 41HMOVCH,AL28NUIST第第9 9章章 可編程定時(shí)可編程定時(shí)/ /計(jì)數(shù)器計(jì)數(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ū)別在: 輸出波形不同 啟動(dòng)計(jì)數(shù)器的觸發(fā)方式不同 門控信號(hào)GATE對(duì)計(jì)數(shù)過(guò)程的影響不同 計(jì)數(shù)過(guò)程

15、中修改計(jì)數(shù)初值對(duì)計(jì)數(shù)過(guò)程的影響不同309.3 8253 9.3 8253 的工作方式的工作方式共同遵守的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ù)都是在輸入脈沖的下降沿有效的 31計(jì)數(shù)結(jié)束,此上升沿可作為中斷請(qǐng)求信號(hào)9.3 8253 9.3 8253 的工作方式的工作方式 方式 0 (計(jì)數(shù)結(jié)束產(chǎn)生中斷)CLKGATEWROUTCE43210FFFEFDCW=10HLSB=4計(jì)數(shù)值裝入,開(kāi)始計(jì)減1數(shù)寫(xiě)入控制器后,OUT變低計(jì)數(shù)值寫(xiě)入初值寄存器

16、329.3 8253 9.3 8253 的工作方式的工作方式 方式 0 寫(xiě)入控制字之后,輸出端OUT變低,寫(xiě)入計(jì)數(shù)值后開(kāi)始計(jì)數(shù)。計(jì)數(shù)到0后輸出端OUT為高電平,并且一直保持高電平,除非寫(xiě)入新的計(jì)數(shù)值。 方式0的計(jì)數(shù)值是一次有效的,即寫(xiě)入一次工作一次。實(shí)際應(yīng)用中,常將計(jì)數(shù)結(jié)束后的上升跳變作為中斷請(qǐng)求信號(hào)。 339.3 8253 9.3 8253 的工作方式的工作方式 方式 0 在計(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ò)程

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

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

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

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

21、2在定時(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。 GATE0OUT0CLK0CLK1CLK2GATE1GATE2OUT1OUT2+5V825344SC1SC0RW1RW0M2M1M0BCD001000010101001010100011方式0,只寫(xiě)入高字節(jié),BCD碼計(jì)數(shù);計(jì)數(shù)初值:1000通道0方式1,只寫(xiě)入低字節(jié),二進(jìn)制計(jì)數(shù);計(jì)數(shù)初值:65536(最大值)通道1方式1,只寫(xiě)入高字節(jié),BCD碼計(jì)數(shù);計(jì)數(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)過(guò)1個(gè)CLK恢復(fù)高電平,重新計(jì)數(shù)計(jì)數(shù)到1,輸出端變低9.3 8253 9.3 8253 的工作方式的工作方式 方式 2 (速率發(fā)生器)CLKGATEWROUTCE43242CW=14HLSB=4131432寫(xiě)入控制字,OUT變高并保持479.3 8253 9.3 8253 的工作方式的工作方式 方式 2 如果GATE為高,當(dāng)控制

23、字寫(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) 48當(dāng)現(xiàn)行計(jì)數(shù)結(jié)束,才開(kāi)始按新值計(jì)數(shù)。9.3 8253 9.3 8253 的工作方式的工作方式 方式 2 CE321CLKWRCW=14HLSB=4LSB=3GATE計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值4321OUT499.3 8253 9.3 8253 的工作方式的工作方式 方式 2 當(dāng)GATE為高電平時(shí),在計(jì)數(shù)過(guò)程中寫(xiě)入新的計(jì)數(shù)初值不是立即有效的,僅當(dāng)現(xiàn)行計(jì)數(shù)結(jié)束,OUT輸出負(fù)脈沖

24、后,才將新的計(jì)數(shù)值打入減1計(jì)數(shù)器,開(kāi)始按新值計(jì)數(shù)。 可由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)。 50GATE變高的下一個(gè)CLK,恢復(fù)初值重新計(jì)數(shù)GATE=0,暫停計(jì)數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 2CE43243WRCW=14HLSB=4CLK134OUT321GATE門控信號(hào)GATE的作用519.3 8253 9.3 8253 的工作方式的工作方式 方式 2 如果使用中斷,OUT信號(hào)即為中斷請(qǐng)求信號(hào),可將OUT信號(hào)直

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

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

27、初值569.3 8253 9.3 8253 的工作方式的工作方式 方式 3 如果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ò)程。 579.3 8253 9.3 8253 的工作方式的工作方式 方式 3 當(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ù)值。在重新裝入

28、計(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ò)程。 58現(xiàn)行計(jì)數(shù)結(jié)束后,按新值計(jì)數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 3CE54224CW=16H55GATE2222CLK2計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值(GATE為高)WRLSB=5LSB=2OUT新寫(xiě)入的計(jì)數(shù)初值不是立即有效599.3 8253 9.3 8253 的工作方式的工作方式 方式 3 計(jì)數(shù)值多次有效,只需要寫(xiě)入一次計(jì)數(shù)值,就可連續(xù)輸出周期性信號(hào)。 當(dāng)GATE為高電平時(shí),在計(jì)數(shù)過(guò)程中寫(xiě)入新的計(jì)數(shù)初值

29、不是立即有效的,僅當(dāng)現(xiàn)行計(jì)數(shù)結(jié)束,OUT輸出改變狀態(tài)后,才將新的計(jì)數(shù)值打入計(jì)數(shù)器,開(kāi)始按新值計(jì)數(shù) 60GATE變高后的第1個(gè)CLK下降沿按新值計(jì)數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 3CE54225552222CLK2計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值(GATE變化)CW=16HWRLSB=5LSB=2OUTGATEGATE變低暫停計(jì)數(shù)619.3 8253 9.3 8253 的工作方式的工作方式 方式 3 如果寫(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ù)。若在

30、OUT為高電平期間,GATE變低,則暫停計(jì)數(shù)過(guò)程,待GATE變高后計(jì)數(shù)器又重裝初值開(kāi)始計(jì)數(shù) 62GATE變高后的第1個(gè)CLK下降沿重新計(jì)數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 3CE42444224424CLK2OUT為低期間GATE的作用CW=16HWRLSB=4GATEOUTGATE變低暫停計(jì)數(shù)OUT立即變高63 例10-5 對(duì)輸入時(shí)鐘CLK(32.768KHz)進(jìn)行分頻,獲得1HZ其占空比50%的方波信號(hào)。采用計(jì)數(shù)器0,讀寫(xiě)高低字節(jié),按二進(jìn)制計(jì)數(shù)。 8253GATE032.768KHzOUT0+5V 1Hz計(jì)數(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 (軟起動(dòng)單拍脈沖發(fā)生器)CE5431FFWRCW=18HLSB=520GATEFE FD FC FBCLKOUTFA寫(xiě)入控制字,OUT變高并保持寫(xiě)入計(jì)數(shù)值后開(kāi)始計(jì)數(shù),軟件啟動(dòng)計(jì)數(shù)到0時(shí)停止計(jì)數(shù),OUT變低電平,維持一個(gè)CLK周期。計(jì)數(shù)值一次有效669.3 8253 9.3 8253 的工作方式的工作方式 方式 4

32、 寫(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ò)程。 67寫(xiě)入新計(jì)數(shù)初值后,延時(shí)1個(gè)CLK周期按新值計(jì)數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 4CE4325364GATE210FFCLKOUTFE計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值WRCW=18HLSB=4LSB=668GATE=1,計(jì)數(shù)器繼續(xù)計(jì)數(shù)9.3 8253 9.3 8253 的工作方式的工作方式 方式 4CE55531WRCW=18HLSB=542GA

33、TE0FFFE FDCLKOUTFCGATE=0,計(jì)數(shù)器暫停計(jì)數(shù)OUT為低期間GATE的作用699.3 8253 9.3 8253 的工作方式的工作方式 方式 4 新的計(jì)數(shù)值寫(xiě)入后,在其下一個(gè)CLK周期開(kāi)始按新值計(jì)數(shù),若計(jì)數(shù)值為雙字節(jié),則在寫(xiě)入第一字節(jié)時(shí)停止計(jì)數(shù),在寫(xiě)入第二字節(jié)后開(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ù)。 70 例10-6 對(duì)于鎖存器,實(shí)現(xiàn)定時(shí)鎖存控制,即在一定時(shí)間后產(chǎn)生一鎖存信號(hào)LE,延遲時(shí)間為10個(gè)CLK周期。采用計(jì)數(shù)器1,方式4,低位字節(jié),按BCD計(jì)數(shù)。 8253GATE1CLK1O

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

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

36、行通信應(yīng)答,發(fā)送方采用發(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,低位1字節(jié),按二進(jìn)制計(jì)數(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 在計(jì)數(shù)過(guò)程中改變計(jì)數(shù)值不是立即有效的。即新的計(jì)數(shù)值寫(xiě)入后只要不發(fā)門控信號(hào),現(xiàn)行計(jì)數(shù)不受影響,新計(jì)數(shù)值在下次啟動(dòng)后才開(kāi)始生效。 計(jì)數(shù)過(guò)程中可由GATE脈沖重新啟動(dòng)按初值計(jì)數(shù),但GATE的變化不影響OUT的狀態(tài),只有計(jì)數(shù)到0時(shí)OUT輸出一個(gè)CLK周期的負(fù)脈沖。 80NUIST第第9 9章章 可編程定時(shí)可編程定時(shí)/ /計(jì)數(shù)器計(jì)數(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)用舉例 自動(dòng)氣象站問(wèn)題分

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

溫馨提示

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