單片機(jī)定時器考小題大題_第1頁
單片機(jī)定時器考小題大題_第2頁
單片機(jī)定時器考小題大題_第3頁
單片機(jī)定時器考小題大題_第4頁
單片機(jī)定時器考小題大題_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

定時器/計(jì)數(shù)器及其應(yīng)用1單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第1頁!定時器/計(jì)數(shù)器及其應(yīng)用定時器/計(jì)數(shù)器的應(yīng)用場合:

定時或延時控制、對外部事件的檢測、計(jì)數(shù)等;MCS-51系列8031、8051單片機(jī)有兩個16位定時器/計(jì)數(shù)器(即T0和T1);8032、8052單片機(jī)有3個16位定時器/計(jì)數(shù)器(即T0、T1和T2);2單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第2頁!定時器/計(jì)數(shù)器及其應(yīng)用所謂計(jì)數(shù)器就是對外部輸入脈沖的計(jì)數(shù);所謂定時器也是對脈沖進(jìn)行計(jì)數(shù)完成的,計(jì)數(shù)的是51單片機(jī)內(nèi)部產(chǎn)生的標(biāo)準(zhǔn)脈沖,通過計(jì)數(shù)脈沖個數(shù)實(shí)現(xiàn)定時。所以,定時器和計(jì)數(shù)器本質(zhì)上是一致的,在以后的敘述中將定時器/計(jì)數(shù)器籠統(tǒng)稱為定時器。3單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第3頁!定時器的結(jié)構(gòu)及工作原理4單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第4頁!定時器的結(jié)構(gòu)及工作原理兩個可編程的定時器/計(jì)數(shù)器T1、T0。每個定時器內(nèi)部結(jié)構(gòu)實(shí)際上就是一個可編程的加法計(jì)數(shù)器,由編程來設(shè)置它工作在定時狀態(tài)還是計(jì)數(shù)狀態(tài)。兩種工作模式:

(1)計(jì)數(shù)器工作模式

就是對外部事件進(jìn)行計(jì)數(shù)。計(jì)數(shù)脈沖來自相應(yīng)的外部輸入引腳T0(P3.4)或T1(P3.5)。當(dāng)輸入信號發(fā)生由1至0的負(fù)跳變(下降沿)時,計(jì)數(shù)器(TH0,TL0或TH1,TL1)的值增1。 (2)定時器工作模式

也是通過計(jì)數(shù)實(shí)現(xiàn)的。計(jì)數(shù)脈沖來自內(nèi)部時鐘脈沖,每個機(jī)器周期計(jì)數(shù)值增1,每個機(jī)器周期=12個振蕩周期,因此計(jì)數(shù)頻率為振蕩頻率的1/12。所以定時時間=計(jì)數(shù)值×機(jī)器周期。5單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第5頁!控制信號K可以控制計(jì)數(shù)器的“啟動”和“停止”,

TCON(88H)6單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第6頁!定時器的結(jié)構(gòu)及工作原理在每個機(jī)器周期的S5P2期間采樣檢測引腳輸入電平。若前一個機(jī)器周期采樣值為“1”,后一個機(jī)器周期采樣值為“0”,則計(jì)數(shù)器加1。新的計(jì)數(shù)值在檢測到輸入引腳電平發(fā)生“1”到“0”的負(fù)跳變(下降沿)后,于下一個機(jī)器周期的S3P1期間裝入計(jì)數(shù)器中。由于CPU需要兩個機(jī)器周期來識別一個“1”到“0”的跳變信號,所以最高的計(jì)數(shù)頻率為振蕩周期的1/24。P1P2S1振蕩周期狀態(tài)周期機(jī)器周期機(jī)器周期指令周期XTAL2(OSC)S2S3S4S5S6S1S2S4S5S3S6P1P1P1P1P1P1P1P1P1P1P1P2P2P2P2P2P2P2P2P2P2P27單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第7頁!可編程定時器的工作方式、啟動、停止、溢出標(biāo)志、計(jì)數(shù)器等都是可編程的——通過設(shè)置寄存器TMOD,TCON,TH0,TL0,TH1和TL1實(shí)現(xiàn)。當(dāng)設(shè)置了定時器的工作方式并啟動定時器工作后,定時器就按被設(shè)定好的工作方式獨(dú)立工作,不再占用CPU,只有在計(jì)數(shù)器計(jì)滿溢出時才向CPU申請中斷,占用CPU。由此可見,定時器是單片機(jī)中工作效率高且應(yīng)用靈活的部件。定時器的結(jié)構(gòu)及工作原理8單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第8頁!定時器的TMOD和TCON寄存器8051單片機(jī)定時器主要有幾個特殊功能寄存器組成: TMOD,TCON,TH0,TL0,TH1,TL1。TMOD:設(shè)置定時器的工作方式;TCON:控制定時器的啟動和停止;TH0和TL0

