第九章 計數(shù)器、定時器8253課件_第1頁
第九章 計數(shù)器、定時器8253課件_第2頁
第九章 計數(shù)器、定時器8253課件_第3頁
第九章 計數(shù)器、定時器8253課件_第4頁
第九章 計數(shù)器、定時器8253課件_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第 9 9章章計數(shù)器計數(shù)器/ /定時器定時器82538253第第9 9章:計數(shù)器、定時器章:計數(shù)器、定時器82538253n8253的的性能及結(jié)構(gòu)性能及結(jié)構(gòu)和六種工作和六種工作 方式方式n 8253的編程的編程 n定時與計數(shù)的基本概念定時與計數(shù)的基本概念主要內(nèi)容 9.1 9.1 概述概述定時器:定時器:在時鐘信號作用下,進(jìn)行定時的在時鐘信號作用下,進(jìn)行定時的減減“1”計數(shù),定時時間到(減計數(shù),定時時間到(減“1”計數(shù)回計數(shù)回零),從輸出端輸出零),從輸出端輸出周期均勻、周期均勻、 頻率恒定頻率恒定的脈沖信號的脈沖信號。定時器強(qiáng)調(diào)的是精確的時間。定時器強(qiáng)調(diào)的是精確的時間或時間間隔?;驎r間間隔。

2、 定時舉例:定時舉例: 一天一天2424小時的計時,稱為日時鐘。小時的計時,稱為日時鐘。 在監(jiān)測系統(tǒng)中,對被測點的定時取樣。在監(jiān)測系統(tǒng)中,對被測點的定時取樣。 在讀鍵盤時,為去抖,一般延遲一段時間,再讀。在讀鍵盤時,為去抖,一般延遲一段時間,再讀。 在微機(jī)控制系統(tǒng)中,控制某工序定時啟動。在微機(jī)控制系統(tǒng)中,控制某工序定時啟動。9.1 9.1 概述概述 9.1 9.1 概述概述 計數(shù)器:計數(shù)器: 在外設(shè)脈沖信號作用下,進(jìn)行減在外設(shè)脈沖信號作用下,進(jìn)行減“1 1”計計數(shù),計數(shù)次數(shù)到(減數(shù),計數(shù)次數(shù)到(減“1 1”計數(shù)回零),從輸計數(shù)回零),從輸出端輸出一個脈沖信號。它主要反映脈沖的出端輸出一個脈沖信

3、號。它主要反映脈沖的個數(shù)(進(jìn)而獲知外設(shè)的某種狀態(tài))。個數(shù)(進(jìn)而獲知外設(shè)的某種狀態(tài))。 計數(shù)舉例:計數(shù)舉例:對零件和產(chǎn)品的計數(shù);對零件和產(chǎn)品的計數(shù);對大橋和高速公路上車流量的統(tǒng)計等等對大橋和高速公路上車流量的統(tǒng)計等等。 9.1 9.1 概述概述定時控制在微機(jī)系統(tǒng)中具有極為重要的作定時控制在微機(jī)系統(tǒng)中具有極為重要的作用,計數(shù)是許多過程控制領(lǐng)域常用的功能用,計數(shù)是許多過程控制領(lǐng)域常用的功能它們都是由數(shù)字電路中的計數(shù)電路構(gòu)成它們都是由數(shù)字電路中的計數(shù)電路構(gòu)成 9.1 9.1 概述概述一、定時的基本實現(xiàn)方法一、定時的基本實現(xiàn)方法軟件延時軟件延時利用微處理器執(zhí)行一個延時程序段實現(xiàn)利用微處理器執(zhí)行一個延時程

4、序段實現(xiàn)不用硬件,但占用不用硬件,但占用CPU時間、定時精度不高,隨系時間、定時精度不高,隨系統(tǒng)時鐘頻率改變統(tǒng)時鐘頻率改變不可編程的硬件定時不可編程的硬件定時采用分頻器、單穩(wěn)電路或簡易定時電路控制定時時間采用分頻器、單穩(wěn)電路或簡易定時電路控制定時時間定時電路簡單、定時時間可以在一定范圍改變定時電路簡單、定時時間可以在一定范圍改變可編程的硬件定時可編程的硬件定時軟件硬件相結(jié)合、用可編程定時器芯片構(gòu)成一個方便軟件硬件相結(jié)合、用可編程定時器芯片構(gòu)成一個方便靈活的定時電路靈活的定時電路具有多種工作方式、能夠輸出多種控制信號具有多種工作方式、能夠輸出多種控制信號 8.1 8.1 概述概述二、計數(shù)器、定時

