單片機(jī)原理與接口技術(shù)6_第1頁
單片機(jī)原理與接口技術(shù)6_第2頁
單片機(jī)原理與接口技術(shù)6_第3頁
單片機(jī)原理與接口技術(shù)6_第4頁
單片機(jī)原理與接口技術(shù)6_第5頁
已閱讀5頁,還剩86頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第六章第六章 定時(shí)器及應(yīng)用定時(shí)器及應(yīng)用l6.1 6.1 定時(shí)器概述定時(shí)器概述l6.2 6.2 定時(shí)器的控制定時(shí)器的控制 l6.3 6.3 定時(shí)器的四種模式及應(yīng)用定時(shí)器的四種模式及應(yīng)用 6.1 6.1 定時(shí)器概述定時(shí)器概述 6.1.1 89C516.1.1 89C51定時(shí)器結(jié)構(gòu)定時(shí)器結(jié)構(gòu)6.1.2 89C516.1.2 89C51定時(shí)器功能定時(shí)器功能6.1.1 89C516.1.1 89C51定時(shí)器結(jié)構(gòu)定時(shí)器結(jié)構(gòu)l有兩個(gè)有兩個(gè)1616位的定時(shí)器位的定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器: :定時(shí)器定時(shí)器0 0(T0T0)定時(shí)器定時(shí)器1 1(T1T1)。)。l都是都是1616位加位加1 1計(jì)數(shù)器。計(jì)數(shù)器。lT0

2、T0由兩個(gè)由兩個(gè)8 8位特殊功能寄存器位特殊功能寄存器TH0TH0和和TL0TL0構(gòu)成;構(gòu)成;lT1T1由由TH1TH1和和TL1TL1構(gòu)成。構(gòu)成。l如圖如圖6.1.1 89C516.1.1 89C51定時(shí)器結(jié)構(gòu)定時(shí)器結(jié)構(gòu)6.1.2 89C516.1.2 89C51定時(shí)器功能定時(shí)器功能l每個(gè)定時(shí)器都可由軟件設(shè)置為每個(gè)定時(shí)器都可由軟件設(shè)置為 定時(shí)工作定時(shí)工作方式方式或計(jì)數(shù)工作方式。或計(jì)數(shù)工作方式。l定時(shí)器工作不占用定時(shí)器工作不占用CPUCPU時(shí)間,除非定時(shí)器時(shí)間,除非定時(shí)器/ /計(jì)數(shù)器溢出,才能中斷計(jì)數(shù)器溢出,才能中斷CPUCPU的當(dāng)前操作。的當(dāng)前操作。l每個(gè)定時(shí)器每個(gè)定時(shí)器/ /計(jì)數(shù)器有四種工

3、作模式。計(jì)數(shù)器有四種工作模式。模式模式0-30-3定時(shí)工作方式簡介:定時(shí)工作方式簡介:p 定時(shí)脈沖為單片機(jī)片內(nèi)振蕩器輸出經(jīng)定時(shí)脈沖為單片機(jī)片內(nèi)振蕩器輸出經(jīng)1212 分頻后的脈沖,分頻后的脈沖,p 即每個(gè)機(jī)器周期使定時(shí)器(即每個(gè)機(jī)器周期使定時(shí)器(T0T0或或T1T1)的)的 數(shù)值加數(shù)值加1 1直至計(jì)滿溢出。直至計(jì)滿溢出。當(dāng)采用當(dāng)采用12MHz晶振時(shí),一個(gè)機(jī)器周期為晶振時(shí),一個(gè)機(jī)器周期為1s,計(jì)數(shù)頻率為,計(jì)數(shù)頻率為1MHz。計(jì)數(shù)工作方式簡介:計(jì)數(shù)工作方式簡介:p通過引腳通過引腳P3.4 ( T0 )和)和P3.5 ( T1 )對外)對外部脈沖信號計(jì)數(shù)。部脈沖信號計(jì)數(shù)。p當(dāng)輸入脈沖信號產(chǎn)生由當(dāng)輸入脈

4、沖信號產(chǎn)生由1至至0的的下降沿下降沿時(shí)定時(shí)時(shí)定時(shí)器的值加器的值加1。pCPU檢測一個(gè)檢測一個(gè)1至至0的跳變需要兩個(gè)機(jī)器周期,的跳變需要兩個(gè)機(jī)器周期,故最高計(jì)數(shù)頻率為振蕩頻率的故最高計(jì)數(shù)頻率為振蕩頻率的1/24。p為了確保某個(gè)電平在變化之前被采樣一次,為了確保某個(gè)電平在變化之前被采樣一次,要求電平保持時(shí)間至少是一個(gè)完整的機(jī)器周要求電平保持時(shí)間至少是一個(gè)完整的機(jī)器周期。期。圖圖6.2 定時(shí)器的控制定時(shí)器的控制 l6.2.1 工作模式寄存器工作模式寄存器 TMODl6.2.2 控制器寄存器控制器寄存器 TCON6.2.1 6.2.1 工作模式寄存器工作模式寄存器 TMODTMODlTMODTMOD用

5、于控制用于控制T0T0和和T1T1的工作模式。的工作模式。lTMODTMOD不能位尋址,只能用字節(jié)設(shè)置定時(shí)器不能位尋址,只能用字節(jié)設(shè)置定時(shí)器的工作模式,低半字節(jié)設(shè)置的工作模式,低半字節(jié)設(shè)置T0T0,高半字節(jié)設(shè),高半字節(jié)設(shè)置置T1T1。l系統(tǒng)復(fù)位時(shí),系統(tǒng)復(fù)位時(shí),TMODTMOD的所有位被清的所有位被清0 0。lTMODTMOD各位的定義格式如圖所示:各位的定義格式如圖所示:GATE C/ T M1 M0 GATEM1C/ TM0定時(shí)器定時(shí)器T1定時(shí)器定時(shí)器T0TMOD(89H) D7 D6 D5 D4 D3 D2 D1 D0圖圖 工作模式寄存器工作模式寄存器TMOD的位定義的位定義TMOD各位的