:存放定時器T0的初值或計(jì)數(shù)結(jié)果;TH0存放高8位,TL0存放低8位;TH1和TL1

:存放定時器T1的初值或計(jì)數(shù)結(jié)果;TH1存放高8位,TL1存放低8位;9單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第9頁!低4位與外部中斷有關(guān),高4位的功能如下:

(1)TF1、TF0

—計(jì)數(shù)溢出標(biāo)志位 定時器T0或T1計(jì)數(shù)溢出時,由硬件自動將此位置“1”;

TFx可以由程序查詢,也是定時中斷的請求源;

(2)TR1、TR0

—計(jì)數(shù)運(yùn)行控制位

TRx=1:

啟動定時器/計(jì)數(shù)器工作

TRx=0:

停止定時器/計(jì)數(shù)器工作控制寄存器TCON10單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第10頁!定時/計(jì)數(shù)器的初始化51單片機(jī)的定時器/計(jì)數(shù)器是可編程的,但在進(jìn)行定時或計(jì)數(shù)之前要對程序進(jìn)行初始化,具體步驟如下:(1)對TMOD賦值,以確定定時器的工作模式;(2)置定時/計(jì)數(shù)器初值,直接將初值寫入寄存器的TH0、TL0或TH1、TL1;(3)根據(jù)需要,對IE置初值,開放定時器中斷;(4)對TCON寄存器中的TR0或TR1置位,啟動定時/計(jì)數(shù)器,置位以后,計(jì)數(shù)器即按規(guī)定的工作模式和初值進(jìn)行計(jì)數(shù)或開始定時。11單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第11頁!定時器/計(jì)數(shù)器及其應(yīng)用定時器的工作方式12單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第12頁!方式0

M1、M0設(shè)置為00,為13位計(jì)數(shù)器,以T1為例,其框圖如下:定時器的工作方式——方式0計(jì)數(shù)脈沖輸入加1計(jì)數(shù)器13單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第13頁!定時器的工作方式——方式0當(dāng)C/T=0時,為定時工作模式,開關(guān)接到振蕩器的12分頻器輸出上,計(jì)數(shù)器對機(jī)器周期脈沖計(jì)數(shù)。其定時時間為:

(213-初值)×振蕩周期×12

例如:若晶振頻率為12MHz,則最長的定時時間為(213-0)×(1/12)×12us=8.191ms當(dāng)C/T=1時,為計(jì)數(shù)工作模式,開關(guān)與外部引腳T1(P3.5)接通,計(jì)數(shù)器對來自外部引腳的輸入脈沖計(jì)數(shù)。當(dāng)外部信號發(fā)生負(fù)跳變時計(jì)數(shù)器加1。

14單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第14頁!方式1

M1、M0=01,為16位的計(jì)數(shù)器,除位數(shù)外,其他與方式0相同。其定時時間為:

(216-初值)×振蕩周期×12