5、器的基本作用二、計數(shù)器、定時器的基本作用在分時操作時作為中斷切換在分時操作時作為中斷切換可以輸出精確的定時信號給可以輸出精確的定時信號給I/O設(shè)備設(shè)備作為可編程的波特率發(fā)生器作為可編程的波特率發(fā)生器實現(xiàn)時間延遲或測量外部事件的時間實現(xiàn)時間延遲或測量外部事件的時間對外部事件計數(shù)對外部事件計數(shù) 9.1 9.1 概述概述三、基本結(jié)構(gòu)及工作原理三、基本結(jié)構(gòu)及工作原理控制寄存器控制寄存器初始值寄存器初始值寄存器計數(shù)器計數(shù)器計數(shù)輸出寄存器計數(shù)輸出寄存器狀態(tài)寄存器狀態(tài)寄存器CLKGATEOUT時鐘時鐘由設(shè)備來由設(shè)備來往設(shè)備去往設(shè)備去譯碼譯碼CSA0A1RDWRRESETREADY數(shù)據(jù)數(shù)據(jù)初值由數(shù)據(jù)線送入初值

6、寄存器初值由數(shù)據(jù)線送入初值寄存器計數(shù)器在時鐘計數(shù)器在時鐘CLK的作用下做減的作用下做減1或加或加1計計數(shù)數(shù)計到計到0輸出輸出OUT信號信號門控信號門控信號GATE控制時鐘控制時鐘計數(shù)器的當(dāng)前值可以讀出計數(shù)器的當(dāng)前值可以讀出控制寄存器用于控制工作模式控制寄存器用于控制工作模式狀態(tài)寄存器用于存儲當(dāng)前的工作狀態(tài)狀態(tài)寄存器用于存儲當(dāng)前的工作狀態(tài)9.2 9.2 可編程計數(shù)器可編程計數(shù)器/ /定時器定時器825382539.2 可編程計數(shù)器可編程計數(shù)器/定時器定時器8253一、一、8253的結(jié)構(gòu)和工作原理的結(jié)構(gòu)和工作原理8254是是8253的改進(jìn)型的改進(jìn)型9.2 9.2 可編程計數(shù)器可編程計數(shù)器/ /定時