6、功能各位的功能 M1M1和和M0M0操作模式控制位。操作模式控制位。 兩位可形成四種編碼,對應(yīng)于四種兩位可形成四種編碼,對應(yīng)于四種模式。見模式。見 表表6-16-1。表表6-1 M1,M0控制的四種工作模式控制的四種工作模式M1 M0工工 作作 模模 式式功功 能能 描描 述述0 0模模 式式013位位 計(jì)計(jì) 數(shù)數(shù) 器器0 1模模 式式116位位 計(jì)計(jì) 數(shù)數(shù) 器器1 0模模 式式2自自 動(dòng)動(dòng) 再再 裝裝 入入8位位 計(jì)計(jì) 數(shù)數(shù) 器器1 1模模 式式3定定 時(shí)時(shí) 器器0: 分分 成成 二二 個(gè)個(gè)8位位 計(jì)計(jì) 數(shù)數(shù) 器器 定定 時(shí)時(shí) 器器1: 停停 止止 計(jì)計(jì) 數(shù)數(shù) C/T C/T計(jì)數(shù)器計(jì)數(shù)器/

7、/定時(shí)器方式選擇位。定時(shí)器方式選擇位。 C/T=0C/T=0,設(shè)置為,設(shè)置為定時(shí)方式定時(shí)方式。定時(shí)器計(jì)數(shù)。定時(shí)器計(jì)數(shù)80518051片內(nèi)脈沖,即對機(jī)器周期計(jì)片內(nèi)脈沖,即對機(jī)器周期計(jì)數(shù)。數(shù)。 C/T=1C/T=1,設(shè)置為,設(shè)置為計(jì)數(shù)方式計(jì)數(shù)方式。計(jì)數(shù)器的輸入。計(jì)數(shù)器的輸入來自來自T0T0(P3.4P3.4)或)或T1T1(P3.5P3.5)端)端的外部脈沖的外部脈沖 。 TMODTMOD各位的功能各位的功能 GATE GATE門控位。門控位。 GATE=0GATE=0,只要用軟件使只要用軟件使TR0TR0(或(或TR1TR1)置)置1 1就可以就可以啟動(dòng)定時(shí)器,而不管啟動(dòng)定時(shí)器,而不管INT0I

8、NT0(或(或INT1INT1)的)的電平是高還是低。電平是高還是低。 GATE=1GATE=1,只有只有INT0INT0(或(或INT1INT1)引腳為高電平且由)引腳為高電平且由軟件使軟件使TR0TR0(或(或TR1TR1)置)置1 1時(shí),才能啟動(dòng)時(shí),才能啟動(dòng)定時(shí)器工作。定時(shí)器工作。TMODTMOD各位的功能各位的功能6.2.2 控制器寄存器控制器寄存器 TCONlTCONTCON可位尋址可位尋址。l系統(tǒng)復(fù)位時(shí),系統(tǒng)復(fù)位時(shí),TCONTCON的所有位被清的所有位被清0 0。 lTCONTCON各位的定義格式如圖所示。各位的定義格式如圖所示。TF1 TR1 TF0TR0 IE1IE0IT1IT

9、0TCON(88H) 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H圖圖 控制寄存器控制寄存器TCON的位定義的位定義TCON各位的功能各位的功能 TF1 TF1(TCON.7) TCON.7) T1T1溢出標(biāo)志位。溢出標(biāo)志位。 當(dāng)當(dāng)T1T1溢出溢出時(shí),由硬件自動(dòng)使中斷觸發(fā)器時(shí),由硬件自動(dòng)使中斷觸發(fā)器TF1TF1置置1 1,并,并CPUCPU申請中斷。申請中斷。 當(dāng)當(dāng)CPUCPU響應(yīng)中斷進(jìn)入中斷服務(wù)程序后響應(yīng)中斷進(jìn)入中斷服務(wù)程序后,TF1TF1由被硬件由被硬件自動(dòng)清自動(dòng)清0 0。TF1TF1也可以用也可以用軟件清軟件清0 0。 TF0 TF0 (TCON.5)TCON.5)T0

10、T0溢出標(biāo)志位。溢出標(biāo)志位。 其功能和操作情況同其功能和操作情況同TF1TF1。 TR1(TCON.6)T1TR1(TCON.6)T1運(yùn)行控制位。運(yùn)行控制位。 可通過軟件置可通過軟件置1 1(TR1=1TR1=1)或清)或清0 0(TR1=0TR1=0)來)來啟啟動(dòng)動(dòng)或或 關(guān)閉關(guān)閉 T1T1。 在程序中用指令在程序中用指令“SETB TR1SETB TR1”使使TR1TR1位置位置1 1,定時(shí)器定時(shí)器T1T1便開始計(jì)數(shù)。便開始計(jì)數(shù)。 TR0(TCON.4)T0 TR0(TCON.4)T0運(yùn)行控制位。運(yùn)行控制位。 其功能和操作情況同其功能和操作情況同TR1TR1。TCON各位的功能各位的功能 I

11、E1IE1,IT1IT1,IE0IE0,IT0(TCON.3IT0(TCON.3TCON.0)TCON.0)外部中斷外部中斷INT1INT1,INT0INT0請求請求及請求方式控制位。前一章已經(jīng)講過。及請求方式控制位。前一章已經(jīng)講過。TCONTCON各位的功能各位的功能6.3 定時(shí)器的四種模式及應(yīng)用定時(shí)器的四種模式及應(yīng)用 16.3.1 模式模式 0 及其應(yīng)用及其應(yīng)用16.3.2 模式模式 1 及其應(yīng)用及其應(yīng)用16.3.3 模式模式 2 及其應(yīng)用及其應(yīng)用16.3.4 模式模式 3 及其應(yīng)用及其應(yīng)用16.3.5 綜合應(yīng)用舉例綜合應(yīng)用舉例6.3.1 模式模式 0 及其應(yīng)用及其應(yīng)用4一、模式一、模式

12、0 0 工作特點(diǎn)工作特點(diǎn)4二、模式二、模式 0 0 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)4三、模式三、模式 0 0 的應(yīng)用舉例的應(yīng)用舉例一、模式一、模式 0 0 工作特點(diǎn)工作特點(diǎn)l T0T0、T1T1為為3 3位計(jì)數(shù)器。位計(jì)數(shù)器。TH0TH0的的8 8位和位和TL0TL0的低的低5 5位位THTH的的8 8位和位和TL1TL1的低的低5 5位位以下以以下以0 0說明:說明:TH0TL0D7D6D5D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0D12D11D10D9 D8 D7 D6 D5/D4 D3 D2 D1 D0lTH0TH0溢出時(shí),向中斷標(biāo)志溢出時(shí),向中斷標(biāo)志TF0