例如:若晶振頻率為12MHz,則最長的定時時間為

(216-0)×(1/12)×12us=65.536ms定時器的工作方式——方式115單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第15頁!優(yōu)點(diǎn):

方式0和方式1用于循環(huán)重復(fù)定時或計(jì)數(shù)時,在每次計(jì)數(shù)器擠滿溢出后,計(jì)數(shù)器復(fù)0。若要進(jìn)行新一輪的計(jì)數(shù),就得重新裝入計(jì)數(shù)初值。這樣一來不僅造成編程麻煩,而且影響定時精度。而方式2具有初值自動裝入的功能,避免了這個缺點(diǎn),可實(shí)現(xiàn)精確的定時。缺點(diǎn): 只有8位計(jì)數(shù)器,定時時間短、計(jì)數(shù)范圍小。其定時時間為:

(28-初值)×振蕩周期×12若晶振頻率為12MHz,則最長的定時時間為(28-0)×(1/12)×12us=0.256ms定時器的工作方式——方式2方式2工作過程圖

(x=0,1)。16單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第16頁!定時器的編程和應(yīng)用編程說明51單片機(jī)的定時器是可編程的,但在進(jìn)行定時或計(jì)數(shù)之前要對程序進(jìn)行初始化,具體步驟如下:(1)確定工作方式字:對TMOD寄存器正確賦值;(2)確定定時初值:計(jì)算初值,直接將初值寫入寄存器的TH0、TL0或TH1、TL1; 初值計(jì)算:設(shè)計(jì)數(shù)器的最大值為M,則置入的初值X為: 計(jì)數(shù)方式:X=M-計(jì)數(shù)值 定時方式:由(M-X)T=定時值,得X=M-定時值/T T為計(jì)數(shù)周期,是單片機(jī)的機(jī)器周期。 (模式0M為213,模式1M為216,模式2和3M為28)(3)根據(jù)需要,對IE置初值,開放定時器中斷;(4)啟動定時/計(jì)數(shù)器,對TCON寄存器中的TR0或TR1置位,置位以后,計(jì)數(shù)器即按規(guī)定的工作模式和初值進(jìn)行計(jì)數(shù)或開始定時。17單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第17頁!定時器的編程和應(yīng)用步:確定工作方式字 方式0(13位)最長可定時8.192ms;

方式1(16位)最長可定時65.536ms;

方式2(8位)最長可定時256s。T0為方式0,M1M0=00定時工作狀態(tài),C/T=0GATE=0,不受INT0控制,T1不用全部取“0”值。故TMOD=00H18單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第18頁!例2

將[例1]中的輸出方波周期改為1秒。

分析:周期為1s的方波要求500ms的定時。

(1)T0工作方式的確定

因定時時間較長,采用哪一種工作方式?由各種工作方式的特性,可計(jì)算出:

方式0(13位)最長可定時8.192ms;

方式1(16位)最長可定時65.536ms;

方式2(8位)最長可定時256s。

所以采用定時器定時加軟件計(jì)數(shù)的方法來實(shí)現(xiàn)延長定時。 選方式1,定時50ms,軟件計(jì)數(shù)10次。

50ms×10=500ms。