7、器定時器82538253D7D0計數(shù)器0控制字寄存器計數(shù)器1計數(shù)器2內(nèi)部數(shù)據(jù)總線數(shù)據(jù)總線緩沖器讀寫控制邏輯RDWRA0A1CSCLK0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT29.2 9.2 可編程計數(shù)器可編程計數(shù)器/ /定時器定時器82538253一片一片82538253內(nèi)部有內(nèi)部有3 3個個1616位的計數(shù)器(相互獨立)位的計數(shù)器(相互獨立)每個計數(shù)器的內(nèi)部結(jié)構(gòu)相同,可通過編程手段設(shè)每個計數(shù)器的內(nèi)部結(jié)構(gòu)相同,可通過編程手段設(shè)置為置為6 6種不同的工作方式來進(jìn)行定時種不同的工作方式來進(jìn)行定時/ /計數(shù)計數(shù)每個計數(shù)器在開始工作前必須預(yù)制時間常數(shù)(時每個計數(shù)器在開始工

8、作前必須預(yù)制時間常數(shù)(時間初始)間初始)每個計數(shù)器在工作過程中的當(dāng)前計數(shù)值可被每個計數(shù)器在工作過程中的當(dāng)前計數(shù)值可被CPUCPU讀讀出出. .(注:時間常數(shù)也可在計數(shù)過程中更改)(注:時間常數(shù)也可在計數(shù)過程中更改)按二進(jìn)制或十進(jìn)制(按二進(jìn)制或十進(jìn)制(BCDBCD碼)計數(shù)碼)計數(shù)9.2 9.2 可編程計數(shù)器可編程計數(shù)器/ /定時器定時器82538253初值寄存器初值寄存器GATECLKOUT減減1計數(shù)器計數(shù)器輸出鎖存器輸出鎖存器計數(shù)初值存于計數(shù)初值存于初值寄存器初值寄存器(16/8);在計數(shù)過程中,在計數(shù)過程中,減法計數(shù)器(執(zhí)行部件減法計數(shù)器(執(zhí)行部件16/8 )的值減的值減1計數(shù),計數(shù),而初值

9、寄存器中的初值不變。而初值寄存器中的初值不變。輸出鎖存器輸出鎖存器用于寫入鎖存命令用于寫入鎖存命令時,鎖定當(dāng)前計數(shù)值,讀出才時,鎖定當(dāng)前計數(shù)值,讀出才有意義有意義9.2 9.2 可編程計數(shù)器可編程計數(shù)器/ /定時器定時器82538253CLK時鐘輸入信號時鐘輸入信號在計數(shù)過程中,此引腳上每輸入一個時鐘信號在計數(shù)過程中,此引腳上每輸入一個時鐘信號(下降沿),計數(shù)器的計數(shù)值減(下降沿),計數(shù)器的計數(shù)值減1GATE門控輸入信號門控輸入信號控制計數(shù)器工作,可分成電平控制和上升沿控控制計數(shù)器工作,可分成電平控制和上升沿控制兩種類型制兩種類型OUT計數(shù)器輸出信號計數(shù)器輸出信號當(dāng)一次計數(shù)過程結(jié)束(計數(shù)值減為

10、當(dāng)一次計數(shù)過程結(jié)束(計數(shù)值減為0),),OUT引腳上將產(chǎn)生一個輸出信號引腳上將產(chǎn)生一個輸出信號9.2 9.2 可編程計數(shù)器可編程計數(shù)器/ /定時器定時器82538253D0 D7數(shù)據(jù)線數(shù)據(jù)線A0 A1地址線地址線CS*片選信號片選信號RD*讀信號讀信號WR*寫信號寫信號 9.2 9.2 可編程計數(shù)器可編程計數(shù)器/ /定時器定時器82538253CSRDA1WRA0傳傳 送送 方方 式式00000001111000000011100110010101010寫入計數(shù)器寫入計數(shù)器0的初始值的初始值寫入計數(shù)器寫入計數(shù)器1的初始值的初始值寫入計數(shù)器寫入計數(shù)器2的初始值的初始值寫入控制寄存器控制字或命令寫

11、入控制寄存器控制字或命令讀自計數(shù)器讀自計數(shù)器0的的OL讀自計數(shù)器讀自計數(shù)器1的的OL讀自計數(shù)器讀自計數(shù)器2的的OL82538253輸入信號與各功能的對應(yīng)關(guān)系輸入信號與各功能的對應(yīng)關(guān)系二、二、8253的初始化的初始化8253加電后的工作方式不確定加電后的工作方式不確定8253必須初始化編程,才能正常工作必須初始化編程,才能正常工作寫入控制字寫入控制字寫入計數(shù)初值寫入計數(shù)初值讀取計數(shù)值讀取計數(shù)值D7D6D5D4D3D2D1D01. 寫入方式控制字寫入方式控制字計數(shù)器讀寫格式工作方式數(shù)制D7D6D5D4D3D2D1D000 計數(shù)器計數(shù)器001 計數(shù)器計數(shù)器110 計數(shù)器計數(shù)器211 非法非法00 計

12、數(shù)器鎖存命計數(shù)器鎖存命令令 01 只讀寫低字節(jié)只讀寫低字節(jié)10 只讀寫高字節(jié)只讀寫高字節(jié)11 先讀寫低字節(jié)先讀寫低字節(jié) 后讀寫高字節(jié)后讀寫高字節(jié)000 方式方式0001 方式方式1010 方式方式2011 方式方式3100 方式方式4101 方式方式50 二進(jìn)制二進(jìn)制1 十進(jìn)制十進(jìn)制控制字寫入控制字控制字寫入控制字I/O地址(地址(A1A011)示例示例關(guān)于的控制字說明關(guān)于的控制字說明: (1)、8253只有一個工作方式控制字,但是對每個計數(shù)器而只有一個工作方式控制字,但是對每個計數(shù)器而言,它們的工作方式控制字內(nèi)容一定各不相同(前兩位不言,它們的工作方式控制字內(nèi)容一定各不相同(前兩位不同),所

13、用各計數(shù)器的控制字需要分別設(shè)置,先后不計。同),所用各計數(shù)器的控制字需要分別設(shè)置,先后不計。 (2)、8253的工作方式控制字的特殊形式可用于對計數(shù)器的的工作方式控制字的特殊形式可用于對計數(shù)器的當(dāng)前計數(shù)值進(jìn)行鎖存。當(dāng)前計數(shù)值進(jìn)行鎖存。 SC1SC0M2RW1RW0 BCDM0M1D7 D6 D5 D4 D3 D2 D1 D000 計數(shù)器鎖存命令00 選擇計數(shù)器001選擇計數(shù)器110 選擇計數(shù)器2計數(shù)器選擇 未用 鎖存計數(shù)器當(dāng)前計數(shù)值控制字鎖存計數(shù)器當(dāng)前計數(shù)值控制字(3)、在工作方式控制字被設(shè)置之后,隨后必須緊接著給計、在工作方式控制字被設(shè)置之后,隨后必須緊接著給計數(shù)器預(yù)設(shè)置計數(shù)初值,計數(shù)器方可

14、開始工作。數(shù)器預(yù)設(shè)置計數(shù)初值,計數(shù)器方可開始工作。(4).計數(shù)初值計數(shù)初值 計數(shù)初值計數(shù)初值X與輸入時鐘頻率與輸入時鐘頻率F(1/tc)及輸出周期及輸出周期T之間的之間的關(guān)系為:關(guān)系為: T = X*tc = X/F X = T*F = T/tc (5). 8253初始化的工作有兩個內(nèi)容:初始化的工作有兩個內(nèi)容:一是向命令寄存器寫入方式命令,以選擇器(一是向命令寄存器寫入方式命令,以選擇器(3個計數(shù)器之一),確定工作方式(個計數(shù)器之一),確定工作方式(6種方式之一種方式之一),指定計數(shù)器計數(shù)初值的長度和裝入順序以及),指定計數(shù)器計數(shù)初值的長度和裝入順序以及計數(shù)值的碼制(計數(shù)值的碼制(BCD或二

15、進(jìn)制碼)?;蚨M(jìn)制碼)。二是向已選定的計數(shù)器按方式命令的要求寫入計二是向已選定的計數(shù)器按方式命令的要求寫入計數(shù)初值。數(shù)初值。2. 寫入計數(shù)值寫入計數(shù)值選擇二進(jìn)制時選擇二進(jìn)制時計數(shù)值范圍:計數(shù)值范圍:0000HFFFFH0000H是最大值,代表是最大值,代表65536選擇十進(jìn)制(選擇十進(jìn)制(BCD碼)碼)計數(shù)值范圍:計數(shù)值范圍:000099990000代表最大值代表最大值1000016位的初值需要分兩次位的初值需要分兩次計數(shù)值寫入計數(shù)器各自的計數(shù)值寫入計數(shù)器各自的I/O地址地址3. 讀取計數(shù)值讀取計數(shù)值對對8位數(shù)據(jù)線,讀取位數(shù)據(jù)線,讀取16位計數(shù)值需分兩次位計數(shù)值需分兩次計數(shù)在不斷進(jìn)行,應(yīng)該將當(dāng)

16、前計數(shù)值先行計數(shù)在不斷進(jìn)行,應(yīng)該將當(dāng)前計數(shù)值先行鎖存,然后讀?。烘i存,然后讀?。合蚩刂谱窒蚩刂谱諭/O地址:給地址:給8253寫入鎖存命令寫入鎖存命令從計數(shù)器從計數(shù)器I/O地址:讀取鎖存的計數(shù)值地址:讀取鎖存的計數(shù)值讀取計數(shù)值,要注意讀寫格式和計數(shù)數(shù)制讀取計數(shù)值,要注意讀寫格式和計數(shù)數(shù)制三、三、8253 的編程的編程命令命令 1.讀出命令:讀計數(shù)器的當(dāng)前值讀出命令:讀計數(shù)器的當(dāng)前值 2.寫命令:設(shè)控制字寫命令:設(shè)控制字 設(shè)初值設(shè)初值 送鎖存命令送鎖存命令注意注意 1.初值可為初值可為8位或位或16位,位,16位要用兩條位要用兩條 指令輸出指令輸出 2.讀當(dāng)前值必須先送鎖存命令讀當(dāng)前值必須先送鎖

17、存命令四、工作模式四、工作模式8253有有6種工作方式,由方式控制字確定種工作方式,由方式控制字確定熟悉每種工作方式的特點才能根據(jù)實際應(yīng)用問題,熟悉每種工作方式的特點才能根據(jù)實際應(yīng)用問題,選擇正確的工作方式選擇正確的工作方式每種工作方式的過程類似:每種工作方式的過程類似: 設(shè)定工作方式設(shè)定工作方式 設(shè)定計數(shù)初值設(shè)定計數(shù)初值 硬件啟動硬件啟動 計數(shù)初值進(jìn)入減計數(shù)初值進(jìn)入減1計數(shù)器計數(shù)器 每輸入一個時鐘計數(shù)器減每輸入一個時鐘計數(shù)器減1的計數(shù)過程的計數(shù)過程 計數(shù)過程結(jié)束計數(shù)過程結(jié)束方式方式0 0:計數(shù)結(jié)束中斷:計數(shù)結(jié)束中斷12435GATEOUTCLK 031244方式方式0WR1設(shè)設(shè)定定工工作作方

18、方式式2設(shè)設(shè)定定計計數(shù)數(shù)初初值值3計計數(shù)數(shù)值值送送入入計計數(shù)數(shù)器器4計計數(shù)數(shù)過過程程5計計數(shù)數(shù)結(jié)結(jié)束束方式方式0 0 “一次有效一次有效” 1)、計數(shù)器寫完計數(shù)值時,開始計數(shù),相應(yīng)的輸出信)、計數(shù)器寫完計數(shù)值時,開始計數(shù),相應(yīng)的輸出信號號OUT就開始變成低電平。當(dāng)計數(shù)器減到零時,就開始變成低電平。當(dāng)計數(shù)器減到零時,OUT立即輸出高電平。立即輸出高電平。 3)、在計數(shù)器工作期間,如果重新寫入新的計數(shù)值,計數(shù))、在計數(shù)器工作期間,如果重新寫入新的計數(shù)值,計數(shù)器將按新寫入的計數(shù)值重新工作器將按新寫入的計數(shù)值重新工作。 2)、門控信號)、門控信號GATE位高電平時,計數(shù)器工作;為低電位高電平時,計數(shù)器