13、TF0進(jìn)位(硬件進(jìn)位(硬件置位置位TF0TF0),并申請中斷。),并申請中斷。lT0是否溢出可查詢是否溢出可查詢TF0是否被置位,以產(chǎn)是否被置位,以產(chǎn)生生T0中斷。中斷。 l定時(shí)時(shí)間為:定時(shí)時(shí)間為: t=(2t=(21313T0T0初值初值) )振蕩周期振蕩周期1212二、模式二、模式 0 0 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)l如圖如圖二、模式二、模式 0 0 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)二、模式二、模式 0 0 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)pC/T=0時(shí)時(shí):控制開關(guān)接通振蕩器控制開關(guān)接通振蕩器1212分頻輸出端,分頻輸出端,T0T0對機(jī)器對機(jī)器周期計(jì)數(shù)。周期計(jì)數(shù)。 這是定時(shí)工作方式。這是定時(shí)工作

14、方式。其定時(shí)時(shí)間其定時(shí)時(shí)間為:為: t t=(2=(21313-T0-T0初值初值) )振蕩周期振蕩周期1212 pC/T=l時(shí)時(shí):控制開關(guān)使引腳控制開關(guān)使引腳T0(P3.4)T0(P3.4)與與1313位計(jì)數(shù)器相連,位計(jì)數(shù)器相連, 外部計(jì)數(shù)脈沖由引腳外部計(jì)數(shù)脈沖由引腳T0(P3.4)T0(P3.4)輸入,輸入, 當(dāng)外部信號電平發(fā)生由當(dāng)外部信號電平發(fā)生由1 1到到0 0跳變時(shí),計(jì)數(shù)器加跳變時(shí),計(jì)數(shù)器加1 1。 這時(shí),這時(shí),T0T0成為外部事件計(jì)數(shù)器成為外部事件計(jì)數(shù)器。這就是計(jì)數(shù)工。這就是計(jì)數(shù)工作方式。作方式。 二、模式二、模式 0 0 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)pGATE=O時(shí),時(shí), 或門輸

15、出A點(diǎn)電位保持為1,“或”門被封鎖。于是,引腳INTO輸入信號無效。這時(shí),“或”門輸出的l打開“與”門。B點(diǎn)電位取決于TRO的狀態(tài), 于是,由TRO一位就可控制計(jì)數(shù)開關(guān)K,開啟或關(guān)斷TO。若軟件使TRO置1便接通計(jì)數(shù)開關(guān)K,啟動(dòng)TO在原上加1計(jì)數(shù),直至溢出。 溢出時(shí),13位寄存器清O,TF0置位,并申請中斷,TO從0重新開始計(jì)數(shù)。 若TRO=0,則關(guān)斷計(jì)數(shù)開關(guān)K,停止計(jì)數(shù)。 二、模式二、模式 0 0 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)pGATE=l時(shí)時(shí) A點(diǎn)電位取決于點(diǎn)電位取決于INT0(P3.2)引腳的輸入電平。引腳的輸入電平。 僅當(dāng)僅當(dāng)INT0輸入高電平,且輸入高電平,且TR0=1時(shí),時(shí),B點(diǎn)才

16、點(diǎn)才是高電平,計(jì)數(shù)開關(guān)是高電平,計(jì)數(shù)開關(guān)K閉合,閉合,T0開始計(jì)數(shù)。開始計(jì)數(shù)。 當(dāng)當(dāng)INT0由由1變變0時(shí),時(shí),T0停止計(jì)數(shù)。停止計(jì)數(shù)。 這一特性這一特性可以用來測量在可以用來測量在INT0端出現(xiàn)的正脈沖的寬度。端出現(xiàn)的正脈沖的寬度。 三、模式三、模式 0 0 的應(yīng)用舉例的應(yīng)用舉例l例例6-16-1:設(shè)定時(shí)器:設(shè)定時(shí)器T0T0選擇工作模式選擇工作模式0 0,定時(shí)時(shí)間為定時(shí)時(shí)間為1ms1ms,foscfosc=6MHz=6MHz。試確。試確定定T0T0初值,計(jì)算最大定時(shí)時(shí)間初值,計(jì)算最大定時(shí)時(shí)間T T。解:解:模式模式0,13位計(jì)數(shù)器。位計(jì)數(shù)器。(1)試確定試確定T0T0初值初值X (213X)

17、1/6 10-612=110-3 s X=7692D =1 1110 0000 1100B1E0CH T0的低的低5位:位:01100B=0CH即即(TL0)=0CH T0的高的高8位:位:11110000B=F0H即即(TH0)=F0H(2)計(jì)算最大定時(shí)時(shí)間計(jì)算最大定時(shí)時(shí)間T T T0的最大定時(shí)時(shí)間對應(yīng)于的最大定時(shí)時(shí)間對應(yīng)于13位計(jì)數(shù)器位計(jì)數(shù)器T0的各的各位全為位全為1,即,即(TL0)=1FH,(TH0)=FFH. T=(213-0)1/6 10-612=16.384ms例例6-26-2:上例中,定時(shí)時(shí)間上例中,定時(shí)時(shí)間1ms,1ms,編程。在編程。在P1.0P1.0的引腳上產(chǎn)生輸出周期為

18、的引腳上產(chǎn)生輸出周期為2ms2ms的方波。的方波。設(shè)設(shè)T0T0工作在模式工作在模式0 0,定時(shí)時(shí)間為,定時(shí)時(shí)間為1ms1ms,定時(shí)時(shí)間,定時(shí)時(shí)間到,到,P1.0P1.0取反。取反。 解:解:(1)計(jì)算)計(jì)算T0初值初值X 計(jì)算步驟見例計(jì)算步驟見例6-1。 結(jié)果:結(jié)果:(TH0)=0F0H,(TL0)=0CH。例例6-26-2(2)程序清單:)程序清單: 初始化引導(dǎo)程序初始化引導(dǎo)程序 ORG 0000HRESET: AJMP MAIN ; 跳過中斷服務(wù)程序區(qū)跳過中斷服務(wù)程序區(qū) ORG 000BH ;中斷服務(wù)程序入口;中斷服務(wù)程序入口 AJMP ITOP例例6-26-2主程序:ORG 0100H