所以,TMOD=01H定時器的編程和應(yīng)用以上各方式都不滿足要求19單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第19頁!以上的定時程序中,程序都要重置計(jì)時器初值,這樣從定時器溢出發(fā)出溢出標(biāo)志,到重裝完定時器初值,在開始計(jì)數(shù),之間總會有一段時間間隔,使定時時間增加了若干微秒,造成定時不夠精確。 為了減小這種定時誤差,單片機(jī)中設(shè)置了工作方式2(自動重裝初值),則可避免上述因素,省去程序中重裝初值的指令,實(shí)現(xiàn)精確定時。但是工作方式2的缺點(diǎn)是只有8位計(jì)數(shù)器,定時時間受到很大限制。定時器的編程和應(yīng)用20單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第20頁!定時器/計(jì)數(shù)器及其應(yīng)用21單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第21頁!定時器的結(jié)構(gòu)及工作原理組成:兩個16位的定時器T0和T1,以及他們的工作方式寄存器TMOD和控制寄存器TCON等組成。內(nèi)部通過總線與CPU相連。定時器T0和T1各由兩個8位特殊功能寄存器TH0、TL0、TH1、TL1構(gòu)成。工作方式寄存器TMOD:用于設(shè)置定時器的工作模式和工作方式;控制寄存器TCON:用于啟動和停止定時器的計(jì)數(shù),并控制定時器的狀態(tài);單片機(jī)復(fù)位時,兩個寄存器的所有位都被清0。8051定時器內(nèi)部結(jié)構(gòu)框圖22單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第22頁!定時器的結(jié)構(gòu)及工作原理當(dāng)控制信號定時器工作在定時方式;加1計(jì)數(shù)器對脈沖f進(jìn)行計(jì)數(shù),每來一個脈沖,計(jì)數(shù)器加1,直到計(jì)時器計(jì)滿溢出;因?yàn)?,即一個計(jì)數(shù)脈沖的周期就是一個機(jī)器周期;計(jì)數(shù)器計(jì)數(shù)的是機(jī)器周期脈沖個數(shù)。從而實(shí)現(xiàn)定時。當(dāng)控制信號定時器工作在計(jì)數(shù)方式;加1計(jì)數(shù)器對來自輸入引腳T0(P3.4)和T1(P3.5)的外信號脈沖進(jìn)行計(jì)數(shù),每來一個脈沖,計(jì)數(shù)器加1,直到計(jì)時器計(jì)滿溢出;TxTHxTFxTLxTRxINTx定時計(jì)數(shù)

控制信號K“1”啟動,計(jì)數(shù)器運(yùn)行;“0”停止,計(jì)數(shù)器停止;定時器/計(jì)數(shù)器原理框圖加1計(jì)數(shù)器23單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第23頁!P1P2S1振蕩周期時鐘周期機(jī)器周期機(jī)器周期指令周期XTAL2(OSC)S2S3S4S5S6S1S2S4S5S3S6P1P1P1P1P1P1P1P1P1P1P1P2P2P2P2P2P2P2P2P2P2P2振蕩周期、時鐘周期、機(jī)器周期和指令周期24單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第24頁!定時器的結(jié)構(gòu)及工作原理定時/計(jì)數(shù)器對輸入信號的要求外部計(jì)數(shù)脈沖的最高頻率為系統(tǒng)振蕩器頻率的1/24,例如選用12MHz頻率的晶體,則可輸入500KHz的外部脈沖。輸入信號的高、低電平至少要分別保持一個機(jī)器周期。 如圖所示,圖中Tcy為機(jī)器周期。25單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第25頁!定時器/計(jì)數(shù)器及其應(yīng)用定時器的TMOD和TCON寄存器26單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第26頁!工作方式控制寄存器TMOD

8位分為兩組,高4位控制T1,低4位控制T0。(1)GATE—門控位

0:

以TRX(X=0,1)來啟動定時器/計(jì)數(shù)器運(yùn)行。

1:

用外中斷引腳(INT0*或INT1*)上的高電平和TRX來啟 動定時器/計(jì)數(shù)器運(yùn)行。(2)M1、M0—工作方式選擇位

M1M0

工作方式

00

方式0,13位定時器/計(jì)數(shù)器。

01

方式1,16位定時器/計(jì)數(shù)器。

10

方式2,8位常數(shù)自動重新裝載

11

方式3,僅適用于T0,

T0分成兩個8位計(jì)數(shù)器,T1停止計(jì)數(shù)。(3)C/T*—計(jì)數(shù)器模式和定時器模式選擇位

0:

定時器模式。

1:

計(jì)數(shù)器模式。(4)TMOD無位地址,不能位尋址。(5)復(fù)位時,TMOD所有位均為“0”。27單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第27頁!28單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第28頁!定時/計(jì)數(shù)器的初始化初值計(jì)算:

設(shè)計(jì)數(shù)器的最大值為M,則置入的初值X為:計(jì)數(shù)方式:X=M-計(jì)數(shù)值定時方式:由(M-X)T=定時值,得X=M-定時值/TT為計(jì)數(shù)周期,是單片機(jī)的機(jī)器周期。(模式0:M為213,模式1:M為216,模式2和3:M為28)例如:機(jī)器周期為1μs時,若工作在模式0,則最大定時值為:213×1μs=8.192ms

若工作在模式1,則最大定時值為:216×1μs=65.536ms29單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第29頁!定時器T0有4種工作方式: 即:方式0,方式1,方式2,方式3。定時器T1有3種工作方式: 即:方式0,方式1,方式2。定時器的工作方式30單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第30頁!定時器的工作方式——方式0TH1

D12

D11

D10

D9

D8

D7

D6

D5TL1×

×

×

D4

D3

D2

D1

D0在這種方式下,16位寄存器TH1和TL1只用13位,由TH1的8位和TL1的低5位組成。TL1的高3位不定。當(dāng)TL1的低5位計(jì)數(shù)溢出時,向TH1進(jìn)位。而TH1計(jì)數(shù)溢出時,則向中斷標(biāo)志位TF1進(jìn)位(即硬件將TF1置1),并請求中斷。可通過查詢TF1是否置“1”或考察中斷是否發(fā)生來判定定時器T1的操作完成與否。31單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第31頁!定時器的工作方式——方式0GATE控制定時器Tx(T1或T0)的條件:(1)當(dāng)GATE=0時,“或門”輸出恒為1,“與門”的輸出信號K由TRx決定(即此時K=TRx),定時器不受INTx輸入電平的影響,由TRx直接控制定時器的啟動和停止。

TRx=1;計(jì)數(shù)啟動;

TRx=0;計(jì)數(shù)停止;(2)當(dāng)GATE=1時,“與門”的輸出信號K由INTx輸入電平和TRx位的狀態(tài)一起決定(即此時K=TRx·INTx), 當(dāng)且僅當(dāng)TRx=1且INTx=1(高電平)時,計(jì)數(shù)啟動;

否則,計(jì)數(shù)停止。

返回32單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第32頁!方式2

M1、M0=10,為自動恢復(fù)初值的8位計(jì)數(shù)器,等效框圖如下:TLx作為8位計(jì)數(shù)器,THx作為重置初值的緩沖器。定時器的工作方式——方式2

THx作為常數(shù)緩沖器,當(dāng)TLx計(jì)數(shù)溢出時,在置“1”溢出標(biāo)志TFx的同時,還自動的將THx中的初值送至TLx,使TLx從初值開始重新計(jì)數(shù)。定時器/計(jì)數(shù)器的方式2工作過程如圖(x=0,1)。33單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第33頁!定時器/計(jì)數(shù)器及其應(yīng)用定時器的編程和應(yīng)用34單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第34頁!定時器的編程和應(yīng)用

例1

要在P1.0上輸出一個周期為2ms的方波,假設(shè)系統(tǒng)振蕩頻率采用12MHz。

利用T0方式0產(chǎn)生1ms的定時

方波的周期用T0來確定,讓T0每隔1ms計(jì)數(shù)溢出1次,即TF0=1;查詢到TF0=1則CPU對P1.0取反。即要使P1.0每隔1ms取反一次。35單片機(jī)定時器考小題大題共38頁,您現(xiàn)在瀏覽的是第35頁!定時器的編程和應(yīng)用第二步:計(jì)算1ms定時的初值X

設(shè)初值為X,則有: (21

溫馨提示

  • 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

提交評論