19、工作;為低電平時,計數(shù)器停止工作,計數(shù)值保持不變。平時,計數(shù)器停止工作,計數(shù)值保持不變。 4)、計數(shù)結(jié)束后,如果重新寫入計數(shù)值,計數(shù)器將重新工)、計數(shù)結(jié)束后,如果重新寫入計數(shù)值,計數(shù)器將重新工作,從而可以實現(xiàn)多次輸出和循環(huán)作,從而可以實現(xiàn)多次輸出和循環(huán)。方式方式1 1:可編程(重復(fù)觸發(fā))的單穩(wěn)態(tài)觸發(fā)器:可編程(重復(fù)觸發(fā))的單穩(wěn)態(tài)觸發(fā)器設(shè)設(shè)定定工工作作方方式式設(shè)設(shè)定定計計數(shù)數(shù)初初值值硬硬件件啟啟動動計計數(shù)數(shù)值值送送入入計計數(shù)數(shù)器器計計數(shù)數(shù)過過程程計計數(shù)數(shù)結(jié)結(jié)束束GATEOUTCLK 031244方式方式1WR方式方式1 1 - -(GATEGATE信號上升沿重新計數(shù))信號上升沿重新計數(shù))情況一:

20、情況一:(1 1)寫入計數(shù)初值后,計數(shù)器并不立即開始工作;)寫入計數(shù)初值后,計數(shù)器并不立即開始工作;(2 2)門控信號)門控信號GATEGATE有效,才開始工作,使輸出有效,才開始工作,使輸出OUTOUT變成低變成低電平;電平;(3 3)直到計數(shù)器值減到零后,輸出才變高電平。)直到計數(shù)器值減到零后,輸出才變高電平。情況二:情況二: (1 1)在計數(shù)器工作期間,當(dāng))在計數(shù)器工作期間,當(dāng)GATEGATE又出現(xiàn)一個上升沿時,又出現(xiàn)一個上升沿時,計數(shù)器計數(shù)器重新裝入重新裝入原計數(shù)初值原計數(shù)初值并重新開始并重新開始計數(shù)。計數(shù)。(2 2)如果工作期間對計數(shù)器寫入新的計數(shù)初值,則要等)如果工作期間對計數(shù)器寫