19、MAIN: MOV SP,#60H ;設(shè)堆棧指針;設(shè)堆棧指針 ACALL PTOMD HERE: AJMP HERE ;等待;等待PTOMD: MOV TMOD,#00H;選擇工作模式;選擇工作模式 MOV TL0,#0CH;送初值;送初值 MOV TH0,#0F0H SETB TR0 ;啟動(dòng)定時(shí);啟動(dòng)定時(shí) SETB ET0 ;T0開中斷開中斷 SETB EA ;CPU開中斷開中斷 RET例例6-26-2中斷服務(wù)程序中斷服務(wù)程序 ORG 0120H ITOP: MOV TL0,#0CH ;重新裝如初值;重新裝如初值 MOV TH0,#0F0H CPL P1.0 ;P1.0取反取反 RETI例例

20、6-36-3利用利用T0T0的工作模式的工作模式0 0產(chǎn)生產(chǎn)生1ms1ms定時(shí),在定時(shí),在P1.0P1.0引腳輸出周期為引腳輸出周期為2ms2ms的方波。的方波。設(shè)單片機(jī)晶振頻率設(shè)單片機(jī)晶振頻率foscfosc=12MHz=12MHz。編。編程實(shí)現(xiàn)其功能。程實(shí)現(xiàn)其功能。例例6-36-3解:解: 要在要在P1.0P1.0引腳輸出周期為引腳輸出周期為2ms2ms的方波,只要使的方波,只要使P1.0P1.0每隔每隔1ms1ms取反一次即可。取反一次即可。 (1 1)選擇工作模式)選擇工作模式 T0T0的模式字為的模式字為TMOD=00HTMOD=00H,即,即 M1M0=00M1M0=00,C/T=

21、0C/T=0,GATE=0GATE=0,其余位為,其余位為0 0。(2)計(jì)算)計(jì)算1ms定時(shí)時(shí)定時(shí)時(shí)T0的初值的初值 (213X)1/12 10-612=110-3 s X=7193D=11100000 11000B T0的低的低5位:位:11000B=18H即即 (TL0)=18H T0的高的高8位:位:11100000B=E0H即即 (TH0)=E0H 例例6-3例例6-36-3(3)采用查詢方式的程序清單MOV TMOD,#00H ;設(shè)置;設(shè)置T0為模式為模式0 MOV TL0,#18H ;送初值;送初值 MOV TH0,#0E0H SETB TR0 ;啟動(dòng)定時(shí);啟動(dòng)定時(shí) LOOP:JB

22、C TF0,NEXT ;查詢定時(shí)時(shí)間到否;查詢定時(shí)時(shí)間到否 SJMP LOOP NEXT:MOV TL0,#18H ;重裝計(jì)數(shù)初值;重裝計(jì)數(shù)初值 MOV TH0,#0E0H CPL P1.0 ;取反;取反 SJMP LOOP ;重復(fù)循環(huán);重復(fù)循環(huán)例例6-36-3(4)采用定時(shí)器溢出中斷方式的程序主程序主程序 ORG 0000H RESET: AJMP MAIN ; 跳過中斷服務(wù)程序區(qū)跳過中斷服務(wù)程序區(qū) ORG 0030H MAIN: MOV TMOD,#00H ;設(shè)置;設(shè)置T0為模式為模式0 MOV TL0,#18H ;送初值;送初值 MOV TH0,#0E0H SETB EA ;CPU開中斷

23、開中斷 SETB ET0 ;T0中斷允許中斷允許 SETB TR0 ;啟動(dòng)定時(shí);啟動(dòng)定時(shí) HERE:SJMP HERE ;等待中斷,虛擬主程序;等待中斷,虛擬主程序例例6-36-3中斷服務(wù)程序中斷服務(wù)程序 ORG 000BH AJMP CTC0 ORG 0120H CTC0: MOV TL0,#18H ;重新裝如初值;重新裝如初值 MOV TH0,#0E0H CPL P1.0 ;P1.0取反取反 RETI6.3.2 模式模式 1 及其應(yīng)用及其應(yīng)用一、模式一、模式 1 1 工作特點(diǎn)工作特點(diǎn)二、模式二、模式 1 1 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)三、模式三、模式1 1 的應(yīng)用舉例的應(yīng)用舉例一、模式一

24、、模式 1 1 工作特點(diǎn)工作特點(diǎn)l該模式對應(yīng)的是一個(gè)該模式對應(yīng)的是一個(gè)1616位的定時(shí)器位的定時(shí)器/ /計(jì)數(shù)計(jì)數(shù)器器。l用于定時(shí)工作方式時(shí),定時(shí)時(shí)間為:用于定時(shí)工作方式時(shí),定時(shí)時(shí)間為: t=(2t=(21616初值初值) )振蕩周期振蕩周期1212l用于計(jì)數(shù)工作方式時(shí),計(jì)數(shù)長度最大為:用于計(jì)數(shù)工作方式時(shí),計(jì)數(shù)長度最大為: 2 21616=65536=65536(個(gè)外部脈沖)(個(gè)外部脈沖)二、模式二、模式 1 1 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu) 圖圖6-86-8二、模式二、模式 1 1 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)三、模式三、模式 1 1 的應(yīng)用舉例的應(yīng)用舉例l例例6-46-4:用定時(shí)器用定時(shí)器T

