資源描述:
《霖峰單片機(jī) 15 定時(shí)器和計(jì)數(shù)器課件》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、征服嵌入式系列------之51篇霖鋒--帶你征服嵌入式霖鋒--帶你征服嵌入式定時(shí)器的原理定時(shí)器的使用本節(jié)內(nèi)容CPU時(shí)序的有關(guān)知識振蕩周期:為單片機(jī)提供定時(shí)信號的振蕩源的周期(晶振周期或外加振蕩周期)狀態(tài)周期:2個(gè)振蕩周期為1個(gè)狀態(tài)周期,用S表示。振蕩周期又稱S周期或時(shí)鐘周期。機(jī)器周期:1個(gè)機(jī)器周期含6個(gè)狀態(tài)周期,12個(gè)振蕩周期。指令周期:完成1條指令所占用的全部時(shí)間,它以機(jī)器周期為單位。霖鋒--帶你征服嵌入式CPU時(shí)序的有關(guān)知識例如:外接晶振為12MHz時(shí),89S52單片機(jī)的4個(gè)時(shí)間周期的具體值為:振蕩周期=1/12us;狀態(tài)周
2、期=1/6us;機(jī)器周期=1us;指令周期=1~4us;霖鋒--帶你征服嵌入式在學(xué)習(xí)定時(shí)器之前需要明白的51單片機(jī)有兩組定時(shí)器/計(jì)數(shù)器,因?yàn)榧瓤梢远〞r(shí),又可以計(jì)數(shù),故稱之為定時(shí)器/計(jì)數(shù)器。定時(shí)器/計(jì)數(shù)器和單片機(jī)的CPU是相互獨(dú)立的。定時(shí)器/計(jì)數(shù)器工作的過程是自動(dòng)完成的,不需要CPU的參與。51單片機(jī)中的定時(shí)器/計(jì)數(shù)器是根據(jù)機(jī)器內(nèi)部的時(shí)鐘或者是外部的脈沖信號對寄存器中的數(shù)據(jù)加1。有了定時(shí)器/計(jì)數(shù)器之后,可以增加單片機(jī)的效率,一些簡單的重復(fù)加1的工作可以交給定時(shí)器/計(jì)數(shù)器處理。CPU轉(zhuǎn)而處理一些復(fù)雜的事情。同時(shí)可以實(shí)現(xiàn)精確定時(shí)作用。霖
3、鋒--帶你征服嵌入式89C51單片機(jī)定時(shí)器結(jié)構(gòu)定時(shí)/計(jì)數(shù)器的實(shí)質(zhì)是加1計(jì)數(shù)器(16位),由高8位和低8位兩個(gè)寄存器THx和TLx組成。TMOD是定時(shí)/計(jì)數(shù)器的工作方式寄存器,確定工作方式和功能;TCON是控制寄存器,控制T0、T1的啟動(dòng)和停止及設(shè)置溢出標(biāo)志。霖鋒--帶你征服嵌入式定時(shí)/計(jì)數(shù)器的控制80C51單片機(jī)定時(shí)/計(jì)數(shù)器的工作由兩個(gè)特殊功能寄存器控制。TMOD用于設(shè)置其工作方式;TCON用于控制其啟動(dòng)和中斷申請。1、工作方式寄存器TMOD工作方式寄存器TMOD用于設(shè)置定時(shí)/計(jì)數(shù)器的工作方式,低四位用于T0,高四位用于T1。其格
4、式如下:霖鋒--帶你征服嵌入式GATE是門控位,GATE=0時(shí),用于控制定時(shí)器的啟動(dòng)是否受外部中斷源信號的影響。只要用軟件使TCON中的TR0或TR1為1,就可以啟動(dòng)定時(shí)/計(jì)數(shù)器工作;GATA=1時(shí),要用軟件使TR0或TR1為1,同時(shí)外部中斷引腳INT0/1也為高電平時(shí),才能啟動(dòng)定時(shí)/計(jì)數(shù)器工作。即此時(shí)定時(shí)器的啟動(dòng)條件,加上了INT0/1引腳為高電平這一條件。C/T:定時(shí)/計(jì)數(shù)模式選擇位。C/T=0為定時(shí)模式;C/T=1為計(jì)數(shù)模式。M1M0:工作方式設(shè)置位。定時(shí)/計(jì)數(shù)器有四種工作方式。霖鋒--帶你征服嵌入式2、控制寄存器TCONT
5、CON的低4位用于控制外部中斷,已在前面介紹。TCON的高4位用于控制定時(shí)/計(jì)數(shù)器的啟動(dòng)和中斷申請。其格式如下:TF1(TCON.7):T1溢出中斷請求標(biāo)志位。T1計(jì)數(shù)溢出時(shí)由硬件自動(dòng)置TF1為1。CPU響應(yīng)中斷后TF1由硬件自動(dòng)清0。T1工作時(shí),CPU可隨時(shí)查詢TF1的狀態(tài)。所以,TF1可用作查詢測試的標(biāo)志。TF1也可以用軟件置1或清0,同硬件置1或清0的效果一樣。TR1(TCON.6):T1運(yùn)行控制位。TR1置1時(shí),T1開始工作;TR1置0時(shí),T1停止工作。TR1由軟件置1或清0。所以,用軟件可控制定時(shí)/計(jì)數(shù)器的啟動(dòng)與停止。T
6、F0(TCON.5):T0溢出中斷請求標(biāo)志位,其功能與TF1類同。TR0(TCON.4):T0運(yùn)行控制位,其功能與TR1類同。霖鋒--帶你征服嵌入式定時(shí)/計(jì)數(shù)器的工作方式1、方式0方式0為13位計(jì)數(shù),由TL0的低5位(高3位未用)和TH0的8位組成。TL0的低5位溢出時(shí)向TH0進(jìn)位,TH0溢出時(shí),置位TCON中的TF0標(biāo)志,向CPU發(fā)出中斷請求。霖鋒--帶你征服嵌入式定時(shí)器模式時(shí)有:N=t/Tcy計(jì)數(shù)初值計(jì)算的公式為:X=213-N。定時(shí)器的初值還可以采用計(jì)數(shù)個(gè)數(shù)直接取補(bǔ)法獲得。計(jì)數(shù)模式時(shí),計(jì)數(shù)脈沖是T0引腳上的外部脈沖。門控位G
7、ATE具有特殊的作用。當(dāng)GATE=0時(shí),經(jīng)反相后使或門輸出為1,此時(shí)僅由TR0控制與門的開啟,與門輸出1時(shí),控制開關(guān)接通,計(jì)數(shù)開始;當(dāng)GATE=1時(shí),由外中斷引腳信號控制或門的輸出,此時(shí)控制與門的開啟由外中斷引腳信號和TR0共同控制。當(dāng)TR0=1時(shí),外中斷引腳信號引腳的高電平啟動(dòng)計(jì)數(shù),外中斷引腳信號引腳的低電平停止計(jì)數(shù)。這種方式常用來測量外中斷引腳上正脈沖的寬度。霖鋒--帶你征服嵌入式定時(shí)/計(jì)數(shù)器的工作方式2、方式1方式1的計(jì)數(shù)位數(shù)是16位,由TL0作為低8位,TH0作為高8位,組成了16位加1計(jì)數(shù)器。霖鋒--帶你征服嵌入式計(jì)數(shù)個(gè)
8、數(shù)與計(jì)數(shù)初值的關(guān)系為:X=216-N定時(shí)/計(jì)數(shù)器的工作方式3、方式2方式2為自動(dòng)重裝初值的8位計(jì)數(shù)方式。霖鋒--帶你征服嵌入式計(jì)數(shù)個(gè)數(shù)與計(jì)數(shù)初值的關(guān)系為:X=28-N工作方式2特別適合于用作較精確的脈沖信號發(fā)生器。定時(shí)/計(jì)數(shù)器的工作方式4、方式3方