21、入新的計數(shù)初值,則要等到當(dāng)前的計數(shù)值計滿回零且門控信號再次出現(xiàn)上升沿后,到當(dāng)前的計數(shù)值計滿回零且門控信號再次出現(xiàn)上升沿后,才按新寫入的計數(shù)初值開始工作。才按新寫入的計數(shù)初值開始工作。方式方式2 2:頻率發(fā)生器(分頻器):頻率發(fā)生器(分頻器)03124GATEOUTCLK 4方式方式2031240312403124WR方式方式2:頻率發(fā)生器:頻率發(fā)生器 2方式是一種具有自動裝入時間常數(shù)(計數(shù)初方式是一種具有自動裝入時間常數(shù)(計數(shù)初 值值N)的)的 N分頻器。分頻器。特點:特點:一次設(shè)置計數(shù)初值,計數(shù)器可自動重復(fù)進(jìn)行減一次設(shè)置計數(shù)初值,計數(shù)器可自動重復(fù)進(jìn)行減“1”計計數(shù)操作,減數(shù)操作,減“1”計數(shù)

22、回計數(shù)回“0”,可從輸出端輸出一負(fù)脈沖信號。,可從輸出端輸出一負(fù)脈沖信號。 門控,高電平有效,同時上升沿也有效,每一次上升沿門控,高電平有效,同時上升沿也有效,每一次上升沿都會使計數(shù)器裝入初值開始計數(shù)。都會使計數(shù)器裝入初值開始計數(shù)。 硬件同步:上升沿開始計數(shù)。硬件同步:上升沿開始計數(shù)。 軟件同步:寫入初值,下一個周期開始。軟件同步:寫入初值,下一個周期開始。方式方式3 3:方波發(fā)生器:方波發(fā)生器03124GATEOUTCLK 4方式方式3031240312403124WR方式方式3 -周期性方波輸出周期性方波輸出,工作方式與工作方式與2方式基本相同,也方式基本相同,也具有自動裝入時間常數(shù)(計數(shù)

23、初值)的功能,具有自動裝入時間常數(shù)(計數(shù)初值)的功能,不同之處在不同之處在于:于:(1)工作在)工作在3方式,引腳方式,引腳OUT輸出的不是一個時鐘周期輸出的不是一個時鐘周期的負(fù)脈沖的負(fù)脈沖 ,而是占空比為,而是占空比為1:1或近似或近似1:1的方波;當(dāng)計的方波;當(dāng)計數(shù)初值為偶數(shù)時,輸出在前一半的計數(shù)過程中為高電平,數(shù)初值為偶數(shù)時,輸出在前一半的計數(shù)過程中為高電平,在后一半的計數(shù)過程中為低電平在后一半的計數(shù)過程中為低電平,為奇數(shù)時高電平多一個為奇數(shù)時高電平多一個時鐘周期。時鐘周期。(2)由于)由于3方式輸出的波形是方波,并且具有自動重裝計方式輸出的波形是方波,并且具有自動重裝計數(shù)初值的功能,因