25、1T1產(chǎn)生一個(gè)產(chǎn)生一個(gè)50Hz50Hz的方波,的方波,由由 P1.1P1.1輸出,使用程序查詢方式,輸出,使用程序查詢方式,foscfosc=12MHz=12MHz。(例(例6-46-4)解:解: 方波周期方波周期T=1/50=0.02s =20msT=1/50=0.02s =20ms 用用T1T1定時(shí)定時(shí)10ms10ms 計(jì)數(shù)初值計(jì)數(shù)初值X X為:為: 10 10 1000us=(21000us=(21616-X) -X) (1/12) (1/12) 12us12us X=2X=21616121210101000/121000/12 =65536 =6553610000=55536=D8F0

26、H10000=55536=D8F0H(例(例6-46-4)源程序清單:源程序清單: MOV TMOD,#10H ;設(shè)置;設(shè)置T1為模式為模式1 SETB TR1 ;啟動(dòng)定時(shí);啟動(dòng)定時(shí)LOOP: MOV TL1,#0D8H ;送初值;送初值 MOV TH1,#0F0H JNB TF1,$ ;查詢定時(shí)時(shí)間到否;查詢定時(shí)時(shí)間到否 CLR TF1 ;產(chǎn)生溢出,清標(biāo)志位產(chǎn)生溢出,清標(biāo)志位 CPL P1.1 ;取反;取反 SJMP LOOP ;重復(fù)循環(huán);重復(fù)循環(huán)6.3.3 模式模式 2 及其應(yīng)用及其應(yīng)用一、模式一、模式 2 2 工作特點(diǎn)工作特點(diǎn)二、模式二、模式 2 2 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)三、模式

27、三、模式 2 2 的應(yīng)用舉例的應(yīng)用舉例一、模式一、模式 2 2 工作特點(diǎn)工作特點(diǎn)l把把TL0(TL1)TL0(TL1)配置成一個(gè)可以自動(dòng)重裝載的配置成一個(gè)可以自動(dòng)重裝載的8 8位定時(shí)器位定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器l在程序初始化時(shí),在程序初始化時(shí),TL0TL0和和TH0TH0由軟件賦予相由軟件賦予相同的初值。同的初值。l用于定時(shí)工作方式時(shí),定時(shí)時(shí)間為:用于定時(shí)工作方式時(shí),定時(shí)時(shí)間為:t=(2t=(28 8TH0TH0初值初值) )振蕩周期振蕩周期1212l用于計(jì)數(shù)工作方式時(shí),計(jì)數(shù)長度最大為:用于計(jì)數(shù)工作方式時(shí),計(jì)數(shù)長度最大為:2 28 8=256=256(個(gè)外部脈沖)(個(gè)外部脈沖)一、模式一、模式

28、 2 2 工作特點(diǎn)工作特點(diǎn)l該模式可省去軟件中重裝常數(shù)的語句,并可該模式可省去軟件中重裝常數(shù)的語句,并可產(chǎn)生相當(dāng)精確的定時(shí)時(shí)間,適合于作串行口產(chǎn)生相當(dāng)精確的定時(shí)時(shí)間,適合于作串行口波特率發(fā)生器。波特率發(fā)生器。lTL0TL0計(jì)數(shù)溢出時(shí),不僅使溢出中斷標(biāo)志位計(jì)數(shù)溢出時(shí),不僅使溢出中斷標(biāo)志位TF0TF0置置1 1,而且還自動(dòng)把,而且還自動(dòng)把TH0TH0中的內(nèi)容重新中的內(nèi)容重新裝載到裝載到TL0TL0中。中。lTL0TL0用作用作8 8位計(jì)數(shù)器,位計(jì)數(shù)器,TH0TH0用以保存初值。用以保存初值。二、模式二、模式 2 2 的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)l如圖如圖三、模式三、模式 2 2 的應(yīng)用舉例的應(yīng)用舉

29、例l例例6-56-5:當(dāng)當(dāng)P3.4P3.4引腳上的電平發(fā)生負(fù)跳變時(shí),引腳上的電平發(fā)生負(fù)跳變時(shí), 從從P1.0P1.0輸出輸出一個(gè)一個(gè)500s500s的同步脈沖。的同步脈沖。請編請編程序?qū)崿F(xiàn)該功能。查詢方式,程序?qū)崿F(xiàn)該功能。查詢方式,foscfosc=6MHz=6MHz。(例(例6-56-5)解:解:(1 1)模式選擇)模式選擇 選選T0T0為模式為模式2 2,外部事件計(jì)數(shù)方式。,外部事件計(jì)數(shù)方式。當(dāng)當(dāng)P3.4P3.4引腳上的電平發(fā)生負(fù)跳變時(shí),引腳上的電平發(fā)生負(fù)跳變時(shí),T0T0計(jì)計(jì)數(shù)器加數(shù)器加1 1,溢出標(biāo)志,溢出標(biāo)志TF0TF0置置1 1;然后改變?nèi)缓蟾淖僒0T0為為500s500s定時(shí)工作方

30、式,并使定時(shí)工作方式,并使P1.0P1.0輸出由輸出由1 1變?yōu)樽優(yōu)? 0。T0T0定時(shí)到產(chǎn)生溢出,定時(shí)到產(chǎn)生溢出,使使P1.0P1.0輸出恢復(fù)高電平,輸出恢復(fù)高電平,T0T0又恢復(fù)外部事又恢復(fù)外部事件計(jì)數(shù)方式。件計(jì)數(shù)方式。 如如圖圖所示。所示。(例(例6-56-5)(2 2)計(jì)算初值)計(jì)算初值l T0T0工作在外部事件計(jì)數(shù)方式工作在外部事件計(jì)數(shù)方式,當(dāng)計(jì)數(shù)到,當(dāng)計(jì)數(shù)到2 28 8時(shí),時(shí),計(jì)數(shù)器就會(huì)溢出。設(shè)計(jì)數(shù)初值為計(jì)數(shù)器就會(huì)溢出。設(shè)計(jì)數(shù)初值為X X,當(dāng)再出現(xiàn)一次,當(dāng)再出現(xiàn)一次外部事件時(shí),計(jì)數(shù)器溢出。外部事件時(shí),計(jì)數(shù)器溢出。 則則: X+1=2: X+1=28 8 X= 2X= 28 8 1=

31、11111111B=0FFH1=11111111B=0FFHl T0T0工作在定時(shí)工作方式工作在定時(shí)工作方式,晶振頻率為,晶振頻率為6MHz6MHz,500s500s相當(dāng)于相當(dāng)于250250個(gè)機(jī)器周期。因此,初值個(gè)機(jī)器周期。因此,初值X X為為 (2 (28 8X)X)2s=500s2s=500s X=6=06HX=6=06H(例(例6-56-5)(3 3)程序清單)程序清單START: MOV TMOD,#06H ;置;置T0為模式為模式2,計(jì)數(shù)方式計(jì)數(shù)方式 MOV TL0,#0FFH ;T0計(jì)數(shù)器初值計(jì)數(shù)器初值 MOV TH0,#0FFH SETB TR0 ;啟動(dòng);啟動(dòng)T0計(jì)數(shù)計(jì)數(shù) LOO

