您的位置:首頁 > 熱點(diǎn) >

單片機(jī)定時(shí)器實(shí)用方法總結(jié)

第一部分:51系列定時(shí)器

定時(shí)/計(jì)數(shù)器 0 和定時(shí)/計(jì)數(shù)器1都有4種定時(shí)模式。

16位定時(shí)器對內(nèi)部機(jī)器周期進(jìn)行技術(shù),機(jī)器周期加1,定時(shí)器值加1,1MHZ模式下,一個(gè)機(jī)器周期為1us 。

定時(shí)器工作模式寄存器TMOD,不可位尋址,需整體賦值,高4位用于定時(shí)器1,第四位用于定時(shí)器0。

C/T:為定時(shí)器功能選擇位,C/T=0對機(jī)器周期計(jì)數(shù),C/T=1,對外部脈沖計(jì)數(shù)。

GATE:門控位,GATE=0,軟件置位TRn即可啟動(dòng)計(jì)時(shí)器,GATE=1需外部中斷引腳為高電平時(shí)才能軟件置位TRn啟動(dòng)計(jì)時(shí)器,一般取GATE=0。

定時(shí)器控制寄存器TCON:

TFn:Tn溢出標(biāo)志位,當(dāng)定時(shí)器溢出時(shí),硬件置位TFn,中斷使能的情況下,申請中斷,CPU響應(yīng)中斷后,硬件自動(dòng)清除TFn。中斷屏蔽時(shí),該位一般作為軟件查詢標(biāo)志,由于不進(jìn)入中斷程序,硬件不會(huì)自動(dòng)清除標(biāo)志位,可軟件清除。

TRn:計(jì)時(shí)器啟動(dòng)控制位,軟件置位TRn即可啟動(dòng)定時(shí)器,軟件清除TRn關(guān)閉標(biāo)志位。

IEn:外部中斷請求標(biāo)志位。

ITn:外部中斷出發(fā)模式控制位,ITn=0為低電平觸發(fā),ITn=1為下降沿觸發(fā)。

中斷允許控制寄存器IE

EA(IE.7):全局中斷控制位。EA=1開全局中斷,EA=0關(guān)閉全局中斷。

IE.6無意義。

ETn:定時(shí)器中斷使能控制位。置位允許中斷,清除禁止中斷。

ES:串行接收/發(fā)送中斷控制位,置位允許中斷。

EXn:外部中斷使能控制位。置1允許,清0禁止。

中斷優(yōu)先級(jí)控制寄存器IP,復(fù)位后為00H

IP.6,IP.7保留,無意義。

PT2:定時(shí)器2中斷優(yōu)先級(jí)控制,置1設(shè)為高優(yōu)先級(jí),清0置位低優(yōu)先級(jí)。

PS:串行中斷優(yōu)先級(jí)控制位。

PT1/0:定時(shí)器1/0優(yōu)先級(jí)控制位,置1高,清0低。

PXn:外部中斷優(yōu)先級(jí)控制位。

當(dāng)有同級(jí)中斷同時(shí)響應(yīng),按IE0->TF0->IE1->TF1-IE0->RI+TI->TF2順序依次響應(yīng)。

定時(shí)器模式0的使用 TMOD=0xf0/TMOD=0x0f

TL0高3位不用,低5位溢出時(shí),直接向TH0進(jìn)位。

通過設(shè)置TH0和TL0初值(0~8191),使計(jì)數(shù)器從初值開始加1,溢出后申請中斷,溢出后需重新設(shè)置初值,否則將從0開始加1計(jì)數(shù)。

標(biāo)簽: 單片機(jī) 定時(shí)器 機(jī)器周期

相關(guān)閱讀