24、此,數(shù)初值的功能,因此,8253一旦計數(shù)開始,就會在輸出一旦計數(shù)開始,就會在輸出端端OUT輸出連續(xù)不斷的方波。輸出連續(xù)不斷的方波。方式方式4 4:軟件觸發(fā)選通信號:軟件觸發(fā)選通信號GATEOUTCLK031244方式方式4223331 0WR方式方式4 -單次負(fù)脈沖輸出(軟件觸發(fā))單次負(fù)脈沖輸出(軟件觸發(fā)) 4方式工作方式是一種由軟件啟動的計方式工作方式是一種由軟件啟動的計數(shù)方式,即由寫入計數(shù)初值來觸發(fā)計數(shù)器數(shù)方式,即由寫入計數(shù)初值來觸發(fā)計數(shù)器開始工作。門控信開始工作。門控信GATE為高電平時,允許為高電平時,允許計數(shù)器工作。計數(shù)器工作。方式方式5 5:硬件觸發(fā)選通信號:硬件觸發(fā)選通信號GAT

25、EOUTCLK031244方式方式52233311 0WR方式方式5 -單次負(fù)脈沖輸出(硬件觸發(fā))單次負(fù)脈沖輸出(硬件觸發(fā)) 5方式工作特點是由方式工作特點是由GATE上升沿觸發(fā)計數(shù)器開始上升沿觸發(fā)計數(shù)器開始工作。工作。 在在5方式工作方式下,當(dāng)寫入計數(shù)初值后,計方式工作方式下,當(dāng)寫入計數(shù)初值后,計數(shù)器并不立即開始計數(shù),數(shù)器并不立即開始計數(shù),而要由門控信號的上升而要由門控信號的上升沿啟動計數(shù)。沿啟動計數(shù)。 在計數(shù)過程中(或者計數(shù)結(jié)束后),如果門控在計數(shù)過程中(或者計數(shù)結(jié)束后),如果門控再次出現(xiàn)上升沿,計數(shù)器將從原裝入的計數(shù)初值再次出現(xiàn)上升沿,計數(shù)器將從原裝入的計數(shù)初值重新計數(shù)。重新計數(shù)。各種工