32、P1:JBC TF0,PTFO1 ;查詢;查詢T0溢出標(biāo)志,溢出標(biāo)志,;TF0=1時(shí)轉(zhuǎn),且清時(shí)轉(zhuǎn),且清TF0=0 SJMP LOOP1 ;PTFO1:CLR TR0 ;停止計(jì)數(shù);停止計(jì)數(shù) MOV TMOD,#02H ;置;置T0為模式為模式2,定時(shí)方式,定時(shí)方式 MOV TL0,#06H ;送初值,定時(shí);送初值,定時(shí)500s MOV TH0,#06H(例(例6-56-5)CLR P1.0 ; P1.0清清0 SETB TR0 ;啟動(dòng)定時(shí);啟動(dòng)定時(shí)500s LOOP2 : JBC TF0,PTFO2 ;查詢;查詢T0溢出標(biāo)志,溢出標(biāo)志, ;TF0=1時(shí)轉(zhuǎn),且清時(shí)轉(zhuǎn),且清TF0=0 ; (第一個(gè)(

33、第一個(gè)500s到否?)到否?) SJMP LOOP2 PTFO2 : SETB P1.0 ; P1.0置置1 CLR TR0 ;停止計(jì)數(shù);停止計(jì)數(shù) SJMP STARTl例例6-66-6:利用定時(shí)器利用定時(shí)器T1T1的模式的模式2 2對外部信對外部信號計(jì)數(shù)。要求每計(jì)滿號計(jì)數(shù)。要求每計(jì)滿100100次,將次,將 P1.0P1.0端取反。端取反。(例(例6-66-6)解:解:(1)選擇模式)選擇模式 外部信號由外部信號由T1(P3.5)引腳輸入,每發(fā)生一次負(fù))引腳輸入,每發(fā)生一次負(fù)跳變計(jì)數(shù)器加跳變計(jì)數(shù)器加1,每輸入,每輸入100個(gè)脈沖,計(jì)數(shù)器發(fā)生個(gè)脈沖,計(jì)數(shù)器發(fā)生溢出中斷,中斷服務(wù)程序?qū)⒁绯鲋袛啵?/p>

34、中斷服務(wù)程序?qū)1.0取反一次。取反一次。l T1計(jì)數(shù)工作方式模式計(jì)數(shù)工作方式模式2的模式字為的模式字為(TMOD)=60H。 T0不用時(shí),不用時(shí),TMOD的低的低4位可任取,但不能進(jìn)入模位可任取,但不能進(jìn)入模式式3,一般取,一般取0。(例(例6-66-6)(2)計(jì)算)計(jì)算T1的計(jì)數(shù)初值的計(jì)數(shù)初值 X= 2X= 28 8 100=156=9CH100=156=9CH 因此因此:TL1:TL1的初值為的初值為9CH9CH, 重裝初值寄存器重裝初值寄存器TH1=9CHTH1=9CH。(例(例6-66-6)(3)程序清單)程序清單 MAIN: MOV TMOD,#60H ;置;置T1為模式為模式2,

35、計(jì)數(shù)方式計(jì)數(shù)方式 MOV TL1,#9CH ;T1計(jì)數(shù)器初值計(jì)數(shù)器初值 MOV TH1,#9CH MOV IE,#88H ; 定時(shí)器開中斷定時(shí)器開中斷 SETB TR1 ;啟動(dòng);啟動(dòng)T1計(jì)數(shù)計(jì)數(shù) HERE:SJMP HERE ;等待中斷;等待中斷 ORG 001BH ;中斷服務(wù)程序入口;中斷服務(wù)程序入口 CPL P1.0 RETI6.3.4 模式模式 3 及其應(yīng)用及其應(yīng)用一、模式一、模式 3 3 的特點(diǎn)及邏輯電路結(jié)構(gòu)的特點(diǎn)及邏輯電路結(jié)構(gòu)二、模式二、模式 3 3 應(yīng)用舉例應(yīng)用舉例一、模式一、模式 3 的特點(diǎn)及邏輯電路結(jié)構(gòu)的特點(diǎn)及邏輯電路結(jié)構(gòu)l工作模式工作模式3 3對對T0T0和和T1T1大不相同

36、。大不相同。 lT0T0設(shè)置為模式設(shè)置為模式3 3,TL0TL0和和TH0TH0被分成兩個(gè)被分成兩個(gè)相互獨(dú)立的相互獨(dú)立的8 8位計(jì)數(shù)器。位計(jì)數(shù)器。lT1T1無工作模式無工作模式3 3狀態(tài)。在狀態(tài)。在T0T0用作模式用作模式3 3時(shí),時(shí),T1T1仍可設(shè)置為模式仍可設(shè)置為模式0 02 2。一、模式一、模式 3 的特點(diǎn)及邏輯電路結(jié)構(gòu)的特點(diǎn)及邏輯電路結(jié)構(gòu)lT0T0模式模式3 3的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)如圖如圖所示。所示。一、模式一、模式 3 的特點(diǎn)及邏輯電路結(jié)構(gòu)的特點(diǎn)及邏輯電路結(jié)構(gòu)l TL0TL0用原用原T0T0的各控制位、引腳和中斷源,即的各控制位、引腳和中斷源,即C/TC/T,GATEGATE

37、,TR0TR0,TF0TF0,T0T0(P3.4P3.4)引腳,)引腳,INT0INT0(P3.2P3.2)引腳。)引腳。l TL0TL0可工作在定時(shí)器方式和計(jì)數(shù)器方式。其功能和可工作在定時(shí)器方式和計(jì)數(shù)器方式。其功能和操作與模式操作與模式0 0、模式、模式1 1相同(只是相同(只是8 8位)。位)。l TH0TH0只可用作簡單的內(nèi)部定時(shí)功能。只可用作簡單的內(nèi)部定時(shí)功能。l TH0TH0占用了定時(shí)器占用了定時(shí)器T1T1的控制位的控制位TR1TR1和和T1T1的中斷標(biāo)的中斷標(biāo)志志TF1TF1,其啟動(dòng)和關(guān)閉僅受,其啟動(dòng)和關(guān)閉僅受TR1TR1的控制。的控制。T0模式3下T1的邏輯電路結(jié)構(gòu)l 定時(shí)器定時(shí)