26、作方式的輸出波形比較各種工作方式的輸出波形比較方式方式 0方式方式 1方式方式 2方式方式 3方式方式 4方式方式 50N0N0N0/N110NN/2 N/2 0/N0N0 1N0 1N0 1五、應(yīng)用舉例五、應(yīng)用舉例例例1、設(shè)使用、設(shè)使用8253芯片的芯片的C/T1作為方波發(fā)生作為方波發(fā)生器器(方式方式3),要求輸出為,要求輸出為10個時鐘周期的方個時鐘周期的方波,寫出所需的命令字。波,寫出所需的命令字。設(shè)設(shè)8253的地址:的地址:0060H0066HMOV AL, 01010111BOUT 66H, ALMOV AL, 10HOUT 62H, AL例例2 計算定時常數(shù)計算定時常數(shù)要求定時要求

27、定時2ms,假設(shè),假設(shè)F1MHz,C/T0采用模式采用模式0,8253地址地址40H46H,寫出初始化程序,寫出初始化程序X=T/tc=T*F=2*(10)-3*1*1062000 MOV AL, 00110001BOUT 46H,AL;寫命令字寫命令字MOV AX, 2000H;送初值送初值OUT 40H,ALMOV AL, AHOUT 40H,AL例例3 若定時時間大于一個定時器的最大定時若定時時間大于一個定時器的最大定時時間?時間?假設(shè)假設(shè) F2MHz,tc0.5S Tmax65536*0.5 S =0.033S怎樣解決?怎樣解決?1、硬件串聯(lián)、硬件串聯(lián)2、軟件計數(shù),開辟內(nèi)存單元、軟件計

28、數(shù),開辟內(nèi)存單元CLK0 GATE0 GATE1 CLK1 OUT0 OUT1 +5V 設(shè)設(shè)CLK0 2MHz初值初值 20000,則則OUT0定時定時 0.01秒秒設(shè)設(shè)#2初值初值 100則則OUT2定時定時 1秒秒2、軟件計數(shù),開辟內(nèi)存單元、軟件計數(shù),開辟內(nèi)存單元例例4 利用利用8253提供可編程的采樣信號提供可編程的采樣信號8255APA0-PA7數(shù)據(jù)總線數(shù)據(jù)總線STBAINTRAPC4PC5INPUTREADYBUSYCONVERTA/D轉(zhuǎn)換器轉(zhuǎn)換器采樣保持采樣保持S/H模擬量輸入模擬量輸入中斷請求中斷請求來自來自8253的采樣頻率信號的采樣頻率信號 8253CLK0GATE0OUT0

29、CLK1GATE1OUT1CLK2GATE2OUT2+5v時鐘時鐘模式模式2初值初值L模式模式1初值初值M模式模式3初值初值NC/T0,時鐘頻率時鐘頻率F, 初值初值L,模式,模式2C/T1,時鐘頻率?時鐘頻率? ,初值,初值M,模式,模式1C/T2,時鐘頻率時鐘頻率F ,初值,初值N,模式,模式3分析分析OUT2CLK1OUT1GATE0OUT0頻率頻率F/N頻率頻率F/N周期周期MN/F通過手動開關(guān)通過手動開關(guān)重復(fù)觸發(fā)重復(fù)觸發(fā)每次采樣時間每次采樣時間MN/F采樣頻率為采樣頻率為F/L系統(tǒng)的初始化程序系統(tǒng)的初始化程序設(shè)設(shè)8253的地址為的地址為0070H0076H,三個計數(shù),三個計數(shù)器的初始

30、值分別為:器的初始值分別為:LCNT,MCNT,NCNT,其中,其中L、N為二進(jìn)制數(shù)且小于為二進(jìn)制數(shù)且小于256,M為為BCD碼。設(shè)置計數(shù)器模式和初值。碼。設(shè)置計數(shù)器模式和初值。MOV AL, 14H;OUT 76H, AL; 計數(shù)器計數(shù)器0設(shè)為模式設(shè)為模式2MOV AL, LCNT;OUT 70H, AL; 計數(shù)器計數(shù)器0送初值(二進(jìn)制)送初值(二進(jìn)制)MOV AL, 73H;OUT 76H, AL; 計數(shù)器計數(shù)器1設(shè)為模式設(shè)為模式1MOV AX, MCNT;OUT 72H, AL;MOV AL, AH;OUT 72H, AL; 計數(shù)器計數(shù)器1設(shè)初值,分兩次送設(shè)初值,分兩次送MOV AL,

31、96H;OUT 76H, AL; 計數(shù)器計數(shù)器2設(shè)為模式設(shè)為模式3MOV AL, NCNT;OUT 74H, AL; 計數(shù)器計數(shù)器2設(shè)初值設(shè)初值例例5 5 如圖所示,如圖所示,80888088系統(tǒng)中包含一片系統(tǒng)中包含一片82538253芯片,地址為芯片,地址為0FFAH0FFDH0FFAH0FFDH,編寫初始化程序完成如下功能:,編寫初始化程序完成如下功能:1 1)計數(shù)器)計數(shù)器0 0完成對外部事件計數(shù)功能,計滿完成對外部事件計數(shù)功能,計滿100100次向次向CPUCPU發(fā)出發(fā)出中斷;中斷;2 2)計數(shù)器)計數(shù)器1 1輸入輸入2.5MHz2.5MHz方波脈沖,產(chǎn)生頻率為方波脈沖,產(chǎn)生頻率為1K

32、Hz1KHz的方波;的方波;3 3)計數(shù)器)計數(shù)器2 2輸出標(biāo)準(zhǔn)秒脈沖時鐘。輸出標(biāo)準(zhǔn)秒脈沖時鐘。D7-D0CSA0A1RDWR8253CLK0CLK1CLK2GATE0GATE1GATE2OUT0OUT1OUT2外部計事外部計事2.5MHz2.5MHz1KHz1KHz秒秒INTRINTR計數(shù)器計數(shù)器0 0:方式:方式0 0,00010000B00010000B初值:初值: 100100計數(shù)器計數(shù)器1 1:方式:方式3 3,01110110B01110110B初值:初值: 2.5M/1K=25002.5M/1K=2500計數(shù)器計數(shù)器2 2:方式:方式2 2,10110101B10110101B初

33、值:初值: 1000/1=10001000/1=1000MOV DX, 0FFDHMOV AL, 10HOUT DX, AL; 初始化計數(shù)器初始化計數(shù)器0MOV DX, 0FFAHMOV AL, 100; 計數(shù)值計數(shù)值100OUT DX, ALMOV DX, 0FFDHMOV AL, 76HOUT DX, AL; 初始化計數(shù)器初始化計數(shù)器1為方式為方式3MOV DX, 0FFBHMOV AX, 2500OUT DX, AL; 計數(shù)值低計數(shù)值低8位位MOV AL, AHOUT DX, AL; 計數(shù)值高計數(shù)值高8位位MOV DX, 0FFDHMOV AL, 0B5HOUT DX, AL; 初始化計

34、數(shù)器初始化計數(shù)器2,方式,方式2,BCD碼碼MOV DX, 0FFCHMOV AL, 00HOUT DX, AL; 計數(shù)值計數(shù)值1000的低的低8位位MOV AL, 10HOUT DX, AL; 計數(shù)值計數(shù)值1000的高的高8位位例例6 6 如圖所示,一生產(chǎn)線,每通過如圖所示,一生產(chǎn)線,每通過5050個工件,揚個工件,揚聲器響聲器響5 5秒,頻率為秒,頻率為2000Hz2000Hz。設(shè)。設(shè)82538253地址為地址為40H43H40H43H, 8255 A8255 A口地址口地址80H80H。計數(shù)器計數(shù)器0 0,計數(shù)值,計數(shù)值5050,控制字,控制字00010101B00010101B計數(shù)器計

35、數(shù)器1 1,驅(qū)動揚聲器,輸入,驅(qū)動揚聲器,輸入2.5MHz2.5MHz,產(chǎn)生,產(chǎn)生2000Hz2000Hz頻率,計數(shù)值頻率,計數(shù)值2.5M/2000=1250,2.5M/2000=1250,控制字控制字01110111B01110111B8255 PA08255 PA0高電平啟動揚聲器高電平啟動揚聲器8253CLK0CLK1+5VGATE0GATE1OUT1OUT0驅(qū)動INT2.5MHz8255A0+5V揚聲器光敏電阻工件移動方向光源主程序:主程序:MOV AL, 15H;OUT 43H, AL ; #0方式字方式字MOV AL, 50H;OUT 40H, AL; #0初值初值MOV AL, 77H;

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論