38、器T1T1無工作模式無工作模式3 3狀態(tài)。在狀態(tài)。在T0T0用作模式用作模式3 3時(shí),時(shí),T1T1仍可設(shè)置為模式仍可設(shè)置為模式0 02 2。l T0T0模式模式3 3下下T1T1的邏輯電路結(jié)構(gòu)的邏輯電路結(jié)構(gòu)如圖如圖所示所示l 由于由于TR1TR1和和TF1TF1被定時(shí)器被定時(shí)器T0T0占用,計(jì)數(shù)器開關(guān)占用,計(jì)數(shù)器開關(guān)K K已被接通,此時(shí),僅用已被接通,此時(shí),僅用T1T1控制位,控制位,C/TC/T切換其切換其定時(shí)或計(jì)數(shù)器工作方式就可使定時(shí)或計(jì)數(shù)器工作方式就可使T1T1運(yùn)行。當(dāng)計(jì)數(shù)運(yùn)行。當(dāng)計(jì)數(shù)器溢出時(shí),只能將輸出送入串行口或用于不需器溢出時(shí),只能將輸出送入串行口或用于不需要中斷的場合。一般作波特

39、率發(fā)生器要中斷的場合。一般作波特率發(fā)生器二、模式二、模式 3 的應(yīng)用舉例的應(yīng)用舉例l例例6-76-7:設(shè)某用戶系統(tǒng)已使用了兩個(gè)外部中設(shè)某用戶系統(tǒng)已使用了兩個(gè)外部中斷源,并置定時(shí)器斷源,并置定時(shí)器T1T1工作在模式工作在模式2 2,作串行口波特率發(fā)生器用。現(xiàn)要求作串行口波特率發(fā)生器用。現(xiàn)要求再增加一個(gè)外部中斷源,并由再增加一個(gè)外部中斷源,并由P1.0P1.0引腳輸出一個(gè)引腳輸出一個(gè)5kHz5kHz的方波。的方波。FoscFosc=12MHz.=12MHz.(例(例6-76-7)解:解:(1 1)工作模式)工作模式l 可設(shè)置可設(shè)置T0T0工作在模式工作在模式3 3計(jì)數(shù)器方式計(jì)數(shù)器方式,把,把T0T

40、0的引的引腳作附加的外部中斷輸入端,腳作附加的外部中斷輸入端,TL0TL0的計(jì)數(shù)初值為的計(jì)數(shù)初值為FFHFFH,當(dāng)檢測到,當(dāng)檢測到T0T0引腳電平出現(xiàn)由引腳電平出現(xiàn)由1 1至至0 0的負(fù)跳變的負(fù)跳變時(shí),時(shí),TL0TL0產(chǎn)生溢出,申請中斷。產(chǎn)生溢出,申請中斷。l T0T0模式模式3 3下,下,TL0TL0作計(jì)數(shù)用,而作計(jì)數(shù)用,而TH0TH0用作用作8 8位的位的定時(shí)器定時(shí)器,定時(shí)控制,定時(shí)控制P1.0P1.0引腳輸出引腳輸出5kHz5kHz的方波信號。的方波信號。 (例(例6-76-7)(2 2)計(jì)算初值)計(jì)算初值lTL0TL0的計(jì)數(shù)初值為的計(jì)數(shù)初值為FFHFFH。lTH0TH0的計(jì)數(shù)初值的計(jì)數(shù)

41、初值X X為:為: P1.0P1.0方波周期方波周期T=1/(5kHz)=0.2ms=200sT=1/(5kHz)=0.2ms=200s 用用TH0TH0作定時(shí)作定時(shí)100s100s時(shí),時(shí), X=256-100 X=256-100 12/12=15612/12=156(例(例6-76-7)(3)程序清單)程序清單 MOV TMOD,#27H ;T0為模式為模式3,計(jì)數(shù)方式計(jì)數(shù)方式 ; T1為模式為模式2,定時(shí)方式,定時(shí)方式 MOV TL0,#0FFH ;TL0計(jì)數(shù)初值計(jì)數(shù)初值 MOV TH0,#156 ;TH0計(jì)數(shù)初值計(jì)數(shù)初值 MOV TL1,#data ;data是根據(jù)波特率是根據(jù)波特率 ;

42、要求設(shè)置的常數(shù)(;要求設(shè)置的常數(shù)(初值)初值) MOV TH1,#data MOV TCON,#55H ;外中斷、外中斷、1邊沿觸發(fā),邊沿觸發(fā), ;啟動(dòng);啟動(dòng)T0,T1 MOV IE,#9FH ; 開放全部開放全部中斷中斷 (例(例6-76-7)TL0溢出中斷服務(wù)程序(由溢出中斷服務(wù)程序(由000BH轉(zhuǎn)來)轉(zhuǎn)來)TL0INT:MOV TL0,#0FFH ;TL0重賦初值重賦初值 (中斷處理)(中斷處理) RETI TH0溢出溢出 TH0溢出中斷服務(wù)程序(由溢出中斷服務(wù)程序(由001BH轉(zhuǎn)來)轉(zhuǎn)來)TH0INT:MOV TH0,#156 ;TH0重賦初值重賦初值 CPL P1.0 ;P1.0取反

43、輸出取反輸出 RETI串行口及外部中斷串行口及外部中斷0,外部中斷,外部中斷1的服務(wù)程序略。的服務(wù)程序略。6.3.5 綜合應(yīng)用舉例綜合應(yīng)用舉例l例例6-86-8:設(shè)時(shí)鐘頻率為設(shè)時(shí)鐘頻率為6MHz6MHz。編寫利用。編寫利用T0T0產(chǎn)生產(chǎn)生1s1s定時(shí)的程序。定時(shí)的程序。(例(例6-86-8)解:解:(1)定時(shí)器)定時(shí)器T0工作模式的確定工作模式的確定模式模式0 0最長可定時(shí)最長可定時(shí)16.384ms;16.384ms; 模式模式1 1最長可定時(shí)最長可定時(shí)131.072ms;131.072ms; 模式模式2 2最長可定時(shí)最長可定時(shí)512s;512s;定時(shí)定時(shí)1s,可選用模式,可選用模式1,每隔,

44、每隔100ms中斷一中斷一 次,中斷次,中斷10次為次為1s。(例(例6-86-8)(2)求計(jì)數(shù)器初值)求計(jì)數(shù)器初值X (216X)12/(6 106) =10010-3 s X=15536=3CB0H 因此:因此:(TL0)=0B0H (TH0)=3CH(例(例6-86-8)(3)實(shí)現(xiàn)方法實(shí)現(xiàn)方法 對于中斷對于中斷10次計(jì)數(shù),可使次計(jì)數(shù),可使T0工作在計(jì)數(shù)方工作在計(jì)數(shù)方式,也可用循環(huán)程序的方法實(shí)現(xiàn)。式,也可用循環(huán)程序的方法實(shí)現(xiàn)。本例采本例采用循環(huán)程序法。用循環(huán)程序法。(例(例6-86-8)(4)源程序清單)源程序清單 ORG 0000H AJMP MAIN ; 上電,轉(zhuǎn)向主上電,轉(zhuǎn)向主程序程

45、序 ORG 000BH ;T0中斷服務(wù)程序入口地址中斷服務(wù)程序入口地址 AJMP SERVE ;轉(zhuǎn)向中斷服務(wù)程序;轉(zhuǎn)向中斷服務(wù)程序 ORG 0030H ;主程序;主程序(例(例6-86-8)MAIN : MOV SP,#60H ;設(shè)堆棧指針;設(shè)堆棧指針 MOV B,#0AH ;設(shè)循環(huán)次數(shù);設(shè)循環(huán)次數(shù) MOV TMOD,#01H ;T0工作于模式工作于模式1 MOV TL0,#0B0H ;裝計(jì)數(shù)值低;裝計(jì)數(shù)值低8位位 MOV TH0,#3CH ;裝計(jì)數(shù)值高;裝計(jì)數(shù)值高8位位 SETB TR0 ;啟動(dòng)定時(shí);啟動(dòng)定時(shí) SETB ET0 ;T0開中斷開中斷 SETB EA ;CPU開中斷開中斷 SJM

46、P $ ;等待中斷;等待中斷(例(例6-86-8)SERVE: MOV TL0,#0B0H ;重新賦初值;重新賦初值 MOV TH0,#3CH DJNZ B,LOOP ;B-1不為不為0,繼續(xù)定時(shí),繼續(xù)定時(shí) CLR TR0 ;1s定時(shí)到,停止定時(shí)到,停止T0工作工作LOOP: RETI ;中斷返回;中斷返回 END6.3.5 綜合應(yīng)用舉例綜合應(yīng)用舉例l 例例6-96-9:設(shè)計(jì)實(shí)時(shí)時(shí)鐘程序。設(shè)計(jì)實(shí)時(shí)時(shí)鐘程序。時(shí)鐘就是以秒、分、時(shí)為單位進(jìn)時(shí)鐘就是以秒、分、時(shí)為單位進(jìn)行計(jì)時(shí)。用定時(shí)器與中斷的聯(lián)合行計(jì)時(shí)。用定時(shí)器與中斷的聯(lián)合應(yīng)用應(yīng)用。(例(例6-96-9)解:解:(1 1)實(shí)現(xiàn)時(shí)鐘計(jì)時(shí)的基本方法)實(shí)現(xiàn)

47、時(shí)鐘計(jì)時(shí)的基本方法 計(jì)算計(jì)數(shù)初值。計(jì)算計(jì)數(shù)初值。 時(shí)鐘計(jì)時(shí)的最小單位是秒,但使用單片機(jī)定時(shí)器時(shí)鐘計(jì)時(shí)的最小單位是秒,但使用單片機(jī)定時(shí)器/ /計(jì)數(shù)器進(jìn)行定時(shí),即使按方式計(jì)數(shù)器進(jìn)行定時(shí),即使按方式1 1工作,其最大定工作,其最大定時(shí)時(shí)間也只能達(dá)時(shí)時(shí)間也只能達(dá)131ms131ms。因此,可把定時(shí)器的定。因此,可把定時(shí)器的定時(shí)時(shí)間定為時(shí)時(shí)間定為100ms100ms,計(jì)數(shù)溢出,計(jì)數(shù)溢出1010次即得到時(shí)鐘計(jì)次即得到時(shí)鐘計(jì)時(shí)的最小單位時(shí)的最小單位秒;而秒;而1010次計(jì)數(shù)可用軟件方法實(shí)次計(jì)數(shù)可用軟件方法實(shí)現(xiàn)。現(xiàn)。(例(例6-96-9)假定使用定時(shí)器假定使用定時(shí)器T0,以工作模式,以工作模式1進(jìn)行進(jìn)行100

48、ms的定的定時(shí)。如時(shí)。如fosc=6MHz,則計(jì)數(shù)初值,則計(jì)數(shù)初值X為:為: (216X)12/(6 106 )=10010-3 s X=15536=3CB0H因此因此 : (TL0)=0B0H (TH0)=3CH(例(例6-96-9) 采用定時(shí)方式進(jìn)行溢出次數(shù)的累計(jì),計(jì)滿采用定時(shí)方式進(jìn)行溢出次數(shù)的累計(jì),計(jì)滿1010次即得到秒計(jì)時(shí)。次即得到秒計(jì)時(shí)。 從秒到分和從分到時(shí)的計(jì)時(shí)是通過累計(jì)和從秒到分和從分到時(shí)的計(jì)時(shí)是通過累計(jì)和數(shù)值比較實(shí)現(xiàn)的。數(shù)值比較實(shí)現(xiàn)的。 時(shí)鐘顯示即及顯示緩沖區(qū)部分在這里略,時(shí)鐘顯示即及顯示緩沖區(qū)部分在這里略,可自行設(shè)計(jì)。可自行設(shè)計(jì)。(例(例6-96-9)(2 2)程序流程及程序清單)程序流程及程序清單 主程序(主程序(MAINMAIN)的主要功能)的主要功能 進(jìn)行定時(shí)器進(jìn)行定時(shí)器T1T1的初始化編程并啟動(dòng)的初始化編程并啟動(dòng)T1T1,然后通過反復(fù)調(diào)用顯示子程序,等待然后通過反復(fù)調(diào)用顯示子程序,等待100ms100ms定時(shí)中斷的到來。其流程如圖所示。定時(shí)中斷的到來。其流程如圖所示。設(shè)設(shè)T1為模式為模式1設(shè)中斷次數(shù)設(shè)中斷次數(shù)清計(jì)時(shí)單元清計(jì)時(shí)單元開中斷開中斷啟動(dòng)啟動(dòng)T1調(diào)用顯示子程序調(diào)用顯示子程序等待定時(shí)中斷等待定時(shí)中

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論